/*!
* Web Fonts from Fontspring.com
*
* All OpenType features and all extended glyphs have been removed.
* Fully installable fonts can be purchased at https://www.fontspring.com
*
* The fonts included in this stylesheet are subject to the End User License you purchased
* from Fontspring. The fonts are protected under domestic and international trademark and
* copyright law. You are prohibited from modifying, reverse engineering, duplicating, or
* distributing this font software.
*
* (c) 2010-2025 Fontspring
*
*
*
*
* The fonts included are copyrighted by the vendor listed below.
*
* Vendor:      Dharma Type
* License URL: https://www.fontspring.com/licenses/dharma-type/webfont
*
*
*/
@font-face {
  font-family: "Gomme-Sans";
  src: url("/fonts/gommesans-bold-webfont.woff2") format("woff2"), url("/fonts/gommesans-bold-webfont.woff") format("woff");
  font-weight: bold;
  font-style: normal;
}
@font-face {
  font-family: "Gomme-Sans";
  src: url("/fonts/gommesans-extrabold-webfont.woff2") format("woff2"), url("/fonts/gommesans-extrabold-webfont.woff") format("woff");
  font-weight: 800;
  font-style: normal;
}
@font-face {
  font-family: "Gomme-Sans";
  src: url("/fonts/gommesans-regular-webfont.woff2") format("woff2"), url("/fonts/gommesans-regular-webfont.woff") format("woff");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: "Facto";
  src: url("/fonts/raneltenormbold-webfont.woff2") format("woff2"), url("/fonts/raneltenormbold-webfont.woff") format("woff");
  font-weight: bold;
  font-style: normal;
}
@font-face {
  font-family: "Facto";
  src: url("/fonts/raneltenormregular-webfont.woff2") format("woff2"), url("/fonts/raneltenormregular-webfont.woff") format("woff");
  font-weight: normal;
  font-style: normal;
}
/***************************************************************
FRAMEWORK VARIABLES
****************************************************************/
/****************************************************************
Widths
****************************************************************/
/****************************************************************
Colors
****************************************************************/
/* COLOR DEFINITON */
/* MenueColors */
/***************************************************************
MOBILE MIXINS
****************************************************************/
/***************************************************************
OTHER MIXINS
****************************************************************/
/*!
 * Hamburgers
 * @description Tasty CSS-animated hamburgers
 * @author Jonathan Suh @jonsuh
 * @site https://jonsuh.com/hamburgers
 * @link https://github.com/jonsuh/hamburgers
 */
.hamburger {
  height: 24px;
  width: 32px;
  display: block;
  float: left;
  cursor: pointer;
  background: red;
  transition-property: opacity, -webkit-filter;
  transition-property: opacity, filter;
  transition-property: opacity, filter, -webkit-filter;
  transition-duration: 0.15s;
  transition-timing-function: linear;
  font: inherit;
  color: inherit;
  text-transform: none;
  background-color: transparent;
  border: 0;
  margin: 0;
  overflow: visible;
  padding: 0;
}

.hamburger:hover {
  opacity: 0.8;
}

.hamburger-box {
  width: 100%;
  height: 100%;
  display: inline-block;
  position: relative;
}

.hamburger-inner {
  display: block;
  top: 50%;
  margin-top: -2px;
}

.hamburger-inner,
.hamburger-inner::before,
.hamburger-inner::after {
  width: 100%;
  height: 4px;
  background-color: #fff;
  border-radius: 0;
  position: absolute;
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
  transition-duration: 0.15s;
  transition-timing-function: ease;
}

.hamburger-inner::before, .hamburger-inner::after {
  content: "";
  display: block;
}

.hamburger-inner::before {
  top: -10px;
}

.hamburger-inner::after {
  bottom: -10px;
}

/*
 * Collapse
 */
.hamburger--collapse .hamburger-inner {
  top: auto;
  bottom: 0;
  transition-duration: 0.15s;
  transition-delay: 0.15s;
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--collapse .hamburger-inner::after {
  top: -20px;
  transition: top 0.3s 0.3s cubic-bezier(0.33333, 0.66667, 0.66667, 1), opacity 0.1s linear;
}

.hamburger--collapse .hamburger-inner::before {
  transition: top 0.12s 0.3s cubic-bezier(0.33333, 0.66667, 0.66667, 1), -webkit-transform 0.15s cubic-bezier(0.55, 0.055, 0.675, 0.19);
  transition: top 0.12s 0.3s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.15s cubic-bezier(0.55, 0.055, 0.675, 0.19);
  transition: top 0.12s 0.3s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.15s cubic-bezier(0.55, 0.055, 0.675, 0.19), -webkit-transform 0.15s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--collapse.is-active .hamburger-inner {
  -webkit-transform: translate3d(0, -10px, 0) rotate(-45deg);
  transform: translate3d(0, -10px, 0) rotate(-45deg);
  transition-delay: 0.32s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}

.hamburger--collapse.is-active .hamburger-inner::after {
  top: 0;
  opacity: 0;
  transition: top 0.3s cubic-bezier(0.33333, 0, 0.66667, 0.33333), opacity 0.1s 0.27s linear;
}

.hamburger--collapse.is-active .hamburger-inner::before {
  top: 0;
  -webkit-transform: rotate(-90deg);
  transform: rotate(-90deg);
  transition: top 0.12s 0.18s cubic-bezier(0.33333, 0, 0.66667, 0.33333), -webkit-transform 0.15s 0.42s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: top 0.12s 0.18s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.15s 0.42s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: top 0.12s 0.18s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.15s 0.42s cubic-bezier(0.215, 0.61, 0.355, 1), -webkit-transform 0.15s 0.42s cubic-bezier(0.215, 0.61, 0.355, 1);
}

body {
  margin: 0;
  padding: 0;
}

section {
  padding: 3rem 1.5rem;
  overflow: hidden;
}
@media (min-width: 600px) {
  section {
    padding: 5rem 1.5rem;
  }
}
@media (min-width: 900px) {
  section {
    padding: 8rem 1.5rem;
  }
}

article {
  max-width: 71.25rem;
  margin: 0 auto;
  padding: 0;
}
@media (min-width: 900px) {
  article {
    padding: 0;
  }
}
article.padding {
  padding: 0;
}
@media (max-width: 599px) {
  article.padding {
    padding: 0;
  }
}

header article {
  display: flex;
  padding: 1rem;
  padding-left: 0rem;
  padding-right: 0rem;
  align-items: center;
}
header article nav {
  display: flex;
  align-items: center;
  font-size: 1.125rem;
}
header article nav .navLinks {
  display: flex;
  align-items: center;
}
@media (max-width: 599px) {
  header article nav .navLinks {
    display: none;
  }
}
header article nav a {
  display: block;
  text-decoration: none;
}

section article img {
  max-width: 100%;
}

.overflowHidden {
  overflow: hidden;
  touch-action: none;
}

.buttons {
  display: flex;
  gap: 1rem;
}

.button, #mobilenav nav.topnav ul li:nth-child(6) {
  font-size: 1rem;
  font-size: clamp(1rem, 0.8255813953rem + 0.4651162791vw, 1.125rem);
  line-height: 1.375rem;
  line-height: clamp(1.375rem, 1.375rem + 0vw, 1.375rem);
  border-radius: 6px;
  padding: 0.8rem 2rem;
  padding-bottom: 1rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  -webkit-transition: all 300ms ease-in-out;
  transition: all 300ms ease-in-out;
  text-decoration: none;
  color: #0067B1;
  font-weight: 800;
  width: 100%;
  text-align: center;
  font-family: "Gomme-Sans", "HelveticaNeueLight", "HelveticaNeue-Light", "Helvetica Neue Light", "HelveticaNeue", "Helvetica Neue", Arial, sans-serif;
  text-transform: uppercase;
  border: none;
  letter-spacing: 0.03125rem;
}
@media (min-width: 600px) {
  .button, #mobilenav nav.topnav ul li:nth-child(6) {
    max-width: fit-content;
    font-size: 1.25rem;
    line-height: 1.625rem;
  }
}
.button:focus, #mobilenav nav.topnav ul li:focus:nth-child(6) {
  text-decoration: none;
}
.button:hover, #mobilenav nav.topnav ul li:hover:nth-child(6) {
  background: #004e85;
  color: #fff;
}
.button.big, #mobilenav nav.topnav ul li.big:nth-child(6) {
  padding: 1rem 2.6rem;
  padding-bottom: 1.1125rem;
  font-size: 1.5rem;
}
.button.white, #mobilenav nav.topnav ul li.white:nth-child(6) {
  background: #fff;
  color: #0067B1;
  border: 2px solid #fff;
}
.button.white.trans, #mobilenav nav.topnav ul li.white.trans:nth-child(6) {
  background: none;
  color: #fff;
}
.button.pink, #mobilenav nav.topnav ul li:nth-child(6) {
  background: rgb(177, 0, 97);
  background: linear-gradient(0deg, rgb(177, 0, 97) 0%, rgb(229, 0, 125) 100%);
  color: #fff;
}
.button.centeredMargin, #mobilenav nav.topnav ul li.centeredMargin:nth-child(6) {
  margin-left: auto;
  margin-right: auto;
}
.button.pinnedRight, #mobilenav nav.topnav ul li.pinnedRight:nth-child(6) {
  margin-left: auto;
  margin-right: 0;
}
.button.small, body.karriere .jobs .button.legal, #mobilenav nav.topnav ul li.small:nth-child(6), #mobilenav nav.topnav ul body.karriere .jobs li.legal:nth-child(6), body.karriere .jobs #mobilenav nav.topnav ul li.legal:nth-child(6) {
  padding: 0.5rem 1rem;
  font-size: 0.8rem;
  line-height: 1.2rem;
}

.button:hover, #mobilenav nav.topnav ul li:hover:nth-child(6) {
  text-decoration: none;
}

a {
  color: #0067B1;
  text-decoration: none;
}
a:hover, a:focus {
  text-decoration: underline;
  color: #004e85;
}

body.template h1, body.template h2, body.template h3, body.template h4, body.template h5, body.template h6 {
  margin-top: 3rem;
}

.grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(13rem, 1fr));
  gap: 1.5rem;
}
.grid .item {
  aspect-ratio: 1/1;
  display: flex;
  align-items: center;
  justify-content: center;
}

.bgPrimaryColor {
  background-color: #0067B1;
  color: #fff;
}

.bgLightBlue {
  background-color: #82D0F5;
}

.lightBlue {
  color: #82D0F5;
}

.bgBlue {
  background-color: #0067B1;
}

.blue {
  color: #0067B1;
}

.lightBlueGradient {
  background: linear-gradient(287.7deg, rgba(0, 159, 227, 0.15) 19.79%, rgba(0, 159, 227, 0) 81.25%), #FFFFFF;
}

.bgDarkPink, .projects .item h3 {
  background: rgb(177, 0, 97);
  background: linear-gradient(0deg, rgb(177, 0, 97) 0%, rgb(229, 0, 125) 100%);
}

.primaryColor {
  color: #0067B1;
}

.bgBlack {
  background-color: #1A1A18;
  color: #fff;
}
.bgBlack * {
  color: #fff;
}

.bgSecondaryColor {
  background-color: #E5007D;
  color: #fff;
}

.white {
  color: #fff;
}

.black {
  color: #1A1A18;
}

.noPaddingTop {
  padding-top: 0;
}

.noPaddingBottom {
  padding-bottom: 0;
}

.noPaddingV {
  padding-top: 0;
  padding-bottom: 0;
}

.textLessWidth:first-child {
  position: relative;
}

.imageOverFlow {
  display: flex;
  align-items: center;
  justify-content: center;
}

@media (min-width: 900px) {
  .imageOverFlow img {
    position: absolute;
    max-width: 480px;
  }
}

.desktop {
  display: none;
}
@media (min-width: 900px) {
  .desktop {
    display: block;
  }
}

.mobile {
  display: block;
}
@media (min-width: 900px) {
  .mobile {
    display: none;
  }
}

.tablet-up {
  display: none;
}
@media (min-width: 600px) {
  .tablet-up {
    display: block;
  }
}

.tablet {
  display: none;
}
@media (min-width: 600px) and (max-width: 899px) {
  .tablet {
    display: block;
  }
}

.phone {
  display: none;
}
@media (max-width: 599px) {
  .phone {
    display: block;
  }
}

.desktop-only {
  display: none;
}
@media (min-width: 1200px) {
  .desktop-only {
    display: block;
  }
}

.spaceLeft {
  margin-left: 40%;
}
@media (max-width: 599px) {
  .spaceLeft {
    margin-left: 0;
  }
}

.spaceRight {
  margin-right: 40%;
}
@media (max-width: 599px) {
  .spaceRight {
    margin-right: 0;
  }
}

.mobileBlock {
  display: inline;
}
@media (max-width: 599px) {
  .mobileBlock {
    display: block;
  }
}

.desktopBlock {
  display: block;
}
@media (max-width: 599px) {
  .desktopBlock {
    display: inline;
  }
}

h1.display {
  font-size: 3rem;
  font-size: clamp(3rem, 0.2093023256rem + 7.4418604651vw, 5rem);
  line-height: 3rem;
  line-height: clamp(3rem, -0.488372093rem + 9.3023255814vw, 5.5rem);
  font-weight: 800;
}

h1 {
  font-size: 1.875rem;
  font-size: clamp(1.875rem, 0.3052325581rem + 4.1860465116vw, 3rem);
  line-height: 2.125rem;
  line-height: clamp(2.125rem, 0.2063953488rem + 5.1162790698vw, 3.5rem);
  font-weight: 800;
}

h2 {
  font-size: 1.875rem;
  font-size: clamp(1.875rem, 0.3052325581rem + 4.1860465116vw, 3rem);
  line-height: 2.125rem;
  line-height: clamp(2.125rem, 0.2063953488rem + 5.1162790698vw, 3.5rem);
  margin-bottom: clamp(0.875rem, 0.12rem + 2.35vw, 1rem);
  font-weight: 400;
}

h3 {
  font-size: 1.625rem;
  font-size: clamp(1.625rem, 0.7529069767rem + 2.3255813953vw, 2.25rem);
  line-height: 2rem;
  line-height: clamp(2rem, 0.6046511628rem + 3.7209302326vw, 3rem);
  font-weight: 700;
}

h4 {
  font-size: 1.375rem;
  font-size: clamp(1.375rem, 1.375rem + 0vw, 1.375rem);
  line-height: 1.25rem;
  line-height: clamp(1.25rem, 0.726744186rem + 1.3953488372vw, 1.625rem);
  font-weight: 800;
}

h5 {
  font-size: 0.875rem;
  font-size: clamp(0.875rem, 0.875rem + 0vw, 0.875rem);
  line-height: 1.375rem;
  line-height: clamp(1.375rem, 1.375rem + 0vw, 1.375rem);
  letter-spacing: 2px;
  text-transform: uppercase;
  font-weight: bold;
}

h6 {
  font-size: 0.75rem;
  font-size: clamp(0.75rem, 0.5755813953rem + 0.4651162791vw, 0.875rem);
  line-height: 1rem;
  line-height: clamp(1rem, 1rem + 0vw, 1rem);
  letter-spacing: 2px;
  text-transform: uppercase;
  font-weight: bold;
}

.pretitle {
  font-size: 1.125rem;
  font-size: clamp(1.125rem, 0.7761627907rem + 0.9302325581vw, 1.375rem);
  line-height: 1.25rem;
  line-height: clamp(1.25rem, 0.726744186rem + 1.3953488372vw, 1.625rem);
  font-weight: 700;
}

.teaser.big {
  font-size: 1.5rem;
  font-size: clamp(1.5rem, 0.8023255814rem + 1.8604651163vw, 2rem);
  line-height: 1.75rem;
  line-height: clamp(1.75rem, 0.7034883721rem + 2.7906976744vw, 2.5rem);
  margin-bottom: clamp(1.25rem, 0.12rem + 2.35vw, 2rem);
}

.teaser {
  font-size: 1.25rem;
  font-size: clamp(1.25rem, 0.726744186rem + 1.3953488372vw, 1.625rem);
  line-height: 1.5rem;
  line-height: clamp(1.5rem, 0.4534883721rem + 2.7906976744vw, 2.25rem);
  margin-bottom: clamp(1rem, 0.12rem + 2.35vw, 1.5rem);
  color: #1A1A18;
}

p, div.p {
  font-size: 1.1875rem;
  font-size: clamp(1.1875rem, 1.0130813953rem + 0.4651162791vw, 1.3125rem);
  line-height: 1.6875rem;
  line-height: clamp(1.6875rem, 1.3386627907rem + 0.9302325581vw, 1.9375rem);
  margin-bottom: clamp(1rem, 0.12rem + 2.35vw, 2rem);
  letter-spacing: 0.8px;
}
p:last-child, div.p:last-child {
  margin-bottom: 0;
}

p.small, body.karriere .jobs p.legal, div.small, body.karriere .jobs div.legal {
  font-size: 0.9375rem;
  font-size: clamp(0.9375rem, 0.7630813953rem + 0.4651162791vw, 1.0625rem);
  line-height: 1.25rem;
  line-height: clamp(1.25rem, 0.988372093rem + 0.6976744186vw, 1.4375rem);
  margin-bottom: clamp(1rem, 0.06rem + 1.18vw, 1.5rem);
  letter-spacing: 0.8px;
}
@media (max-width: 599px) {
  p.small, body.karriere .jobs p.legal, div.small, body.karriere .jobs div.legal {
    letter-spacing: 0.7px;
  }
}

p.verysmall {
  font-size: 0.6rem;
  font-size: clamp(0.6rem, 0.2162790698rem + 1.023255814vw, 0.875rem);
  line-height: 0.9rem;
  line-height: clamp(0.9rem, 0.6209302326rem + 0.7441860465vw, 1.1rem);
  margin-bottom: clamp(0.5rem, 0.06rem + 1.18vw, 1rem);
}

caption, .caption {
  font-size: 0.875rem;
  font-size: clamp(0.875rem, 0.7005813953rem + 0.4651162791vw, 1rem);
  line-height: 1.375rem;
  line-height: clamp(1.375rem, 1.2005813953rem + 0.4651162791vw, 1.5rem);
}

.quote {
  font-family: "Gomme-Sans", "HelveticaNeueLight", "HelveticaNeue-Light", "Helvetica Neue Light", "HelveticaNeue", "Helvetica Neue", Arial, sans-serif;
  font-size: 1.375rem;
  font-size: clamp(1.375rem, 0.851744186rem + 1.3953488372vw, 1.75rem);
  line-height: 2rem;
  line-height: clamp(2rem, 1.3023255814rem + 1.8604651163vw, 2.5rem);
}

.button, #mobilenav nav.topnav ul li:nth-child(6) {
  -webkit-transition: -webkit-transform 400ms ease-in-out;
  transition: -webkit-transform 400ms ease-in-out;
  transform: scale(1, 1);
}

.button:hover, #mobilenav nav.topnav ul li:hover:nth-child(6) {
  transform: scale(1.05, 1.05);
  z-index: 10;
}

input:-webkit-autofill,
input:-webkit-autofill:focus {
  transition: background-color 600000s 0s, color 600000s 0s;
}

input[data-autocompleted] {
  background-color: transparent !important;
}

.slider {
  margin-top: 3rem;
}
.slider .slick-slide {
  margin: 0 1rem;
}
@media (max-width: 599px) {
  .slider .slick-slide:last-child {
    margin-right: 1.5rem;
  }
  .slider .slick-slide:first-child {
    margin-left: 1.5rem;
  }
}
.slider .slick-list {
  margin: 0 -1rem;
}
@media (max-width: 599px) {
  .slider .slick-list {
    margin: 0 -0.5rem 0 -1.5rem;
  }
}
@media (max-width: 599px) {
  .slider.fullright {
    width: calc(100vw - 30px);
  }
}

.posrel {
  position: relative;
}

header article {
  display: flex;
}
header article #logo {
  display: block;
  margin-right: 2rem;
}
header article .hamburger {
  display: inline-block;
}
@media (min-width: 900px) {
  header article .hamburger {
    display: none;
  }
}
header article .hamburger {
  height: 16px;
  width: 36px;
}
header article .hamburger .hamburger-inner {
  width: 36px;
  color: #fff;
}

nav {
  letter-spacing: 1px;
  line-height: 1rem;
  font-size: 1rem;
  line-height: 1rem;
}
nav a {
  color: #1A1A18;
}
nav a:hover {
  text-decoration: none;
  color: #004e85;
}
nav a:focus {
  text-decoration: none;
}
nav ul {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
}
nav > ul {
  position: relative;
}
nav > ul li {
  padding: 0.5rem;
}
nav > ul li ul {
  position: absolute;
  flex-direction: column;
  display: none;
  background: #fff;
  border: 1px solid #ddd;
  margin-top: 0.5rem;
}
nav > ul li ul li {
  padding: 0.5rem;
  white-space: nowrap;
}
nav > ul li:hover ul {
  display: block;
}

#rightnav {
  display: flex;
  align-items: center;
  gap: 1rem;
}

nav#language {
  transition: 0.8s ease-in-out;
  z-index: 1;
  position: relative;
}
nav#language ul.showlang {
  list-style: none;
  margin: 0;
  padding: 0;
}
nav#language ul.showlang > li {
  padding: 1rem 0;
}
nav#language ul.showlang li:hover ul.lang {
  opacity: 1;
  left: -1rem;
  -webkit-transition: opacity 0.5s;
  transition: opacity 0.5s;
}
nav#language ul.lang {
  border: 1px solid #dbdbdb;
  background: #fff;
  position: absolute;
  z-index: 1;
  top: 3rem;
  left: -9999px;
  margin: 0;
  padding: 0;
  overflow: hidden;
  white-space: nowrap;
  opacity: 0;
  z-index: 999;
  -webkit-transition: opacity 0.5s;
  transition: opacity 0.5s;
}
nav#language ul.lang li {
  display: block;
  padding: 0.3rem 3rem 0.3rem 1rem;
}
nav#language ul.lang li a {
  color: #333;
}
nav#language ul.lang li a:hover {
  text-decoration: none;
  color: #005eb8;
}
nav#language ul.lang li.active {
  color: #005eb8;
  background: #f7f7f7;
}

html {
  scroll-padding-top: 160px; /* height of sticky header */
}

body {
  color: #6f6f6f;
  background: #fff;
  font-family: Facto, "HelveticaNeueLight", "HelveticaNeue-Light", "Helvetica Neue Light", "HelveticaNeue", "Helvetica Neue", Arial, sans-serif;
  overflow-x: hidden;
}

h1, h2, h3, h4, h5, h6, .teaser, .pretitle {
  font-family: "Gomme-Sans", "HelveticaNeueLight", "HelveticaNeue-Light", "Helvetica Neue Light", "HelveticaNeue", "Helvetica Neue", Arial, sans-serif;
}

.fixed-position {
  overflow: hidden;
}

section.anchor {
  display: block;
  position: relative;
  top: -250px;
  visibility: hidden;
}

header {
  height: 6rem;
  position: fixed;
  width: 100%;
  z-index: 20;
  top: 0;
  transition: background-color 0.3s ease-in-out;
  padding-left: 1.5rem;
  padding-right: 1.5rem;
}
@media (min-width: 900px) {
  header {
    height: 10rem;
  }
}
header .mobileoverlayContainer {
  display: none;
  position: absolute;
  left: 0;
  top: auto;
  right: 0;
  bottom: auto;
  height: calc(100vh - 80px);
  margin: 0rem;
  padding-top: 6rem;
  z-index: 10;
  background-color: #0267B2;
  padding-left: 1.5rem;
  padding-right: 1.5rem;
  padding-bottom: 7rem;
  width: 100%;
  flex-direction: column;
  justify-content: space-between;
}
header .mobileoverlayContainer .mobileoverlay {
  width: 100%;
  /*
  @include for-tablet{
   max-width: 70%;
   margin-left: auto;
   margin-right: auto;
  }*/
}
header .mobileoverlayContainer .mobileoverlay .button, header .mobileoverlayContainer .mobileoverlay #mobilenav nav.topnav ul li:nth-child(6), #mobilenav nav.topnav ul header .mobileoverlayContainer .mobileoverlay li:nth-child(6) {
  min-width: 250px;
  margin: 0 auto 1rem auto;
}
@media (max-width: 599px) {
  header .mobileoverlayContainer .mobileoverlay .button, header .mobileoverlayContainer .mobileoverlay #mobilenav nav.topnav ul li:nth-child(6), #mobilenav nav.topnav ul header .mobileoverlayContainer .mobileoverlay li:nth-child(6) {
    width: 100%;
    max-width: none;
  }
}
header .mobileoverlayContainer .menuecontainer {
  display: flex;
  flex-direction: column;
}
@media (min-width: 600px) and (max-width: 899px) {
  header .mobileoverlayContainer .menuecontainer {
    align-items: center;
  }
}
header .mobileoverlayContainer .menuecontainer .mobilelink {
  font-family: "Gomme-Sans", "HelveticaNeueLight", "HelveticaNeue-Light", "Helvetica Neue Light", "HelveticaNeue", "Helvetica Neue", Arial, sans-serif;
  font-style: normal;
  text-transform: uppercase;
  font-weight: 700;
  font-size: 26px;
  line-height: 32px;
  color: #FFFFFF;
  margin-bottom: 2rem;
  text-decoration: none;
  letter-spacing: 0.8px;
}
header .mobileoverlayContainer .menuecontainer .linktext {
  font-family: Facto, "HelveticaNeueLight", "HelveticaNeue-Light", "Helvetica Neue Light", "HelveticaNeue", "Helvetica Neue", Arial, sans-serif;
  font-style: normal;
  font-weight: 500;
  font-size: 17px;
  line-height: 23px;
  letter-spacing: 0.8px;
}
header .bottomtext {
  display: flex;
  flex-direction: row;
  justify-content: space-evenly;
}
header .bottomtext a {
  font-family: Facto, "HelveticaNeueLight", "HelveticaNeue-Light", "Helvetica Neue Light", "HelveticaNeue", "Helvetica Neue", Arial, sans-serif;
  font-style: normal;
  font-weight: 400;
  font-size: 16px;
  line-height: 22px;
  color: #FFFFFF;
  text-decoration: none;
}
header article {
  height: 100%;
  max-width: 71.25rem;
  display: flex;
  margin: 0 auto;
  align-items: center;
  padding: 0;
}
@media (max-width: 900px) {
  header article {
    justify-content: space-between;
  }
}
header article nav.main a {
  color: #fff;
  text-transform: uppercase;
  letter-spacing: 0.8px;
}
header article #logo {
  font-size: 1.625rem;
  line-height: 1.75rem;
  color: #0067B1;
  z-index: 100;
}
header article #logo a {
  text-decoration: none;
}
header article #logo a .logoText {
  position: relative;
  top: 3px;
}
header article #logo a img {
  max-height: 48px;
  margin-right: 1.25rem;
}
header #hamburger {
  z-index: 100;
}

.navbox {
  display: none;
  height: 100%;
}
@media (min-width: 900px) {
  .navbox {
    display: block;
  }
}

#topnav {
  margin-bottom: 2.8rem;
}
#topnav nav.main ul li {
  padding: 0.625rem 1.5rem;
  border-left: 1px solid #fff;
}
#topnav nav.main ul li.active {
  border: 1px solid #fff;
  border-bottom-left-radius: 0.5rem;
  border-bottom-right-radius: 0.5rem;
  border-top: 0;
}
#topnav nav.main ul li.active + li {
  border-left: none;
}
#topnav nav.main ul li a {
  font-size: 14px;
  line-height: 14px;
  letter-spacing: 0.8px;
}

#mainnav {
  font-family: "Gomme-Sans", "HelveticaNeueLight", "HelveticaNeue-Light", "Helvetica Neue Light", "HelveticaNeue", "Helvetica Neue", Arial, sans-serif;
  font-weight: 600;
  font-size: 15px;
  line-height: 25px;
  margin-top: 4.75rem;
}
#mainnav nav.main ul {
  gap: 2.5rem;
}
#mainnav nav.main ul li:hover a, #mainnav nav.main ul li.active a {
  color: #82D0F5;
}

#rightnav {
  display: none;
  position: fixed;
  z-index: 20;
  right: 0;
  background: #fff;
  border-bottom-left-radius: 0.5rem;
}
@media (min-width: 900px) {
  #rightnav {
    display: block;
  }
}
#rightnav nav.main ul li {
  padding: 0.625rem 0.75rem;
}
#rightnav nav.main ul li a {
  color: #0067B1;
  font-style: normal;
  font-weight: 500;
  font-size: 14px;
  line-height: 14px;
}
#rightnav nav.main ul li:first-child {
  padding-left: 1.5rem;
}
#rightnav nav.main ul li:nth-child(4) {
  padding-right: 1.5rem;
}
#rightnav nav.main ul li:last-child {
  background: #E5007D;
  padding-left: 1.5rem;
}
#rightnav nav.main ul li:last-child > a {
  font-family: "Gomme-Sans", "HelveticaNeueLight", "HelveticaNeue-Light", "Helvetica Neue Light", "HelveticaNeue", "Helvetica Neue", Arial, sans-serif;
  letter-spacing: 0.8px;
  position: relative;
  padding-left: 1.5rem;
  gap: 0.5rem;
  color: #fff;
}
#rightnav nav.main ul li:last-child > a::before {
  content: "";
  position: absolute;
  background: url("/img/account.svg") no-repeat;
  background-size: 1rem;
  width: 1rem;
  height: 1rem;
  left: 0;
}
#rightnav nav.main ul li:last-child:hover {
  background: #B10061;
}
#rightnav nav.main ul li:last-child:hover a {
  color: #fff;
}
#rightnav nav.main ul li:last-child ul {
  background: #B10061;
  border: none;
  width: 100%;
  margin-left: -1.5rem;
}
#rightnav nav.main ul li:last-child ul li {
  padding-left: 1.5rem;
}
#rightnav nav.main ul li:last-child ul li a {
  color: #fff;
}
#rightnav nav.main ul li:last-child ul li:hover a {
  color: #82D0F5;
}
#rightnav nav.main ul li:hover a {
  color: #82D0F5;
}
#rightnav nav.main ul li.active a {
  color: #E5007D;
}

section.backgroundLightBlue {
  background: rgba(130, 208, 245, 0.2);
}

#mobilenav {
  position: fixed;
  top: 0;
  left: 100vw;
  display: block;
  width: 100vw;
  bottom: 0;
  overflow-y: auto;
  background: #0067B1;
  color: #fff;
  z-index: 99;
  transition: left 0.5s ease-in-out;
  text-align: left;
  padding: 8rem 1.5rem 0 1.5rem;
}
@media (min-width: 900px) {
  #mobilenav {
    display: none;
  }
}
@media (min-width: 600px) and (max-width: 899px) {
  #mobilenav {
    padding-top: 18rem;
  }
}
#mobilenav hr {
  opacity: 1;
  margin-bottom: 2rem;
  margin-top: 0;
}
#mobilenav.open {
  display: block;
  left: 0;
}
@media (min-width: 600px) and (max-width: 899px) {
  #mobilenav.open {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
  }
}
#mobilenav nav ul {
  flex-direction: column;
}
#mobilenav nav ul li {
  margin-bottom: 1.5rem;
}
#mobilenav nav ul li a {
  color: #fff;
  text-transform: uppercase;
}
#mobilenav nav ul li.active a {
  color: #82D0F5;
}
#mobilenav .webmail {
  margin: 0 auto;
  margin-bottom: 1.5rem;
  max-width: none;
}
@media (min-width: 600px) and (max-width: 899px) {
  #mobilenav .webmail {
    width: 15.5rem;
  }
}
#mobilenav nav.mainnav {
  font-family: "Gomme-Sans", "HelveticaNeueLight", "HelveticaNeue-Light", "Helvetica Neue Light", "HelveticaNeue", "Helvetica Neue", Arial, sans-serif;
  color: #fff;
  font-size: 1.375rem;
  font-weight: 700;
}
@media (min-width: 600px) and (max-width: 899px) {
  #mobilenav nav.mainnav {
    display: flex;
    justify-content: center;
  }
  #mobilenav nav.mainnav ul {
    align-items: center;
  }
}
#mobilenav nav.topnav {
  font-size: 1.125rem;
}
@media (min-width: 600px) and (max-width: 899px) {
  #mobilenav nav.topnav ul {
    align-items: center;
  }
}
#mobilenav nav.topnav ul li:nth-child(6) {
  margin-bottom: 1rem;
}
#mobilenav nav.topnav ul li:nth-child(6) a {
  position: relative;
  padding-left: 2rem;
  color: #fff;
}
#mobilenav nav.topnav ul li:nth-child(6) a::before {
  content: "";
  position: absolute;
  background: url("/img/account.svg") no-repeat;
  background-size: 1.5rem;
  width: 1.5rem;
  height: 1.5rem;
  left: 0;
}
#mobilenav nav.footernav ul {
  flex-direction: row;
  justify-content: center;
}
#mobilenav nav.footernav ul li a {
  text-transform: none;
}

section {
  background-size: auto 100%;
  background-repeat: no-repeat;
  background-position: center top;
}

section#header {
  background-image: url(/img/hero-mobile.webp);
  color: #fff;
  background-color: #0267B2;
}
@media (max-width: 599px) {
  section#header {
    height: 100vh;
  }
}
@media (max-width: 900px) {
  section#header {
    padding: 8rem 1.5rem;
  }
}
@media (max-width: 599px) {
  section#header {
    padding: 4rem 1.5rem;
  }
}
@media (min-width: 900px) {
  section#header {
    padding-top: 10rem;
  }
}
@media (min-width: 600px) {
  section#header {
    background-image: url(/img/hero-tablet.webp);
  }
}
@media (max-width: 320px) {
  section#header {
    background-position: -143px 50px !important;
  }
}
@media (min-width: 900px) {
  section#header {
    min-height: 900px;
    background-image: url(/img/hero.webp);
  }
}
section#header article {
  display: flex;
  height: 100%;
  flex-direction: column;
  padding-top: 3rem;
}
@media (min-width: 900px) {
  section#header article {
    padding-top: 1.125rem;
  }
}
section#header h2, section#header h3, section#header .teaser {
  color: #fff;
}
section#header .stoerer, section#header .stoerer_neu {
  -webkit-filter: drop-shadow(0px 0px 8px rgba(0, 0, 0, 0.5));
  filter: drop-shadow(0px 0px 8px rgba(0, 0, 0, 0.5));
}
@media (max-width: 599px) {
  section#header .stoerer, section#header .stoerer_neu {
    position: absolute;
    bottom: 0;
    width: 100%;
  }
}
@keyframes modernPulse {
  0% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.05); /* Slightly larger scale for a subtle effect */
  }
  100% {
    transform: scale(1);
  }
}
section#header .stoerer img, section#header .stoerer_neu img {
  animation: modernPulse 2s infinite;
  transition: transform 0.2s linear;
  cursor: pointer;
}
@media (max-width: 599px) {
  section#header .stoerer img, section#header .stoerer_neu img {
    max-width: 10rem;
  }
}
@media (min-width: 414px) and (max-width: 599px) {
  section#header .stoerer img, section#header .stoerer_neu img {
    max-width: 12rem;
  }
}
@media (min-width: 600px) {
  section#header .stoerer img, section#header .stoerer_neu img {
    max-width: 15rem;
  }
}
@media (min-width: 900px) {
  section#header .stoerer img, section#header .stoerer_neu img {
    max-width: 17rem;
  }
}
section#header .stoerer img:hover {
  z-index: 10;
}

section#missing {
  padding-top: 15rem;
}
section#missing article {
  text-align: center;
}

section#availability {
  padding: 3rem 1.5rem;
  background: rgb(177, 0, 97);
  background: linear-gradient(0deg, rgb(177, 0, 97) 0%, rgb(229, 0, 125) 100%);
  font-family: "Gomme-Sans", "HelveticaNeueLight", "HelveticaNeue-Light", "Helvetica Neue Light", "HelveticaNeue", "Helvetica Neue", Arial, sans-serif;
  font-style: normal;
  font-weight: 700;
  font-size: 1.625rem;
  line-height: 2rem;
  color: #fff;
}
@media (max-width: 900px) {
  section#availability {
    padding: 2rem 1.5rem;
  }
}

section#pakete {
  padding: 3rem 1.5rem;
}
section#pakete .twocol {
  align-items: center;
}

@media (min-width: 900px) {
  section#gemeindeinfo {
    background-image: url(/img/gemeindeinfo.webp);
  }
}

.projects .item {
  box-shadow: 2px 2px 10px 0 rgba(0, 0, 0, 0.4);
  border-radius: 6px;
  overflow: hidden;
  background: #fff;
}
.projects .item h3 {
  display: flex;
  align-items: center;
  padding-left: 1.5rem;
  color: #fff;
  font-size: 22px;
  line-height: 26px;
  height: 4.5rem;
  margin-bottom: 0;
}
.projects .item img {
  margin-bottom: 0;
}
.projects .item .box {
  padding: 1.5rem;
}
.projects .item .p {
  padding: 1.5rem;
}
.projects .slick-list {
  padding-bottom: 1.5rem;
}

#projekt img {
  border-radius: 6px;
}

section#grubingerHeader {
  padding-top: 10rem;
  background-image: url(/img/hero-grubinger-v1.webp);
  background-color: #0067B1;
}
@media (min-width: 900px) {
  section#grubingerHeader {
    padding-top: 8rem;
  }
}
section#grubingerHeader h1, section#grubingerHeader .teaser {
  color: #ffffff;
}

section#grubinger h2 {
  line-height: 2.125rem;
  line-height: clamp(2.125rem, 0.2063953488rem + 5.1162790698vw, 3.5rem);
}
section#grubinger .grubingerCol, section#grubinger .topcol {
  margin-bottom: 3rem;
}
@media (min-width: 900px) {
  section#grubinger .grubingerCol, section#grubinger .topcol {
    margin-bottom: 5rem;
  }
}
section#grubinger .grubingerCol.noMarginBottom, section#grubinger .topcol.noMarginBottom {
  margin-bottom: 0rem;
}
section#grubinger .teaser {
  color: #6F6F6F;
  font-family: Facto, "HelveticaNeueLight", "HelveticaNeue-Light", "Helvetica Neue Light", "HelveticaNeue", "Helvetica Neue", Arial, sans-serif;
  font-size: 1.1875rem;
  font-size: clamp(1.1875rem, 1.0130813953rem + 0.4651162791vw, 1.3125rem);
  line-height: 1.6875rem;
  line-height: clamp(1.6875rem, 1.3386627907rem + 0.9302325581vw, 1.9375rem);
  margin-bottom: clamp(1rem, 0.12rem + 2.35vw, 2rem);
  letter-spacing: 0.8px;
}
section#grubinger img {
  margin-bottom: 0.5rem;
}
section#grubinger .small, section#grubinger body.karriere .jobs .legal, body.karriere .jobs section#grubinger .legal {
  color: #1A1A18;
  font-family: Facto, "HelveticaNeueLight", "HelveticaNeue-Light", "Helvetica Neue Light", "HelveticaNeue", "Helvetica Neue", Arial, sans-serif;
  font-size: 1rem;
  line-height: 1.25rem;
  margin-bottom: 3rem;
}
@media (min-width: 1200px) {
  section#grubinger .small, section#grubinger body.karriere .jobs .legal, body.karriere .jobs section#grubinger .legal {
    margin-bottom: clamp(1rem, 0.06rem + 1.18vw, 1.5rem);
  }
}
section#grubinger .p {
  font-size: 1rem;
  font-size: clamp(1rem, 0.738372093rem + 0.6976744186vw, 1.1875rem);
  line-height: 1.6875rem;
  line-height: clamp(1.6875rem, 1.3386627907rem + 0.9302325581vw, 1.9375rem);
  color: #1A1A18;
}
section#grubinger .lastBlock .small, section#grubinger .lastBlock body.karriere .jobs .legal, body.karriere .jobs section#grubinger .lastBlock .legal {
  margin-bottom: 3rem;
}

section.blue {
  background-color: #0067B1;
}

@media (max-width: 599px) {
  section#info1 {
    padding-bottom: 22.5rem;
    background-image: url(/img/glasfaserinternet-frau-mobile.webp), linear-gradient(287.7deg, rgba(0, 159, 227, 0.15) 19.79%, rgba(0, 159, 227, 0.0225) 81.25%);
    background-size: auto 340px, auto;
    background-position: bottom;
  }
}
@media (min-width: 600px) and (max-width: 899px) {
  section#info1 {
    padding-bottom: 22.5rem;
    background-image: url(/img/glasfaserinternet-frau-mobile.webp), linear-gradient(287.7deg, rgba(0, 159, 227, 0.15) 19.79%, rgba(0, 159, 227, 0.0225) 81.25%);
    background-size: auto 340px, auto;
    background-position: bottom;
  }
}
@media (min-width: 900px) {
  section#info1 {
    background-image: url(/img/glasfaserinternet-frau.webp);
    padding-bottom: 8rem;
  }
}
section#info1 .p {
  margin-bottom: 2rem;
  color: #6F6F6F;
}
@media (min-width: 600px) {
  section#info1 .p {
    margin-bottom: 3rem;
  }
}
section#info1 .teaser {
  color: #1A1A18;
}

@media (max-width: 599px) {
  section#glasfaser {
    padding-bottom: 22.5rem;
    background-image: url(/img/glasfaser-mobile.webp);
    background-size: auto 336px;
    background-position: bottom;
  }
}
@media (min-width: 600px) and (max-width: 899px) {
  section#glasfaser {
    padding-bottom: 22.5rem;
    background-image: url(/img/glasfaser-mobile.webp);
    background-size: auto 336px;
    background-position: bottom;
  }
}
@media (min-width: 900px) {
  section#glasfaser {
    background-image: url(/img/glasfaser.webp);
    padding-bottom: 8rem;
  }
}
@media (min-width: 900px) {
  section#glasfaser .p {
    margin-bottom: 0;
  }
}
section#glasfaser .p {
  color: #6F6F6F;
}
section#glasfaser .teaser {
  color: #1A1A18;
}

section#zukunft {
  background-color: #0267B2;
}
@media (max-width: 599px) {
  section#zukunft {
    padding-bottom: 23rem;
    background-image: url(/img/zukunft-mann-vr-brille-mobile.webp);
    background-size: auto 650px;
    background-position: bottom;
  }
}
@media (min-width: 600px) and (max-width: 899px) {
  section#zukunft {
    padding-bottom: 21rem;
    background-image: url(/img/zukunft-mann-vr-brille-mobile.webp);
    background-size: auto 650px;
    background-position: bottom;
  }
}
@media (min-width: 900px) {
  section#zukunft {
    background-image: url(/img/zukunft-mann-vr-brille.webp);
    padding-bottom: 8rem;
  }
}
section#zukunft .teaser {
  margin-bottom: 3rem;
}
section#zukunft h3 {
  font-family: "Gomme-Sans", "HelveticaNeueLight", "HelveticaNeue-Light", "Helvetica Neue Light", "HelveticaNeue", "Helvetica Neue", Arial, sans-serif;
  font-style: normal;
  font-weight: 600;
  font-size: 1.125rem;
  font-size: clamp(1.125rem, 0.7761627907rem + 0.9302325581vw, 1.375rem);
  line-height: 1.25rem;
  line-height: clamp(1.25rem, 0.726744186rem + 1.3953488372vw, 1.625rem);
  color: #FFFFFF;
  margin-bottom: 0.5rem;
}
section#zukunft .item > img {
  margin-bottom: 1.5rem;
  max-width: 48px;
}

section#ftth {
  position: relative;
  background-position: bottom;
  background-image: url(/img/ftth-mobile.webp), linear-gradient(287.7deg, rgba(0, 159, 227, 0.15) 19.79%, rgba(0, 159, 227, 0) 81.25%);
  padding-bottom: 20rem;
  background-position: center bottom;
  background-size: auto 18rem, cover;
  background-repeat: no-repeat;
}
@media (min-width: 900px) {
  section#ftth {
    background-image: url(/img/ftth.webp);
    padding-bottom: 8rem;
    background-size: auto 100%;
  }
}
section#ftth .infobutton {
  position: absolute;
  right: 0;
  bottom: 0;
}
@media (min-width: 600px) {
  section#ftth .infobutton {
    right: 2rem;
    bottom: 2rem;
  }
}

section#glasfaser2 {
  background-position: bottom;
  background-image: url(/img/alle-moeglichkeiten-mobile.webp);
  padding-bottom: 22rem;
  background-position: center bottom;
  background-size: cover;
  background-repeat: no-repeat;
}
@media (min-width: 900px) {
  section#glasfaser2 {
    background-image: url(/img/alle-moeglichkeiten.webp);
    padding-bottom: 8rem;
    background-size: auto 100%;
  }
}

section#wachstum {
  background-position: bottom;
  background-image: url(/img/zukunft-mobile.webp);
  padding-bottom: 20rem;
  background-position: center bottom;
  background-size: cover;
  background-repeat: no-repeat;
}
@media (min-width: 900px) {
  section#wachstum {
    background-image: url(/img/zukunft.webp);
    padding-bottom: 8rem;
    background-size: auto 100%;
  }
}

section#projekte {
  background-position: bottom;
  background-image: url(/img/aktuell-aktiv-mobile.webp);
  background-position: center bottom;
  background-size: cover;
  background-repeat: no-repeat;
}
@media (min-width: 900px) {
  section#projekte {
    background-image: url(/img/aktuell-aktiv.webp);
    background-size: auto 100%;
  }
}
section#projekte .slider .slick-list {
  padding-bottom: 1.5rem;
}

body.home section#projekte {
  border-top: 1px solid #fff;
}

@media (max-width: 900px) {
  .slider {
    width: calc(100vw - 30px);
  }
}

section#angebote {
  background-color: #0067B1;
}
@media (max-width: 599px) {
  section#angebote {
    background-color: #0067B1;
  }
}
@media (max-width: 599px) {
  section#angebote {
    background-image: url(/img/packages-mobile.webp);
    background-position: 55% -8rem;
  }
}
@media (min-width: 320px) and (max-width: 414px) {
  section#angebote {
    background-image: url(/img/packages-mobile.webp);
    background-position: 55% -8rem;
  }
}
@media (max-width: 320px) {
  section#angebote {
    background-image: url(/img/packages-mobile.webp);
    background-position: 55% center;
  }
}
@media (min-width: 600px) and (max-width: 899px) {
  section#angebote {
    background-image: url(/img/packages-tablet.webp);
    background-position: 70% center;
  }
}
@media (min-width: 900px) {
  section#angebote {
    background-image: url(/img/packages.webp);
    padding-bottom: 8rem;
  }
}
section#angebote .info {
  color: #fff;
}
section#angebote .info * {
  color: #fff;
}
section#angebote h2, section#angebote .teaser, section#angebote .p {
  color: #fff;
}
section#angebote .carditem h2 {
  color: #0067B1;
}
section#angebote .carditem li {
  font-family: "Gomme-Sans", "HelveticaNeueLight", "HelveticaNeue-Light", "Helvetica Neue Light", "HelveticaNeue", "Helvetica Neue", Arial, sans-serif;
}
section#angebote .p {
  margin-bottom: 11rem;
}
@media (min-width: 320px) and (max-width: 414px) {
  section#angebote .p {
    margin-bottom: 14rem;
  }
}
@media (min-width: 414px) and (max-width: 599px) {
  section#angebote .p {
    margin-bottom: 12rem;
  }
}
@media (min-width: 900px) {
  section#angebote .p {
    margin-bottom: 6rem;
  }
}
section#angebote h3.info {
  margin-bottom: 1rem;
}
section#angebote .small.info, section#angebote body.karriere .jobs .info.legal, body.karriere .jobs section#angebote .info.legal {
  margin-bottom: 0;
  font-family: Facto, "HelveticaNeueLight", "HelveticaNeue-Light", "Helvetica Neue Light", "HelveticaNeue", "Helvetica Neue", Arial, sans-serif;
  font-size: 1.0625rem;
  line-height: 1.4375rem;
}

section#weiterempfehlung {
  background-image: linear-gradient(to right, #fff, #e0f4fb);
}
@media (min-width: 900px) {
  section#weiterempfehlung {
    background-image: url(/img/section-5-angebot-with-background.webp);
  }
}
section#weiterempfehlung .teaser {
  color: #1A1A18;
  margin-bottom: 2rem;
}
@media (min-width: 900px) {
  section#weiterempfehlung .teaser {
    margin-bottom: 3rem;
  }
}
section#weiterempfehlung .mobile {
  position: relative;
}
@media (max-width: 599px) {
  section#weiterempfehlung .mobile {
    display: flex;
    justify-content: center;
    flex-direction: column;
    align-items: center;
  }
}
@media (min-width: 600px) and (max-width: 899px) {
  section#weiterempfehlung .mobile {
    display: flex;
    justify-content: center;
    flex-direction: column;
    align-items: center;
  }
}
section#weiterempfehlung .mobile h2 {
  align-self: start;
}
section#weiterempfehlung .mobile a.button.pink {
  align-self: start;
}
section#weiterempfehlung .button.pink, section#weiterempfehlung #mobilenav nav.topnav ul li:nth-child(6), #mobilenav nav.topnav ul section#weiterempfehlung li:nth-child(6) {
  margin-bottom: 3rem;
}
@media (min-width: 900px) {
  section#weiterempfehlung .button.pink, section#weiterempfehlung #mobilenav nav.topnav ul li:nth-child(6), #mobilenav nav.topnav ul section#weiterempfehlung li:nth-child(6) {
    margin-bottom: 0;
  }
}
section#weiterempfehlung .carditem {
  position: relative;
  margin: 0;
  max-width: 360px;
}
@media (max-width: 320px) {
  section#weiterempfehlung .carditem {
    max-width: 240px;
  }
}
@media (min-width: 320px) and (max-width: 414px) {
  section#weiterempfehlung .carditem {
    max-width: 280px;
  }
}
@media (min-width: 414px) and (max-width: 599px) {
  section#weiterempfehlung .carditem {
    max-width: 280px;
  }
}
@media (min-width: 600px) and (max-width: 899px) {
  section#weiterempfehlung .carditem {
    max-width: 300px;
  }
}
section#weiterempfehlung .carditem .header::after {
  content: none !important;
}
section#weiterempfehlung .carditem .body {
  position: relative;
  text-align: left;
  padding: 1.5rem 1rem;
}
section#weiterempfehlung .carditem .body h2 {
  color: #0067B1;
  margin: 0;
  font-size: 1.75rem;
  line-height: 2.25rem;
}
section#weiterempfehlung .carditem h2 {
  margin: 0;
}
@media (min-width: 900px) {
  section#weiterempfehlung .carditem {
    margin: 0 auto;
  }
}
section#weiterempfehlung .stoerer {
  transform: rotate(-0.05turn);
  max-width: 160px;
  position: absolute;
  bottom: 5%;
  right: -20%;
}
@media (max-width: 599px) {
  section#weiterempfehlung .stoerer {
    max-width: 120px;
    right: -20px;
    bottom: 30%;
  }
}
@media (min-width: 600px) and (max-width: 899px) {
  section#weiterempfehlung .stoerer {
    max-width: 130px;
    right: -25px;
    bottom: 35%;
  }
}
section#weiterempfehlung > article {
  padding-top: 3rem;
}

section#exklusiv {
  background-image: linear-gradient(to right, #fff, #e0f4fb);
}
@media (min-width: 900px) {
  section#exklusiv {
    background-image: url(/img/section-5-angebot-with-background.webp);
  }
}
section#exklusiv .teaser {
  color: #1A1A18;
}
section#exklusiv .mobile {
  position: relative;
}
@media (max-width: 599px) {
  section#exklusiv .mobile {
    display: flex;
    position: relative;
    display: flex;
    justify-content: center;
    flex-direction: column;
    align-items: center;
  }
}
@media (min-width: 600px) and (max-width: 899px) {
  section#exklusiv .mobile {
    display: flex;
    position: relative;
    display: flex;
    justify-content: center;
    flex-direction: column;
    align-items: center;
  }
}
section#exklusiv .mobile h2 {
  align-self: start;
}
section#exklusiv .mobile a.button.pink {
  align-self: start;
}
section#exklusiv .teaser {
  margin-bottom: 2rem;
}
@media (min-width: 900px) {
  section#exklusiv .teaser {
    margin-bottom: 3rem;
  }
}
section#exklusiv .button.pink, section#exklusiv #mobilenav nav.topnav ul li:nth-child(6), #mobilenav nav.topnav ul section#exklusiv li:nth-child(6) {
  margin-bottom: 3rem;
}
@media (min-width: 900px) {
  section#exklusiv .button.pink, section#exklusiv #mobilenav nav.topnav ul li:nth-child(6), #mobilenav nav.topnav ul section#exklusiv li:nth-child(6) {
    margin-bottom: 0;
  }
}
section#exklusiv .carditem {
  position: relative;
  margin: 0;
  max-width: 360px;
}
@media (max-width: 320px) {
  section#exklusiv .carditem {
    max-width: 240px;
  }
}
@media (min-width: 320px) and (max-width: 414px) {
  section#exklusiv .carditem {
    max-width: 280px;
  }
}
@media (min-width: 414px) and (max-width: 599px) {
  section#exklusiv .carditem {
    max-width: 280px;
  }
}
@media (min-width: 600px) and (max-width: 899px) {
  section#exklusiv .carditem {
    max-width: 300px;
  }
}
section#exklusiv .carditem .body {
  position: relative;
}
section#exklusiv .carditem .small, section#exklusiv .carditem body.karriere .jobs .legal, body.karriere .jobs section#exklusiv .carditem .legal {
  letter-spacing: 0.7px;
  font-size: 0.9375rem;
  line-height: 1.25rem;
  color: #1A1A18;
}
section#exklusiv .carditem h2 {
  margin: 0;
}
section#exklusiv .carditem h3 {
  color: #0067B1;
  margin: 0;
  margin-bottom: 0;
}
@media (max-width: 599px) {
  section#exklusiv .carditem h3 {
    margin-bottom: 1rem;
  }
}
section#exklusiv .carditem h3:nth-child(1) {
  position: relative;
  display: inline-block;
}
section#exklusiv .carditem h3:nth-child(1):after {
  content: "";
  background: url(/img/preis-durchstrich.svg) no-repeat;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-size: 100%;
}
@media (min-width: 900px) {
  section#exklusiv .carditem {
    margin: 0 auto;
  }
}
section#exklusiv .stoerer {
  transform: rotate(-0.05turn);
  max-width: 200px;
  position: absolute;
  bottom: 10%;
  right: -20%;
}
@media (max-width: 599px) {
  section#exklusiv .stoerer {
    max-width: 150px;
    position: absolute;
    right: -30px;
    bottom: 44%;
  }
}
@media (max-width: 320px) {
  section#exklusiv .stoerer {
    max-width: 120px;
    position: absolute;
    bottom: 52%;
    right: -20px;
  }
}
@media (min-width: 600px) and (max-width: 899px) {
  section#exklusiv .stoerer {
    max-width: 150px;
    position: absolute;
    bottom: 50%;
    right: -30px;
  }
}
section#moeglichkeiten {
  background-color: #0067B1;
  background-position: bottom;
}
@media (max-width: 599px) {
  section#moeglichkeiten {
    padding-bottom: 21rem;
    background-image: url(/img/zusatzangebote-mobile.webp);
    background-size: auto 450px;
    background-position: bottom;
    background-color: #0067B1;
  }
}
@media (min-width: 600px) and (max-width: 899px) {
  section#moeglichkeiten {
    padding-bottom: 21rem;
    background-image: url(/img/zusatzangebote-mobile.webp);
    background-size: auto 450px;
    background-position: bottom;
    background-color: #0067B1;
  }
}
@media (min-width: 900px) {
  section#moeglichkeiten {
    background-image: url(/img/zusatzangebote.webp);
    padding-bottom: 8rem;
    background-color: #0067B1;
    background-size: auto 92%;
    background-position: 47% bottom;
  }
}
@media (max-width: 599px) {
  section#moeglichkeiten .teaser {
    margin-bottom: 2rem;
  }
}
@media (max-width: 599px) {
  section#moeglichkeiten h2 {
    margin-bottom: 0.875rem;
  }
}
@media (min-width: 600px) {
  section#moeglichkeiten .parentContainer .twocol {
    grid-template-columns: 1fr 1fr;
  }
}

section#faqs {
  background: linear-gradient(287.7deg, rgba(0, 159, 227, 0.15) 19.79%, rgba(0, 159, 227, 0) 81.25%), #FFFFFF;
}
section#faqs.blue {
  background: #0067B1;
}
section#faqs.blue .teaser {
  color: #fff;
}
section#faqs .faqs {
  margin-bottom: 4rem;
}
@media (min-width: 900px) {
  section#faqs .topcol {
    width: 50%;
  }
}
section#faqs .teaser {
  color: #1A1A18;
}
section#faqs h4 {
  font-size: 1.125rem;
  font-size: clamp(1.125rem, 0.9505813953rem + 0.4651162791vw, 1.25rem);
  line-height: 1.75rem;
  line-height: clamp(1.75rem, 1.5755813953rem + 0.4651162791vw, 1.875rem);
  font-family: Facto, "HelveticaNeueLight", "HelveticaNeue-Light", "Helvetica Neue Light", "HelveticaNeue", "Helvetica Neue", Arial, sans-serif;
  font-weight: 400;
}
section#faqs .imageFaqContainer {
  display: flex;
  gap: 2rem;
  flex-direction: row;
  padding: 0.5rem;
}
@media (max-width: 599px) {
  section#faqs .imageFaqContainer {
    flex-wrap: wrap;
    gap: 2rem;
  }
}
@media (min-width: 600px) and (max-width: 899px) {
  section#faqs .imageFaqContainer {
    flex-wrap: wrap;
    gap: 2rem;
  }
}
section#faqs .faq.image {
  box-shadow: rgba(0, 0, 0, 0.1) 0px 4px 12px;
  width: 48%;
}
@media (max-width: 599px) {
  section#faqs .faq.image {
    width: 100%;
  }
}
@media (min-width: 600px) and (max-width: 899px) {
  section#faqs .faq.image {
    width: 100%;
  }
}
section#faqs .faq.image.big {
  max-width: none;
  width: 100%;
}

section#zuhause {
  background-color: #0267B2;
}
@media (max-width: 599px) {
  section#zuhause {
    padding-bottom: 21rem;
    background-image: url(/img/zuhause-mobile.webp);
    background-size: auto 500px;
    background-position: bottom;
  }
}
@media (min-width: 600px) and (max-width: 899px) {
  section#zuhause {
    padding-bottom: 21rem;
    background-image: url(/img/zuhause-mobile.webp);
    background-size: auto 580px;
    background-position: bottom;
  }
}
@media (min-width: 900px) {
  section#zuhause {
    background-image: url(/img/zuhause.webp);
    padding-bottom: 8rem;
  }
}
section#zuhause .p {
  margin-bottom: 2rem;
}
@media (min-width: 900px) {
  section#zuhause .p {
    margin-bottom: 3rem;
  }
}

h1 {
  margin-bottom: 1rem;
}

h2 {
  color: #0067B1;
  font-weight: 800;
}

.dark * {
  color: #fff;
}
.dark .carditem .body h4, .dark .carditem .body sup, .dark .carditem .body i, .dark .carditem .body h4 span, .dark .carditem .body .text, .dark .carditem .body .small, .dark .carditem .body body.karriere .jobs .legal, body.karriere .jobs .dark .carditem .body .legal, .dark .carditem .body .p, .dark .carditem .body span {
  color: #6f6f6f;
}

.tabcontent .offer {
  gap: 0;
}
.tabcontent .offer .carditem:first-child {
  position: relative;
  left: -0.7rem;
}
.tabcontent .offer h4 {
  font-size: 1.25rem;
}
.tabcontent .offer h3 span {
  font-size: 1rem;
  font-weight: normal;
}

.cardsliderbox, .moduleSliderBox {
  padding: 0 0 2rem 0;
}
@media (max-width: 1200px) {
  .cardsliderbox, .moduleSliderBox {
    padding: 0 3rem 2rem 3rem;
  }
}
@media (max-width: 900px) {
  .cardsliderbox, .moduleSliderBox {
    padding: 0 0 2rem 0;
  }
}
.cardsliderbox .carditem:first-child, .moduleSliderBox .carditem:first-child {
  margin-left: 0;
}

@media (max-width: 900px) {
  .cardslider, .moduleSlider {
    margin: 0 -1.5rem 0 -1.5rem;
  }
  .cardslider .carditem:first-child, .cardslider .item:first-child, .moduleSlider .carditem:first-child, .moduleSlider .item:first-child {
    margin-left: 1.5rem;
  }
}
.cardslider .slick-list, .moduleSlider .slick-list {
  padding: 1rem 0;
}
.twocol {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.5rem;
}
@media (max-width: 599px) {
  .twocol.desktop {
    display: none;
  }
}
@media (min-width: 600px) {
  .twocol.desktop {
    display: none;
  }
}
@media (min-width: 900px) {
  .twocol.desktop {
    display: grid;
  }
}
@media (min-width: 900px) {
  .twocol {
    grid-template-columns: 1fr 1fr;
  }
}
.twocol.center {
  align-items: center;
}
.twocol.twocol4060 {
  grid-column: 1;
  grid-template-columns: 1fr;
}
@media (min-width: 900px) {
  .twocol.twocol4060 {
    grid-template-columns: 0.4fr 0.6fr;
  }
}
@media (max-width: 599px) {
  .twocol.twocol4060.revert > :first-child {
    grid-column: 1;
  }
  .twocol.twocol4060.revert > :last-child {
    grid-column: 1;
  }
}
@media (min-width: 900px) {
  .twocol.twocol4060.revert {
    grid-template-columns: 0.6fr 0.4fr;
  }
}
@media (min-width: 900px) {
  .twocol.revert {
    grid-auto-flow: dense;
  }
  .twocol.revert > :first-child {
    grid-column: 2;
  }
  .twocol.revert > :last-child {
    grid-column: 1;
  }
}
.twocol.vcenter {
  align-items: center;
}
.twocol.vtop {
  align-items: start;
}
.twocol.vbottom {
  align-items: end;
}
@media (min-width: 900px) {
  .twocol.textLessWidth {
    grid-template-columns: 0.75fr 1fr;
  }
}
.twocol.twocol75 {
  grid-template-columns: 1fr;
}
@media (min-width: 900px) {
  .twocol.twocol75.portrait {
    grid-template-columns: 0.7fr 0.5fr;
  }
}
@media (min-width: 900px) {
  .twocol.twocol75 {
    grid-template-columns: 0.7fr 0.5fr;
  }
}
@media (min-width: 900px) {
  .twocol.twocol75.revert {
    grid-template-columns: 0.5fr 0.7fr;
  }
}
.twocol.twocol57 {
  grid-template-columns: 1fr;
}
@media (min-width: 900px) {
  .twocol.twocol57 {
    grid-template-columns: 0.5fr 0.7fr;
  }
}
@media (min-width: 900px) {
  .twocol.twocol57.revert {
    grid-template-columns: 0.7fr 0.5fr;
  }
}
.twocol.twocol84 {
  grid-template-columns: 1fr;
}
@media (min-width: 900px) {
  .twocol.twocol84 {
    grid-template-columns: 0.8fr 0.4fr;
  }
}
@media (min-width: 900px) {
  .twocol.twocol48 {
    grid-template-columns: 0.4fr 0.8fr;
  }
}
.twocol > div {
  position: relative;
}
.twocol.article {
  gap: 2rem;
  align-items: flex-start;
}
@media (min-width: 900px) {
  .twocol.article {
    gap: 7.5rem;
  }
}
@media (min-width: 900px) {
  .twocol.largegap {
    gap: 7.5rem;
  }
}

.newslist {
  display: grid;
  gap: 1.5rem;
}
@media (min-width: 600px) {
  .newslist {
    grid-template-columns: 1fr 1fr;
  }
}
@media (min-width: 900px) {
  .newslist {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
.newslist .item {
  margin-bottom: 1rem;
}
.newslist .item:hover {
  text-decoration: none;
}
.newslist .item img {
  border-radius: 6px;
}
.newslist .item .txt {
  padding-top: 1.5rem;
}
.newslist .item .txt h3 {
  font-size: 1.375rem;
  line-height: 1.625rem;
  margin-bottom: 0.5rem;
  color: #0067B1;
}
.newslist .item .txt p {
  color: #1A1A18;
  font-size: 1rem;
  margin-bottom: 1rem;
}
.newslist .item img {
  max-width: 100%;
}

.newsdetail img, .newsdetail video {
  max-width: 100%;
  margin-bottom: 0.5rem;
}
.newsdetail h3 {
  color: #0067B1;
  margin-bottom: 1rem;
}
@media (max-width: 599px) {
  .newsdetail h3 {
    margin-bottom: 0.8rem;
  }
}
@media (min-width: 900px) {
  .newsdetail .doubleimage > div img {
    object-fit: cover;
    height: 100%;
    width: 100%;
    object-fit: cover;
    max-width: none;
  }
  .newsdetail .twocol.doubleimage {
    margin-bottom: 0.5rem;
    gap: 1.5rem;
  }
  .newsdetail .twocol {
    gap: 5rem;
  }
}
.newsdetail > div {
  margin-bottom: 5rem;
}
.newsdetail .gallery {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  flex-wrap: wrap;
  gap: 1rem;
}
.newsdetail .gallery .thumbnail img {
  width: 100%;
}
.newsdetail .quoteimg .twocol {
  align-items: center;
}
.newsdetail .quoteimg .quote {
  color: #0067B1;
  margin-bottom: 0.75rem;
}
.newsdetail .quoteimg .name {
  font-size: 1rem;
  font-size: clamp(1rem, 0.6511627907rem + 0.9302325581vw, 1.25rem);
}

.videoWrapper {
  position: relative;
  padding-bottom: 56.25%; /* 16:9 */
  padding-top: 25px;
  height: 0;
  margin-bottom: 30px;
}

.embedWrapper > * {
  margin-left: auto;
  margin-right: auto;
}

.videoWrapper iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.offer {
  position: relative;
}
.offer h2, .offer h3 {
  color: #0067B1;
  margin-bottom: 0;
}
.offer h2:last-child {
  margin-bottom: 1rem;
}

.slick-prev:before {
  content: url("/img/arrow-left-blue.svg");
}

.slick-next:before {
  content: url("/img/arrow-right-blue.svg");
}

.dark .slick-prev:before {
  content: url("/img/arrow_left.svg");
}
.dark .slick-next:before {
  content: url("/img/arrow_right.svg");
}

.slick-prev {
  position: absolute;
  left: -5%;
  top: 50%;
}

.slick-next {
  position: absolute;
  right: -3.5%;
  top: 50%;
}

.slick-slider {
  position: relative;
}

.slick-prev, .slick-next {
  width: 40px;
  height: 60px;
}

.slick-track {
  display: flex !important;
}

.slick-slide {
  height: inherit !important;
}

.carditem {
  background: #fff;
  margin: 0 0.75rem;
  border-radius: 0px 6px 6px 6px;
  box-shadow: 2px 2px 10px rgba(0, 0, 0, 0.4);
}
.carditem .p {
  margin: 0;
}
.carditem .header {
  padding: 1rem;
  background: #E5007D;
  color: #fff;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: flex-end;
  border-top-right-radius: 6px;
  background-size: cover;
}
.carditem .header .p {
  font-family: "Gomme-Sans", "HelveticaNeueLight", "HelveticaNeue-Light", "Helvetica Neue Light", "HelveticaNeue", "Helvetica Neue", Arial, sans-serif;
  font-style: normal;
  font-weight: 300;
  font-size: 1.625rem;
  font-size: clamp(1.625rem, 0.7529069767rem + 2.3255813953vw, 2.25rem);
  line-height: 2rem;
  line-height: clamp(2rem, 0.6046511628rem + 3.7209302326vw, 3rem);
  margin-bottom: 0 !important;
}
.carditem .header h3 {
  margin-bottom: 0 !important;
}
.carditem .body {
  padding: 1rem;
}
.carditem .body h2 span {
  color: #1A1A18;
  font-size: 0.875rem;
  font-weight: normal;
}
.carditem .body h4 {
  margin-bottom: 1.5rem;
  color: #6F6F6F;
  font-size: 1.125rem;
  font-size: clamp(1.125rem, 0.7761627907rem + 0.9302325581vw, 1.375rem);
  line-height: 1.375rem;
  line-height: clamp(1.375rem, 1.0261627907rem + 0.9302325581vw, 1.625rem);
}
.carditem .body h4 span {
  font-size: 0.875rem;
  line-height: 1.25rem;
  line-height: clamp(1.25rem, 1.0755813953rem + 0.4651162791vw, 1.375rem);
}
@media (max-width: 599px) {
  .carditem .body h4 span {
    font-size: 0.7rem;
  }
}
.carditem .body h4:first-of-type {
  margin-bottom: 0.625rem;
}
.carditem .body .fa-angle-down:before, .carditem .body .fa-angle-up:before {
  margin-right: 0.5rem;
}
.carditem .body ul {
  list-style: none;
  margin-left: 0;
  padding-left: 0;
}
.carditem .body li {
  padding-left: 1em;
  text-indent: -1em;
  color: #1A1A18;
  font-size: 1rem;
  line-height: 1.375rem;
}
.carditem .body li:before {
  content: url("/img/bullet.svg");
  padding-right: 0.5rem;
  vertical-align: text-bottom;
}
.carditem:first-child .header {
  background-image: url(/img/packages/package-1.svg);
}
.carditem:nth-child(2) .header {
  position: relative;
  background-image: url(/img/packages/package-2.svg);
}
.carditem:nth-child(2) .header::after {
  position: absolute;
  content: url("/img/packages/topseller.svg");
  top: 0.5rem;
  right: 0;
}
@media (max-width: 599px) {
  .carditem:nth-child(2) .header::after {
    content: url("/img/packages/topseller_mobile.svg");
  }
}
.carditem:nth-child(3) .header {
  background-image: url(/img/packages/package-3.svg);
}
.carditem:nth-child(4) .header {
  background-image: url(/img/packages/package-4.svg);
}
.carditem:nth-child(5) .header {
  background-image: url(/img/packages/package-5.svg);
}

.parentContainer {
  display: flex;
  position: relative;
  flex-direction: column;
}

.parentContainer > .tabcontent {
  display: block; /* undo "display: none;" */
  visibility: hidden;
  width: 100%;
}

/* Style the tab */
.tab {
  overflow: hidden;
  border: 2px solid #fff;
  background-color: transparent;
  border-radius: 6px;
  display: flex;
  justify-content: space-around;
}

#tab2 {
  position: absolute;
  top: 0;
}

/* Style the buttons that are used to open the tab content */
.tab button {
  background-color: inherit;
  float: left;
  border: none;
  outline: none;
  cursor: pointer;
  padding: 14px 16px;
  transition: 0.3s;
  width: 100%;
  font-family: "Gomme-Sans", "HelveticaNeueLight", "HelveticaNeue-Light", "Helvetica Neue Light", "HelveticaNeue", "Helvetica Neue", Arial, sans-serif;
  font-style: normal;
  font-weight: 700;
  font-size: 1.125rem;
  font-size: clamp(1.125rem, 0.7761627907rem + 0.9302325581vw, 1.375rem);
  line-height: 1.375rem;
  line-height: clamp(1.375rem, 1.0261627907rem + 0.9302325581vw, 1.625rem);
  text-align: center;
  background-color: transparent;
  color: #fff;
}

/* Change background color of buttons on hover */
.tab button:hover {
  background-color: #fff;
  color: #0067B1;
}

/* Create an active/current tablink class */
.tab button.active {
  background-color: #fff;
  color: #0067B1;
}

.tabcontentMobile {
  display: none;
}

/* Style the tab content */
.tabcontent, .tabcontentMobile {
  border-top: none;
  padding-top: 2rem;
}
.tabcontent .twocol.marginBottom, .tabcontentMobile .twocol.marginBottom {
  margin-bottom: 2rem;
}
.tabcontent > h3, .tabcontentMobile > h3 {
  font-family: Facto, "HelveticaNeueLight", "HelveticaNeue-Light", "Helvetica Neue Light", "HelveticaNeue", "Helvetica Neue", Arial, sans-serif;
  font-style: normal;
  font-weight: 400;
  font-size: 0.9375rem;
  font-size: clamp(0.9375rem, 0.5886627907rem + 0.9302325581vw, 1.1875rem);
  line-height: 1.25rem;
  line-height: clamp(1.25rem, 0.4651162791rem + 2.0930232558vw, 1.8125rem);
  color: #FFFFFF;
  margin-bottom: 2rem;
  letter-spacing: 0.8px;
}
@media (max-width: 599px) {
  .tabcontent > h3, .tabcontentMobile > h3 {
    margin-bottom: 1.5rem;
  }
}
.tabcontent ul, .tabcontentMobile ul {
  list-style: none;
  margin-left: 0;
  padding-left: 0;
  margin-bottom: 0;
}
.tabcontent li, .tabcontentMobile li {
  padding-left: 1em;
  text-indent: -1em;
  color: #fff;
  font-size: 1rem;
  line-height: 1.375rem;
  font-family: "Gomme-Sans", "HelveticaNeueLight", "HelveticaNeue-Light", "Helvetica Neue Light", "HelveticaNeue", "Helvetica Neue", Arial, sans-serif;
  margin-bottom: 0.3rem;
}
.tabcontent li:before, .tabcontentMobile li:before {
  content: url(/img/bullet.svg);
  padding-right: 0.5rem;
  vertical-align: text-bottom;
}
.tabcontent strong.bigger, .tabcontentMobile strong.bigger {
  font-size: 22px;
  line-height: 26px;
}
.tabcontent .textAdd, .tabcontentMobile .textAdd {
  font-family: "Gomme-Sans", "HelveticaNeueLight", "HelveticaNeue-Light", "Helvetica Neue Light", "HelveticaNeue", "Helvetica Neue", Arial, sans-serif;
  font-style: normal;
  font-weight: 700;
  font-size: 1rem;
  font-size: clamp(1rem, 0.8255813953rem + 0.4651162791vw, 1.125rem);
  line-height: 1.25rem;
  line-height: clamp(1.25rem, 0.5523255814rem + 1.8604651163vw, 1.75rem);
  color: #FFFFFF;
}
.tabcontent .priceBig, .tabcontentMobile .priceBig {
  font-family: "Gomme-Sans", "HelveticaNeueLight", "HelveticaNeue-Light", "Helvetica Neue Light", "HelveticaNeue", "Helvetica Neue", Arial, sans-serif;
  font-style: normal;
  font-weight: 800;
  font-size: 1.875rem;
  font-size: clamp(1.875rem, 0.3052325581rem + 4.1860465116vw, 3rem);
  line-height: 2.125rem;
  line-height: clamp(2.125rem, 0.5552325581rem + 4.1860465116vw, 3.25rem);
  color: #FFFFFF;
  margin-bottom: 0.5rem;
}
.tabcontent .textSmall, .tabcontentMobile .textSmall {
  font-family: Facto, "HelveticaNeueLight", "HelveticaNeue-Light", "Helvetica Neue Light", "HelveticaNeue", "Helvetica Neue", Arial, sans-serif;
  font-style: normal;
  font-weight: 400;
  font-size: 0.9375rem;
  line-height: 1.25rem;
  letter-spacing: 0.7px;
  color: #FFFFFF;
}
.tabcontent .textSmall strong, .tabcontentMobile .textSmall strong {
  font-weight: 700;
  font-family: "Gomme-Sans", "HelveticaNeueLight", "HelveticaNeue-Light", "Helvetica Neue Light", "HelveticaNeue", "Helvetica Neue", Arial, sans-serif;
  font-size: 0.9375rem;
  line-height: 1.25rem;
}
.tabcontent .tab-content > .active, .tabcontentMobile .tab-content > .active {
  visibility: visible;
}

.tabcontentMobile ul {
  margin-bottom: 1.5rem;
}
.tabcontentMobile .textSmall.marginBottom {
  margin-bottom: 1.5rem;
}

body.impressum header, body.agb header, body.datenschutz header, body.infos header {
  background: rgb(0, 103, 177) !important;
}
body.impressum h1, body.agb h1, body.datenschutz h1, body.infos h1 {
  color: #0067B1;
  margin-bottom: 6rem;
}
body.impressum .button.pink:hover, body.impressum #mobilenav nav.topnav ul li:hover:nth-child(6), #mobilenav nav.topnav ul body.impressum li:hover:nth-child(6), body.impressum .button.pink:focus, body.impressum #mobilenav nav.topnav ul li:focus:nth-child(6), #mobilenav nav.topnav ul body.impressum li:focus:nth-child(6), body.agb .button.pink:hover, body.agb #mobilenav nav.topnav ul li:hover:nth-child(6), #mobilenav nav.topnav ul body.agb li:hover:nth-child(6), body.agb .button.pink:focus, body.agb #mobilenav nav.topnav ul li:focus:nth-child(6), #mobilenav nav.topnav ul body.agb li:focus:nth-child(6), body.datenschutz .button.pink:hover, body.datenschutz #mobilenav nav.topnav ul li:hover:nth-child(6), #mobilenav nav.topnav ul body.datenschutz li:hover:nth-child(6), body.datenschutz .button.pink:focus, body.datenschutz #mobilenav nav.topnav ul li:focus:nth-child(6), #mobilenav nav.topnav ul body.datenschutz li:focus:nth-child(6), body.infos .button.pink:hover, body.infos #mobilenav nav.topnav ul li:hover:nth-child(6), #mobilenav nav.topnav ul body.infos li:hover:nth-child(6), body.infos .button.pink:focus, body.infos #mobilenav nav.topnav ul li:focus:nth-child(6), #mobilenav nav.topnav ul body.infos li:focus:nth-child(6) {
  color: #ffffff;
}
body.impressum .companyAddress a:hover, body.impressum .companyAddress a:focus, body.agb .companyAddress a:hover, body.agb .companyAddress a:focus, body.datenschutz .companyAddress a:hover, body.datenschutz .companyAddress a:focus, body.infos .companyAddress a:hover, body.infos .companyAddress a:focus {
  color: #ffffff;
}
body.impressum, body.datenschutz, body.infos {
  padding-top: 10rem;
}
body.impressum h2, body.datenschutz h2, body.infos h2 {
  margin-bottom: 2rem;
}
body.datenschutz a, body.infos a {
  word-break: break-all;
}

.footerLegals a:hover, .footerLegals a:focus {
  color: #ffffff;
  text-decoration: none;
}

.shakeButton {
  animation: shake 1.2s cubic-bezier(0.36, 0.07, 0.19, 0.97) both;
  transform: translate3d(0, 0, 0);
  perspective: 1000px;
}

@keyframes shake {
  10%, 90% {
    transform: translate3d(-1px, 0, 0);
  }
  20%, 80% {
    transform: translate3d(2px, 0, 0);
  }
  30%, 50%, 70% {
    transform: translate3d(-2px, 0, 0);
  }
  40%, 60% {
    transform: translate3d(2px, 0, 0);
  }
}
@keyframes fadeInScaleAndRotate {
  0% {
    opacity: 0;
    transform: scale(0.5) rotate(-15deg);
  }
  20% {
    opacity: 1;
    transform: scale(1) rotate(-15deg);
  }
  40% {
    transform: rotate(-20deg);
  }
  60% {
    transform: rotate(-10deg);
  }
  80% {
    transform: rotate(-18deg);
  }
  100% {
    transform: rotate(-15deg);
  }
}
.roundBadge {
  border-radius: 50%;
  animation: fadeInScaleAndRotate 3s ease-in-out both;
}

.slick-dots li.slick-active button:before {
  opacity: 0.75;
  color: #ffffff;
}

.slick-track {
  margin-left: 0;
}

/*
img:hover {
	animation: shake 0.5s;
	animation-iteration-count: 5ms;
}

@keyframes shake {
	0% { transform: translate(1px, 1px) rotate(0deg); }
	10% { transform: translate(-1px, -2px) rotate(-1deg); }
	20% { transform: translate(-3px, 0px) rotate(1deg); }
	30% { transform: translate(3px, 2px) rotate(0deg); }
	40% { transform: translate(1px, -1px) rotate(1deg); }
	50% { transform: translate(-1px, 2px) rotate(-1deg); }
	60% { transform: translate(-3px, 1px) rotate(0deg); }
	70% { transform: translate(3px, 1px) rotate(-1deg); }
	80% { transform: translate(-1px, -1px) rotate(1deg); }
	90% { transform: translate(1px, 2px) rotate(0deg); }
	100% { transform: translate(1px, -2px) rotate(-1deg); }
}
*/
.button.trans.white, #mobilenav nav.topnav ul li.trans.white:nth-child(6) {
  cursor: pointer;
}

.marginBottomFaq {
  margin-bottom: 1rem;
}

.faqs .item {
  margin: 0;
  overflow: hidden;
  padding: 0.5rem 0;
  border-bottom: 1px solid #1A1A18;
}
.faqs .item h3 {
  font-size: 22px;
  line-height: 26px;
  font-family: "Gomme-Sans", "HelveticaNeueLight", "HelveticaNeue-Light", "Helvetica Neue Light", "HelveticaNeue", "Helvetica Neue", Arial, sans-serif;
  font-weight: normal;
  margin-bottom: 15px;
  margin-top: 15px;
  position: relative;
  padding-right: 30px;
  cursor: pointer;
}
@media (max-width: 599px) {
  .faqs .item h3 {
    font-size: 18px;
    line-height: 24px;
  }
}
.faqs .item h3::after {
  content: url("/img/down.svg");
  position: absolute;
  right: 10px;
  top: 0;
  font-size: 30px;
}
.faqs .item div.small, .faqs .item body.karriere .jobs div.legal, body.karriere .jobs .faqs .item div.legal {
  display: none;
}
.faqs .item.open h3::after {
  content: url("/img/up.svg");
}
.faqs .item ul li {
  padding: 0.2rem 0;
}

.buttonbox {
  padding: 0.5rem;
}

.dark .faqs .item {
  border-bottom: 1px solid #fff;
}
.dark .faqs .item h3::after {
  content: url("/img/down-white.svg");
}
.dark .faqs .item.open h3::after {
  content: url("/img/up-white.svg");
}

.headerbadge {
  position: absolute;
  right: 0;
}

.downloadBox {
  padding: 2rem 0;
  display: grid;
  border-bottom: 1px solid #0067B1;
}
@media (min-width: 900px) {
  .downloadBox {
    grid-template-columns: 1fr 4fr;
  }
}
.downloadBox .cat {
  font-family: "Gomme-Sans", "HelveticaNeueLight", "HelveticaNeue-Light", "Helvetica Neue Light", "HelveticaNeue", "Helvetica Neue", Arial, sans-serif;
  font-weight: 400;
  font-size: 1.625rem;
  line-height: 2.25rem;
}
@media (max-width: 900px) {
  .downloadBox .cat {
    font-size: 1.25rem;
    margin-bottom: 1.5rem;
  }
}
.downloadBox .downloads {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 2rem;
}
@media (min-width: 600px) {
  .downloadBox .downloads {
    grid-template-columns: repeat(4, 1fr);
  }
}
.downloadBox .downloads > div a {
  color: #1A1A18;
}
.downloadBox .downloads > div a:hover {
  text-decoration: none;
}
.downloadBox .downloads > div a img {
  display: block;
  border: 0.5px solid #6F6F6F;
  margin-bottom: 0.5rem;
}
.downloadBox .downloads .filesize {
  color: #808080;
}
.downloadBox .downloads .icon {
  background: url("/img/download.svg") no-repeat;
  padding-left: 1.5rem;
}
.downloadBox .downloads .title {
  word-break: break-word;
}

section#newsHeader {
  background-color: #0067B1;
  padding-top: 13rem;
}
@media (max-width: 599px) {
  section#newsHeader {
    background-size: cover;
  }
}
@media (min-width: 600px) and (max-width: 899px) {
  section#newsHeader {
    padding-top: 26rem;
    background-size: cover;
  }
}
section#newsHeader.dark {
  color: #fff;
}
section#newsHeader.dark h1, section#newsHeader.dark h2, section#newsHeader.dark h3 {
  color: #fff;
}
@media (min-width: 900px) {
  section#newsHeader .topcol {
    width: calc(50% - 0.75rem);
  }
}

section#glasfasernetzwerk {
  background-color: #0267B2;
}
@media (max-width: 599px) {
  section#glasfasernetzwerk {
    padding-bottom: 23rem;
    background-image: url(/img/glasfaser-netzwerk-mobile.webp);
    background-size: auto 650px;
    background-position: bottom;
  }
}
@media (min-width: 600px) and (max-width: 899px) {
  section#glasfasernetzwerk {
    padding-bottom: 21rem;
    background-image: url(/img/glasfaser-netzwerk-mobile.webp);
    background-size: auto 650px;
    background-position: bottom;
  }
}
@media (min-width: 900px) {
  section#glasfasernetzwerk {
    background-image: url(/img/glasfaser-netzwerk.webp);
    padding-bottom: 8rem;
  }
}

.availabilityBox {
  align-items: center;
}
@media (min-width: 600px) {
  .availabilityBox {
    display: flex;
    justify-content: space-between;
  }
}
@media (min-width: 900px) {
  .availabilityBox {
    font-size: 2.25rem;
    line-height: 2.625rem;
  }
}
@media (max-width: 900px) {
  .availabilityBox .button, .availabilityBox #mobilenav nav.topnav ul li:nth-child(6), #mobilenav nav.topnav ul .availabilityBox li:nth-child(6) {
    font-size: 1rem;
  }
}
.availabilityBox .button, .availabilityBox #mobilenav nav.topnav ul li:nth-child(6), #mobilenav nav.topnav ul .availabilityBox li:nth-child(6) {
  white-space: nowrap;
}

@media (max-width: 599px) {
  #availability .availabilityBox > div:first-child {
    margin-bottom: 2.75rem;
  }
}

.statusBox {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  font-family: "Gomme-Sans", "HelveticaNeueLight", "HelveticaNeue-Light", "Helvetica Neue Light", "HelveticaNeue", "Helvetica Neue", Arial, sans-serif;
  font-style: normal;
  font-weight: 700;
  font-size: 1.625rem;
  line-height: 2rem;
  color: #fff;
}
@media (max-width: 900px) {
  .statusBox {
    display: none;
  }
}
.statusBox > div {
  font-weight: 400;
  border-right: 1px solid #fff;
  text-align: center;
}
.statusBox > div.active {
  font-weight: 700;
  position: relative;
}
.statusBox > div.active::after {
  content: url(/img/status_active.svg);
  position: absolute;
  bottom: -3.3rem;
  left: 50%;
  margin-left: -16px;
}
.statusBox > div:last-child {
  border: none;
}

@media (min-width: 900px) {
  .mobileStatusBox {
    display: none;
  }
}
.mobileStatusBox span {
  font-weight: 400;
}

section#shortfaqs .button, section#shortfaqs #mobilenav nav.topnav ul li:nth-child(6), #mobilenav nav.topnav ul section#shortfaqs li:nth-child(6) {
  margin-top: 2rem;
}
@media (min-width: 900px) {
  section#shortfaqs .button, section#shortfaqs #mobilenav nav.topnav ul li:nth-child(6), #mobilenav nav.topnav ul section#shortfaqs li:nth-child(6) {
    margin-top: 3rem;
  }
}

section#shareArticle {
  padding-top: 3rem;
  padding-bottom: 1.5rem;
}
section#shareArticle .twocol {
  grid-template-columns: 1fr 1fr;
}
@media (max-width: 599px) {
  section#shareArticle .twocol {
    justify-content: start;
    justify-items: start;
    grid-template-columns: 1fr;
  }
}
section#shareArticle .socialShare {
  display: flex;
  justify-content: flex-end;
  gap: 2rem;
}
section#shareArticle .socialShare .socialshareButtons {
  display: flex;
  flex-direction: row;
  gap: 1.5rem;
}
section#shareArticle .socialShare h4 {
  font-weight: 700;
}

.backLink {
  font-size: 1rem;
  font-size: clamp(1rem, 0.6511627907rem + 0.9302325581vw, 1.25rem);
  line-height: 1.375rem;
  line-height: clamp(1.375rem, 0.851744186rem + 1.3953488372vw, 1.75rem);
  text-decoration: none;
  text-align: center;
  letter-spacing: 0.8px;
  color: #6f6f6f;
}

.backLink:hover {
  text-decoration: none;
}

.backLink:before {
  content: url(/img/arrow-left.svg);
  margin-right: 0.5rem;
}

@media (min-width: 600px) and (max-width: 899px) {
  .ueber-uns #header .mobile {
    max-width: 50%;
  }
}

@media (max-width: 599px) {
  section#testimonials {
    padding-bottom: 8rem;
  }
}

#impressum article {
  margin-bottom: 2rem;
}

@media (max-width: 599px) {
  section#fritzbox {
    padding-bottom: 29rem;
    background-image: url(/img/fritzbox-background-mobile.webp);
    background-size: auto 650px;
    background-position: bottom;
  }
}
@media (min-width: 900px) {
  section#fritzbox {
    background-image: url(/img/fritzbox-background.webp);
    padding-bottom: 8rem;
  }
}
@media (min-width: 900px) {
  section#fritzbox article.fritzboxinfo {
    margin-bottom: 6rem;
  }
}
section#fritzbox .items.fritzbox h3 {
  display: flex;
  align-items: center;
  padding-left: 1.5rem;
  color: #fff;
  font-size: 22px;
  line-height: 26px;
  min-height: 5.5rem;
  height: auto;
  margin-bottom: 0;
  padding: 1rem;
  background: rgb(177, 0, 97);
  background: linear-gradient(0deg, rgb(177, 0, 97) 0%, rgb(229, 0, 125) 100%);
  border-top-right-radius: 6px;
  border-top-left-radius: 6px;
}
section#fritzbox .items.fritzbox .list {
  padding: 1.5rem;
}
section#fritzbox .items.fritzbox .list > div {
  border-bottom: 1px solid #f1f1f1;
  display: flex;
  padding: 0.5rem 0;
  justify-content: space-between;
  align-items: center;
}
section#fritzbox .items.fritzbox .list > div img {
  margin-left: 0.75rem;
  display: inline;
}

.redinfobox {
  font-family: "Gomme-Sans", "HelveticaNeueLight", "HelveticaNeue-Light", "Helvetica Neue Light", "HelveticaNeue", "Helvetica Neue", Arial, sans-serif;
  border-radius: 0.375rem;
  background: var(--gradient-pink, linear-gradient(0deg, #B10061 0%, #E5007D 100%));
  padding: 0.75rem 1rem;
  margin: 1rem 0 1.5rem 0;
}
.redinfobox img {
  float: right;
}

body.bbooe header {
  height: 6rem;
  position: fixed;
  width: 100%;
  z-index: 10;
  top: 0;
  transition: background-color 0.3s ease-in-out;
  padding-left: 1.5rem;
  padding-right: 1.5rem;
}
body.bbooe header .mobileoverlayContainer {
  display: none;
  position: absolute;
  left: 0;
  top: auto !important;
  right: 0;
  bottom: auto;
  height: calc(100vh - 80px);
  margin: 0rem;
  padding-top: 6rem;
  z-index: 10;
  background-color: #0267B2;
  padding-left: 1.5rem;
  padding-right: 1.5rem;
  padding-bottom: 7rem;
  width: 100%;
  flex-direction: column;
  justify-content: space-between;
}
body.bbooe header .mobileoverlayContainer .mobileoverlay {
  width: 100%;
  /*
  @include for-tablet{
  	max-width: 70%;
  	margin-left: auto;
  	margin-right: auto;
  }*/
}
body.bbooe header .mobileoverlayContainer .mobileoverlay .button, body.bbooe header .mobileoverlayContainer .mobileoverlay #mobilenav nav.topnav ul li:nth-child(6), #mobilenav nav.topnav ul body.bbooe header .mobileoverlayContainer .mobileoverlay li:nth-child(6) {
  min-width: 250px;
  margin: 0 auto 1rem auto;
}
@media (max-width: 599px) {
  body.bbooe header .mobileoverlayContainer .mobileoverlay .button, body.bbooe header .mobileoverlayContainer .mobileoverlay #mobilenav nav.topnav ul li:nth-child(6), #mobilenav nav.topnav ul body.bbooe header .mobileoverlayContainer .mobileoverlay li:nth-child(6) {
    width: 100%;
    max-width: none;
  }
}
body.bbooe header .mobileoverlayContainer .menuecontainer {
  display: flex;
  flex-direction: column;
}
@media (min-width: 600px) and (max-width: 899px) {
  body.bbooe header .mobileoverlayContainer .menuecontainer {
    align-items: center;
  }
}
body.bbooe header .mobileoverlayContainer .menuecontainer .mobilelink {
  font-family: "Gomme-Sans", "HelveticaNeueLight", "HelveticaNeue-Light", "Helvetica Neue Light", "HelveticaNeue", "Helvetica Neue", Arial, sans-serif;
  font-style: normal;
  text-transform: uppercase;
  font-weight: 700;
  font-size: 26px;
  line-height: 32px;
  color: #FFFFFF;
  margin-bottom: 2rem;
  text-decoration: none;
  letter-spacing: 0.8px;
}
body.bbooe header .mobileoverlayContainer .menuecontainer .linktext {
  font-family: Facto, "HelveticaNeueLight", "HelveticaNeue-Light", "Helvetica Neue Light", "HelveticaNeue", "Helvetica Neue", Arial, sans-serif;
  font-style: normal;
  font-weight: 500;
  font-size: 17px;
  line-height: 23px;
  letter-spacing: 0.8px;
}
body.bbooe header .bottomtext {
  display: flex;
  flex-direction: row;
  justify-content: space-evenly;
}
body.bbooe header .bottomtext a {
  font-family: Facto, "HelveticaNeueLight", "HelveticaNeue-Light", "Helvetica Neue Light", "HelveticaNeue", "Helvetica Neue", Arial, sans-serif;
  font-style: normal;
  font-weight: 400;
  font-size: 16px;
  line-height: 22px;
  color: #FFFFFF;
  text-decoration: none;
}
body.bbooe header article {
  height: 100%;
  max-width: 71.25rem;
  display: flex;
  margin: 0 auto;
  align-items: center;
  justify-content: space-between;
}
body.bbooe header article nav a {
  color: #1A1A18;
  padding-top: 3px;
}
body.bbooe header article #logo {
  font-size: 1.625rem;
  line-height: 1.75rem;
  color: #0067B1;
}
body.bbooe header article #logo a {
  text-decoration: none;
}
body.bbooe header article #logo a .logoText {
  position: relative;
  top: 3px;
}
body.bbooe header article #logo a img {
  max-height: 48px;
  margin-right: 1.25rem;
}
body.bbooe header article #rightnav {
  background: none;
  display: flex;
  align-items: center;
  gap: 1rem;
  position: static;
}
body.bbooe header article #rightnav a {
  display: none;
  white-space: nowrap;
  font-weight: bold;
  flex-direction: row;
  gap: 0.5rem;
  align-content: center;
  align-items: center;
}
@media (min-width: 900px) {
  body.bbooe header article #rightnav a {
    display: flex;
  }
}
body.bbooe header article #rightnav a span.phone {
  letter-spacing: 0.25px;
  display: block;
}

#header.fullblue {
  background-color: #0267B2 !important;
  background-image: unset !important;
}

.wartung #rightnav nav.main ul li.active a {
  color: #fff;
}

.infoAdd {
  margin-bottom: 1rem !important;
}
@media (min-width: 600px) {
  .infoAdd {
    max-width: 50%;
  }
}

.infoBoxPink {
  border-radius: 0.38rem;
  padding: 2rem;
  border-radius: 0.375rem;
  background: var(--Gradient-Pink, linear-gradient(0deg, #B10061 0%, #E5007D 100%));
  margin-bottom: 2rem;
  position: relative;
  overflow: hidden;
  /* Package Shadow */
  box-shadow: 2px 2px 10px 0px rgba(0, 0, 0, 0.4);
}
.infoBoxPink .textInfo {
  font-style: normal;
  font-weight: 400;
  font-size: 1.125rem;
  font-size: clamp(1.125rem, 0.7761627907rem + 0.9302325581vw, 1.375rem);
  line-height: 1.375rem;
  line-height: clamp(1.375rem, 1.0261627907rem + 0.9302325581vw, 1.625rem);
}
.infoBoxPink ul {
  list-style: none;
  padding-left: 1.5em;
  margin-bottom: 0;
}
.infoBoxPink ul li {
  position: relative;
  font-style: normal;
  font-weight: 400;
  font-size: 1.125rem;
  font-size: clamp(1.125rem, 0.7761627907rem + 0.9302325581vw, 1.375rem);
  line-height: 1.375rem;
  line-height: clamp(1.375rem, 1.0261627907rem + 0.9302325581vw, 1.625rem);
}
.infoBoxPink ul li::before {
  content: "";
  position: absolute;
  left: -1.5em;
  top: 0.5em;
  transform: translateY(-50%);
  width: 8px;
  height: 8px;
  background-image: url("data:image/svg+xml,%3Csvg width='8' height='8' viewBox='0 0 8 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect width='8' height='8' fill='white'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: contain;
}
.infoBoxPink ul li:first-child {
  margin-bottom: 1rem;
}

section#header article {
  position: relative;
}
@media (min-width: 600px) {
  section#header .twocol {
    grid-template-columns: 1fr 1fr;
  }
}
@media (min-width: 600px) {
  section#header .twocol.twocol75 {
    grid-template-columns: 0.7fr 0.5fr;
  }
}
@media (min-width: 600px) {
  section#header .twocol.twocol57 {
    grid-template-columns: 0.5fr 0.7fr;
  }
}
@media (min-width: 600px) and (max-width: 899px) {
  section#header .twocol.twocol57 {
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 599px) {
  section#header .twocol.twocol57 {
    grid-template-columns: 1fr;
  }
}
section#header .twocol > div {
  position: static;
}
section#header .teaser {
  color: #fff;
}

@media (max-width: 599px) {
  body.home section#header {
    padding-top: 4rem;
  }
}

@media (min-width: 1200px) {
  body.service .headerbadge {
    top: 20rem;
    right: -10rem;
    bottom: auto;
  }
}
@media (min-width: 900px) {
  body.service .headerbadge {
    top: 20rem;
    right: -3rem;
    bottom: auto;
  }
}
@media (max-width: 900px) {
  body.service .headerbadge {
    top: auto;
    bottom: -4rem;
    right: 0;
  }
}
@media (max-width: 599px) {
  body.service .headerbadge {
    top: 12rem;
    right: -5rem;
    scale: 0.7;
    bottom: auto;
  }
}
body.service section#header {
  background-image: url(/img/hero-service-hotline-mobile.webp);
}
@media (max-width: 599px) {
  body.service section#header {
    background-size: 200% auto;
    height: auto;
  }
}
@media (min-width: 600px) and (max-width: 899px) {
  body.service section#header {
    background-image: url(/img/hero-service-hotline-tablet.webp);
  }
}
@media (min-width: 900px) {
  body.service section#header {
    background-image: url(/img/hero-service-hotline.webp);
  }
}
@media (max-width: 599px) {
  body.service section#header article {
    padding-top: 28rem;
  }
}

body.glasfaser-internet section#header, body.home2 section#header {
  background-image: url(/img/hero-glasfaserinternet-mobile.webp);
}
@media (max-width: 599px) {
  body.glasfaser-internet section#header, body.home2 section#header {
    background-size: 200% auto;
    height: auto;
  }
}
@media (min-width: 600px) and (max-width: 899px) {
  body.glasfaser-internet section#header, body.home2 section#header {
    background-image: url(/img/hero-glasfaserinternet-tablet.webp);
    background-position: 45%;
  }
}
@media (min-width: 900px) {
  body.glasfaser-internet section#header, body.home2 section#header {
    background-image: url(/img/hero-glasfaserinternet.webp);
    background-position: center top;
  }
}
@media (max-width: 599px) {
  body.glasfaser-internet section#header article, body.home2 section#header article {
    justify-content: flex-end;
    padding-top: 28rem;
  }
}
body.glasfaser-internet section#header article .twocol > div:first-child, body.home2 section#header article .twocol > div:first-child {
  padding-right: 3rem;
}
body.glasfaser-internet .headerbadge, body.home2 .headerbadge {
  right: -2rem;
  top: 14rem;
  scale: 1;
}
@media (min-width: 600px) {
  body.glasfaser-internet .headerbadge, body.home2 .headerbadge {
    right: 3rem;
    top: 24rem;
  }
}
@media (min-width: 900px) {
  body.glasfaser-internet .headerbadge, body.home2 .headerbadge {
    right: -2rem;
    top: -2rem;
    scale: 1.2;
  }
}
@media (min-width: 1200px) {
  body.glasfaser-internet .headerbadge, body.home2 .headerbadge {
    right: -5rem;
    scale: 1.2;
  }
}

body.cablevisionen section#header.overview {
  background-image: url(/img/hero-cablevisionen-mobile.webp);
}
@media (max-width: 599px) {
  body.cablevisionen section#header.overview {
    background-size: 200% auto;
    height: auto;
  }
}
@media (min-width: 600px) and (max-width: 899px) {
  body.cablevisionen section#header.overview {
    background-image: url(/img/hero-cablevisionen-tablet.webp);
  }
}
@media (min-width: 900px) {
  body.cablevisionen section#header.overview {
    background-image: url(/img/hero-cablevisionen.webp);
  }
}
@media (max-width: 599px) {
  body.cablevisionen section#header.overview article {
    padding-top: 28rem;
  }
}

body.ueber-uns section#header {
  background-image: url(/img/hero-ueber-uns-mobile.webp);
}
@media (max-width: 599px) {
  body.ueber-uns section#header {
    background-size: 200% auto;
    height: auto;
  }
}
@media (min-width: 600px) and (max-width: 899px) {
  body.ueber-uns section#header {
    background-image: url(/img/hero-ueber-uns-tablet.webp);
  }
}
@media (min-width: 900px) {
  body.ueber-uns section#header {
    background-image: url(/img/hero-ueber-uns.webp);
  }
}
@media (max-width: 599px) {
  body.ueber-uns section#header article {
    padding-top: 28rem;
  }
}

body.kontakt section#header {
  background-image: url(/img/hero-kontakt-mobile.webp);
}
@media (max-width: 599px) {
  body.kontakt section#header {
    background-size: 200% auto;
    height: auto;
  }
}
@media (min-width: 600px) and (max-width: 899px) {
  body.kontakt section#header {
    background-image: url(/img/hero-kontakt-tablet.webp);
  }
}
@media (min-width: 900px) {
  body.kontakt section#header {
    background-image: url(/img/hero-kontakt.webp);
  }
}
@media (max-width: 599px) {
  body.kontakt section#header article {
    padding-top: 28rem;
  }
}
body.kontakt section#header article .p b {
  font-family: "Gomme-Sans", "HelveticaNeueLight", "HelveticaNeue-Light", "Helvetica Neue Light", "HelveticaNeue", "Helvetica Neue", Arial, sans-serif;
}
body.kontakt section#header .button, body.kontakt section#header #mobilenav nav.topnav ul li:nth-child(6), #mobilenav nav.topnav ul body.kontakt section#header li:nth-child(6) {
  margin-bottom: 1.5rem;
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 0.5rem;
}
@media (min-width: 600px) {
  body.kontakt section#header .button, body.kontakt section#header #mobilenav nav.topnav ul li:nth-child(6), #mobilenav nav.topnav ul body.kontakt section#header li:nth-child(6) {
    width: 23rem;
    max-width: none;
  }
}
body.kontakt section#header div.p b {
  font-family: "Gomme-Sans", "HelveticaNeueLight", "HelveticaNeue-Light", "Helvetica Neue Light", "HelveticaNeue", "Helvetica Neue", Arial, sans-serif;
}
body.kontakt section#header .teaser {
  margin-bottom: 4rem;
}

body.karriere section#header {
  background-image: url(/img/hero-karriere-mobile.webp);
}
@media (max-width: 599px) {
  body.karriere section#header {
    background-size: 200% auto;
    height: auto;
  }
}
@media (min-width: 600px) and (max-width: 899px) {
  body.karriere section#header {
    background-image: url(/img/hero-karriere-tablet.webp);
  }
}
@media (min-width: 900px) {
  body.karriere section#header {
    background-image: url(/img/hero-karriere.webp);
  }
}
@media (max-width: 599px) {
  body.karriere section#header article {
    padding-top: 28rem;
  }
}
body.karriere .jobs h4 {
  color: #0067B1;
}
body.karriere .jobs .jobdesc {
  padding-top: 1rem;
}
@media (min-width: 600px) {
  body.karriere .jobs .twocol {
    grid-template-columns: 1fr 1fr;
  }
}

body.projekte section#header {
  background-image: url(/img/hero-projektuebersicht-mobile.webp);
}
@media (max-width: 599px) {
  body.projekte section#header {
    background-size: 200% auto;
    height: auto;
  }
}
@media (min-width: 600px) and (max-width: 899px) {
  body.projekte section#header {
    background-image: url(/img/hero-projektuebersicht-tablet.webp);
  }
}
@media (min-width: 900px) {
  body.projekte section#header {
    background-image: url(/img/hero-projektuebersicht.webp);
  }
}
body.projekte section#header article {
  position: relative;
}
@media (max-width: 599px) {
  body.projekte section#header article {
    padding-top: 28rem;
  }
}
body.projekte section#header.detail {
  padding: 10rem 1.5rem 2rem;
}
@media (max-width: 599px) {
  body.projekte section#header.detail article {
    padding-top: 100vw;
  }
}
body.projekte section#header.detail .twocol > div {
  position: static;
}
body.projekte section#header.detail .headerbadge {
  top: -3rem;
  right: -3rem;
}
@media (max-width: 599px) {
  body.projekte section#header.detail .headerbadge {
    top: 3rem;
    scale: 0.5;
    bottom: 1rem;
  }
}
body.projekte .projects {
  display: grid;
  gap: 1.5rem;
}
@media (min-width: 600px) {
  body.projekte .projects {
    grid-template-columns: 1fr 1fr;
  }
}
@media (min-width: 900px) {
  body.projekte .projects {
    grid-template-columns: 1fr 1fr 1fr;
  }
}

footer {
  border-top: 1px solid #fff;
}
footer article {
  padding: 4rem 1.5rem;
  color: #fff;
}
@media (max-width: 900px) {
  footer article {
    padding-bottom: 5rem;
  }
}
footer article .row1 {
  display: grid;
  gap: 2rem;
  row-gap: 3rem;
}
@media (min-width: 900px) {
  footer article .row1 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
footer article .row1 > div:first-child {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
footer article .row1 > div:first-child img.logo {
  display: block;
}
footer article .row1 > div:first-child a {
  margin-right: 1rem;
}
footer article .row1 > div:first-child a:last-child {
  margin: none;
}
footer article .row1 > div:first-child > div:first-child {
  display: flex;
  justify-content: space-between;
}
footer article .row1 > div:nth-child(3) {
  display: grid;
  justify-content: end;
  grid-template-columns: 1fr 1fr;
}
@media (max-width: 900px) {
  footer article .row1 .copy {
    position: absolute;
    bottom: 2rem;
  }
}
footer article .row2 {
  display: grid;
  grid-template-columns: 1fr 1fr;
}
footer article .row2 > div:nth-child(2) {
  display: flex;
  justify-content: flex-end;
}
footer article .row2 nav {
  display: flex;
  gap: 4rem;
}
footer article nav a {
  display: block;
  color: #fff;
  margin-bottom: 1rem;
}
footer article nav a:hover {
  color: #fff;
}

body.missing section#header {
  text-align: center;
  padding-top: 10rem;
  background-image: url(/img/hero-404-mobile.webp);
}
@media (min-width: 900px) {
  body.missing section#header {
    padding-top: 15rem;
  }
}
body.missing section#header article {
  max-width: 33rem;
}
@media (max-width: 599px) {
  body.missing section#header {
    background-size: 200% auto;
    height: auto;
  }
}
@media (min-width: 600px) and (max-width: 899px) {
  body.missing section#header {
    background-image: url(/img/hero-404.webp);
  }
}
@media (min-width: 900px) {
  body.missing section#header {
    background-image: url(/img/hero-404.webp);
  }
}
body.missing section#header h1 {
  color: #fff;
  margin-bottom: 2rem;
  font-size: 5rem;
}
body.missing section#header .button, body.missing section#header #mobilenav nav.topnav ul li:nth-child(6), #mobilenav nav.topnav ul body.missing section#header li:nth-child(6) {
  margin: 0 auto;
}

/**************************************************************************/
/**************************************************************************/
.genericModal h2 {
  font-family: "Gomme-Sans", "HelveticaNeueLight", "HelveticaNeue-Light", "Helvetica Neue Light", "HelveticaNeue", "Helvetica Neue", Arial, sans-serif;
  font-style: normal;
  font-weight: 800;
  color: #FFFFFF;
  margin-top: 8rem;
}
@media (min-width: 900px) {
  .genericModal h2 {
    margin-top: 0;
  }
}
.genericModal h3 {
  color: #FFFFFF;
  margin-top: 5rem;
}
.genericModal .p {
  color: #FFFFFF;
}
.genericModal #boxError, .genericModal #boxSuccess, .genericModal #boxError2, .genericModal #boxSuccess2 {
  display: none;
}
@media (max-width: 599px) {
  .genericModal #boxError, .genericModal #boxSuccess, .genericModal #boxError2, .genericModal #boxSuccess2 {
    margin-top: 2rem;
  }
}
.genericModal .textheader {
  font-family: Facto, "HelveticaNeueLight", "HelveticaNeue-Light", "Helvetica Neue Light", "HelveticaNeue", "Helvetica Neue", Arial, sans-serif;
  font-style: normal;
  font-weight: 400;
  font-size: 1.1875rem;
  font-size: clamp(1.1875rem, 1.0130813953rem + 0.4651162791vw, 1.3125rem);
  line-height: 1.6875rem;
  line-height: clamp(1.6875rem, 1.3386627907rem + 0.9302325581vw, 1.9375rem);
  color: #FFFFFF;
  letter-spacing: 0.8px;
}
.genericModal .twocol, .genericModal .twoc {
  margin: 4rem 1.5rem;
  margin-bottom: 0;
}
@media (min-width: 900px) {
  .genericModal .twocol, .genericModal .twoc {
    margin: 7.5rem 6rem;
    margin-bottom: 2rem;
  }
}
.genericModal .modal-content {
  background: linear-gradient(287.7deg, rgba(0, 159, 227, 0.7) 21.21%, rgba(0, 159, 227, 0) 75.04%), #0067B1;
}
.genericModal .modal-dialog {
  max-width: 1040px;
}
.genericModal .vertical-alignment-helper {
  pointer-events: none;
}
.genericModal .buttonContainer {
  display: flex;
  gap: 1.5rem;
  flex-wrap: nowrap;
}
@media (max-width: 599px) {
  .genericModal .buttonContainer {
    flex-wrap: wrap;
  }
}
@media (min-width: 600px) and (max-width: 899px) {
  .genericModal .buttonContainer {
    flex-wrap: wrap;
  }
}
.genericModal .modal-header {
  border-bottom: none;
  padding: 0;
}
.genericModal .modal-header .btn-close {
  position: absolute;
  top: 3rem;
  right: 3rem;
  height: 2rem;
  width: 2rem;
  background: url("/img/close.svg");
  background-size: cover;
  opacity: 1;
  z-index: 10;
}
@media (max-width: 599px) {
  .genericModal .modal-header .btn-close {
    top: 1.5rem;
    right: 1.5rem;
  }
}
@media (max-width: 900px) {
  .genericModal .modal-header .btn-close {
    height: 1rem;
    width: 1rem;
  }
}
.genericModal .modalStoerer {
  transform: scale(1, 1) rotate(0.05turn);
  -webkit-filter: drop-shadow(0px 0px 16px rgba(0, 0, 0, 0.5));
  filter: drop-shadow(0px 0px 16px rgba(0, 0, 0, 0.5));
}
.genericModal .iconModalMobile {
  max-width: 150px;
  position: absolute;
  right: 12px;
  top: 100px;
  transform: scale(1, 1) rotate(0.05turn);
}
@media (max-width: 599px) {
  .genericModal .iconModalMobile {
    max-width: 120px;
  }
}
.genericModal .modal-body {
  padding: 0;
}
.genericModal .modal-body article {
  margin: 4rem 1.5rem;
  margin-top: 0;
}
@media (min-width: 900px) {
  .genericModal .modal-body article {
    margin: 7.5rem 6rem;
    margin-top: 0;
  }
}
.genericModal .modal-body article #contact_form .form-control {
  background-color: transparent;
  border: none;
  border-bottom: 1px solid #fff;
  border-radius: 0;
  padding-left: 6px;
  color: #fff;
  font-family: Facto, "HelveticaNeueLight", "HelveticaNeue-Light", "Helvetica Neue Light", "HelveticaNeue", "Helvetica Neue", Arial, sans-serif;
  font-style: normal;
  font-weight: 400;
  font-size: 1.1875rem;
  font-size: clamp(1.1875rem, 1.0130813953rem + 0.4651162791vw, 1.3125rem);
  line-height: 1.6875rem;
  line-height: clamp(1.6875rem, 1.3386627907rem + 0.9302325581vw, 1.9375rem);
  font-size: 21px;
  line-height: 31px;
  margin-bottom: 2rem;
  letter-spacing: 0.8px;
}
.genericModal .modal-body article #contact_form .row.top {
  padding-left: 12px;
  padding-right: 12px;
}
.genericModal .modal-body article #contact_form select {
  background-color: transparent;
  border: none;
  border-bottom: 1px solid #fff;
  border-radius: 0;
  padding-left: 0;
  color: #fff;
  font-family: Facto, "HelveticaNeueLight", "HelveticaNeue-Light", "Helvetica Neue Light", "HelveticaNeue", "Helvetica Neue", Arial, sans-serif;
  font-style: normal;
  font-weight: 400;
  font-size: 1.1875rem;
  font-size: clamp(1.1875rem, 1.0130813953rem + 0.4651162791vw, 1.3125rem);
  line-height: 1.6875rem;
  line-height: clamp(1.6875rem, 1.3386627907rem + 0.9302325581vw, 1.9375rem);
  margin-bottom: 2rem;
  letter-spacing: 0.8px;
}
.genericModal .modal-body article #contact_form select option {
  color: #1A1A18;
}
.genericModal .modal-body article #contact_form label {
  font-family: Facto, "HelveticaNeueLight", "HelveticaNeue-Light", "Helvetica Neue Light", "HelveticaNeue", "Helvetica Neue", Arial, sans-serif;
  font-style: normal;
  font-weight: 400;
  font-size: 20px;
  line-height: 30px;
}
.genericModal .modal-body article #contact_form label[for=gdpr], .genericModal .modal-body article #contact_form label[for=mobilegdpr] {
  opacity: 1;
  font-family: Facto, "HelveticaNeueLight", "HelveticaNeue-Light", "Helvetica Neue Light", "HelveticaNeue", "Helvetica Neue", Arial, sans-serif;
  font-style: normal;
  font-weight: 400;
  margin: 3rem 0;
  margin-bottom: 2rem;
  display: flex;
  align-items: flex-start;
  max-width: 500px;
  font-size: 0.9375rem;
  font-size: clamp(0.9375rem, 0.7630813953rem + 0.4651162791vw, 1.0625rem);
  line-height: 1.25rem;
  line-height: clamp(1.25rem, 0.988372093rem + 0.6976744186vw, 1.4375rem);
  letter-spacing: 0.8px;
}
.genericModal .modal-body article #contact_form label[for=gdpr] input, .genericModal .modal-body article #contact_form label[for=mobilegdpr] input {
  margin: 0;
  z-index: 9;
  width: 1px;
}
.genericModal .modal-body article #contact_form label[for=gdpr] span, .genericModal .modal-body article #contact_form label[for=mobilegdpr] span {
  margin-left: 1.2rem;
  color: #fff;
}
.genericModal .modal-body article #contact_form label[for=gdpr] span .linkPrivacy, .genericModal .modal-body article #contact_form label[for=mobilegdpr] span .linkPrivacy {
  color: white;
  text-decoration: underline;
}
.genericModal .modal-body article #contact_form label[for=gdpr] {
  position: relative;
}
.genericModal .modal-body article #contact_form #contact_phone, .genericModal .modal-body article #contact_form #contact_mail, .genericModal .modal-body article #contact_form #contact_sms {
  margin-right: 0.5rem;
  -webkit-appearance: none;
  -moz-appearance: none;
  -o-appearance: none;
  appearance: none;
}
.genericModal .modal-body article #contact_form .inputradiocontainer {
  position: relative;
}
.genericModal .modal-body article #contact_form .inputradiocontainer input[type=checkbox]:before {
  content: "";
  display: inline-block;
  width: 13px;
  height: 13px;
  background: transparent;
  border: 2px solid #fff;
  border-radius: 3px;
  position: absolute;
  bottom: 5px;
}
.genericModal .modal-body article #contact_form .inputradiocontainer #contact_phone:checked:after {
  content: "";
  display: inline-block;
  width: 5px;
  height: 5px;
  background: #fff;
  border: 2px solid #fff;
  position: absolute;
  border-radius: 1px;
  left: 4px;
  bottom: 9px;
}
.genericModal .modal-body article #contact_form .inputradiocontainer #contact_mail:checked:after {
  content: "";
  display: inline-block;
  width: 5px;
  height: 5px;
  background: #fff;
  border: 2px solid #fff;
  position: absolute;
  border-radius: 1px;
  left: 4px;
  bottom: 9px;
}
.genericModal .modal-body article #contact_form .inputradiocontainer #contact_sms:checked:after {
  content: "";
  display: inline-block;
  width: 5px;
  height: 5px;
  background: #fff;
  border: 2px solid #fff;
  position: absolute;
  border-radius: 1px;
  left: 4px;
  bottom: 9px;
}
.genericModal .modal-body article #contact_form .inputradiocontainer #contact_phone, .genericModal .modal-body article #contact_form .inputradiocontainer #contact_sms, .genericModal .modal-body article #contact_form .inputradiocontainer #contact_mail {
  margin-right: 1rem;
}
.genericModal .modal-body article #contact_form #gdpr {
  position: relative;
  top: 4px;
  margin-right: 0.5rem;
  -moz-appearance: none;
}
.genericModal .modal-body article #contact_form #gdpr:before {
  content: " ";
  display: inline-block;
  width: 13px;
  height: 13px;
  background: #0067B1;
  border: 2px solid #fff;
  border-radius: 3px;
  position: absolute;
  top: 0;
}
.genericModal .modal-body article #contact_form #gdpr:checked:after {
  content: " ";
  display: inline-block;
  width: 5px;
  height: 5px;
  background: #fff;
  border: 2px solid #fff;
  position: absolute;
  border-radius: 1px;
  left: 4px;
  top: 4px;
}
.genericModal .modal-body article #contact_form label[for=contact_phone], .genericModal .modal-body article #contact_form label[for=contact_mail], .genericModal .modal-body article #contact_form label[for=contact_sms] {
  color: #fff;
  font-size: 0.9375rem;
  font-size: clamp(0.9375rem, 0.7630813953rem + 0.4651162791vw, 1.0625rem);
  line-height: 1.25rem;
  line-height: clamp(1.25rem, 0.988372093rem + 0.6976744186vw, 1.4375rem);
  margin-right: 0.75rem;
  position: relative;
  letter-spacing: 0.8px;
}
.genericModal .modal-body article #contact_form .labelText {
  color: #fff;
  font-size: 19px;
  line-height: 29px;
  margin-bottom: 1rem;
  font-size: 1.0625rem;
  font-size: clamp(1.0625rem, 0.8880813953rem + 0.4651162791vw, 1.1875rem);
  line-height: 1.4375rem;
  line-height: clamp(1.4375rem, 0.914244186rem + 1.3953488372vw, 1.8125rem);
  letter-spacing: 0.8px;
}
.genericModal .modal-body article #contact_form select:focus-visible {
  background-color: transparent;
  border: none;
  border-bottom: 1px solid #fff;
  border-radius: 0;
}
.genericModal .modal-body article #contact_form ::placeholder { /* Chrome, Firefox, Opera, Safari 10.1+ */
  color: #fff;
  opacity: 1; /* Firefox */
  font-family: Facto, "HelveticaNeueLight", "HelveticaNeue-Light", "Helvetica Neue Light", "HelveticaNeue", "Helvetica Neue", Arial, sans-serif;
  font-style: normal;
  font-weight: 400;
  font-size: 20px;
  line-height: 30px;
}
.genericModal .modal-body article #contact_form :-ms-input-placeholder { /* Internet Explorer 10-11 */
  color: #fff;
  font-family: Facto, "HelveticaNeueLight", "HelveticaNeue-Light", "Helvetica Neue Light", "HelveticaNeue", "Helvetica Neue", Arial, sans-serif;
  font-style: normal;
  font-weight: 400;
  font-size: 20px;
  line-height: 30px;
}
.genericModal .modal-body article #contact_form ::-ms-input-placeholder { /* Microsoft Edge */
  color: #fff;
  font-family: Facto, "HelveticaNeueLight", "HelveticaNeue-Light", "Helvetica Neue Light", "HelveticaNeue", "Helvetica Neue", Arial, sans-serif;
  font-style: normal;
  font-weight: 400;
  font-size: 20px;
  line-height: 30px;
}

/**************************************************************************/
/**************************************************************************/
#contact_form {
  margin-top: 4rem;
}
#contact_form .form-control {
  background-color: transparent;
  border: none;
  border-bottom: 1px solid #1A1A18;
  border-radius: 0;
  padding-left: 6px;
  color: #1A1A18;
  font-family: Facto, "HelveticaNeueLight", "HelveticaNeue-Light", "Helvetica Neue Light", "HelveticaNeue", "Helvetica Neue", Arial, sans-serif;
  font-style: normal;
  font-weight: 400;
  font-size: 1.1875rem;
  font-size: clamp(1.1875rem, 1.0130813953rem + 0.4651162791vw, 1.3125rem);
  line-height: 1.6875rem;
  line-height: clamp(1.6875rem, 1.3386627907rem + 0.9302325581vw, 1.9375rem);
  font-size: 21px;
  line-height: 31px;
  margin-bottom: 2rem;
  letter-spacing: 0.8px;
}
#contact_form .row.top {
  padding-left: 12px;
  padding-right: 12px;
}
#contact_form select {
  background-color: transparent;
  border: none;
  border-bottom: 1px solid #1A1A18;
  border-radius: 0;
  padding-left: 0;
  color: #1A1A18;
  font-family: Facto, "HelveticaNeueLight", "HelveticaNeue-Light", "Helvetica Neue Light", "HelveticaNeue", "Helvetica Neue", Arial, sans-serif;
  font-style: normal;
  font-weight: 400;
  font-size: 1.1875rem;
  font-size: clamp(1.1875rem, 1.0130813953rem + 0.4651162791vw, 1.3125rem);
  line-height: 1.6875rem;
  line-height: clamp(1.6875rem, 1.3386627907rem + 0.9302325581vw, 1.9375rem);
  margin-bottom: 2rem;
  letter-spacing: 0.8px;
}
#contact_form select option {
  color: #1A1A18;
}
#contact_form label {
  font-family: Facto, "HelveticaNeueLight", "HelveticaNeue-Light", "Helvetica Neue Light", "HelveticaNeue", "Helvetica Neue", Arial, sans-serif;
  font-style: normal;
  font-weight: 400;
  font-size: 20px;
  line-height: 30px;
}
#contact_form label[for=gdpr], #contact_form label[for=mobilegdpr] {
  opacity: 1;
  font-family: Facto, "HelveticaNeueLight", "HelveticaNeue-Light", "Helvetica Neue Light", "HelveticaNeue", "Helvetica Neue", Arial, sans-serif;
  font-style: normal;
  font-weight: 400;
  margin: 3rem 0;
  margin-bottom: 2rem;
  display: flex;
  align-items: flex-start;
  max-width: 500px;
  font-size: 0.9375rem;
  font-size: clamp(0.9375rem, 0.7630813953rem + 0.4651162791vw, 1.0625rem);
  line-height: 1.25rem;
  line-height: clamp(1.25rem, 0.988372093rem + 0.6976744186vw, 1.4375rem);
  letter-spacing: 0.8px;
}
#contact_form label[for=gdpr] input, #contact_form label[for=mobilegdpr] input {
  width: fit-content;
  margin: 0;
  z-index: 10;
  width: 1px;
  -webkit-appearance: none;
}
#contact_form label[for=gdpr] span, #contact_form label[for=mobilegdpr] span {
  margin-left: 1.2rem;
  color: #1A1A18;
}
#contact_form label[for=gdpr] {
  position: relative;
}
#contact_form #contact_phone, #contact_form #contact_mail, #contact_form #contact_sms {
  margin-right: 0.5rem;
  -webkit-appearance: none;
  -moz-appearance: none;
  -o-appearance: none;
  appearance: none;
}
#contact_form .inputradiocontainer {
  position: relative;
}
#contact_form .inputradiocontainer input[type=checkbox]:before {
  content: "";
  display: inline-block;
  width: 1rem;
  height: 1rem;
  background: transparent;
  border: 1px solid #1A1A18;
  border-radius: 3px;
  border-radius: 3px;
  position: absolute;
  bottom: 5px;
}
#contact_form .inputradiocontainer #contact_phone:checked:after {
  content: "";
  display: inline-block;
  width: 0.5rem;
  height: 0.5rem;
  background: #1A1A18;
  border: 2px solid #1A1A18;
  border: 2px solid #1A1A18;
  position: absolute;
  border-radius: 1px;
  left: 4px;
  bottom: 9px;
}
#contact_form .inputradiocontainer #contact_mail:checked:after {
  content: "";
  display: inline-block;
  width: 0.5rem;
  height: 0.5rem;
  background: #1A1A18;
  border: 2px solid #1A1A18;
  position: absolute;
  border-radius: 1px;
  left: 4px;
  bottom: 9px;
}
#contact_form .inputradiocontainer #contact_sms:checked:after {
  content: "";
  display: inline-block;
  width: 0.5rem;
  height: 0.5rem;
  background: #1A1A18;
  border: 2px solid #1A1A18;
  position: absolute;
  border-radius: 1px;
  left: 4px;
  bottom: 9px;
}
#contact_form .inputradiocontainer #contact_phone, #contact_form .inputradiocontainer #contact_sms, #contact_form .inputradiocontainer #contact_mail {
  margin-right: 1.3rem;
}
#contact_form #gdpr:before {
  content: "";
  display: inline-block;
  width: 1rem;
  height: 1rem;
  border: 1px solid #1A1A18;
  border-radius: 3px;
  position: absolute;
  top: 4px;
}
#contact_form #gdpr:checked:after {
  content: "";
  display: inline-block;
  width: 0.5rem;
  height: 0.5rem;
  background: #1A1A18;
  border: 1px solid #1A1A18;
  position: absolute;
  border-radius: 1px;
  left: 4px;
  top: 8px;
}
#contact_form label[for=contact_phone], #contact_form label[for=contact_mail], #contact_form label[for=contact_sms] {
  color: #1A1A18;
  font-size: 0.9375rem;
  font-size: clamp(0.9375rem, 0.7630813953rem + 0.4651162791vw, 1.0625rem);
  line-height: 1.25rem;
  line-height: clamp(1.25rem, 0.988372093rem + 0.6976744186vw, 1.4375rem);
  margin-right: 0.75rem;
  position: relative;
  letter-spacing: 0.8px;
}
#contact_form .labelText {
  color: #1A1A18;
  font-size: 19px;
  line-height: 29px;
  margin-bottom: 1rem;
  font-size: 1.0625rem;
  font-size: clamp(1.0625rem, 0.8880813953rem + 0.4651162791vw, 1.1875rem);
  line-height: 1.4375rem;
  line-height: clamp(1.4375rem, 0.914244186rem + 1.3953488372vw, 1.8125rem);
  letter-spacing: 0.8px;
}
#contact_form select:focus-visible {
  background-color: transparent;
  border: none;
  border-bottom: 1px solid #1A1A18;
  border-radius: 0;
}
#contact_form ::placeholder { /* Chrome, Firefox, Opera, Safari 10.1+ */
  color: #1A1A18;
  opacity: 1; /* Firefox */
  font-family: Facto, "HelveticaNeueLight", "HelveticaNeue-Light", "Helvetica Neue Light", "HelveticaNeue", "Helvetica Neue", Arial, sans-serif;
  font-style: normal;
  font-weight: 400;
  font-size: 20px;
  line-height: 30px;
}
#contact_form :-ms-input-placeholder { /* Internet Explorer 10-11 */
  color: #1A1A18;
  font-family: Facto, "HelveticaNeueLight", "HelveticaNeue-Light", "Helvetica Neue Light", "HelveticaNeue", "Helvetica Neue", Arial, sans-serif;
  font-style: normal;
  font-weight: 400;
  font-size: 20px;
  line-height: 30px;
}
#contact_form ::-ms-input-placeholder { /* Microsoft Edge */
  color: #1A1A18;
  font-family: Facto, "HelveticaNeueLight", "HelveticaNeue-Light", "Helvetica Neue Light", "HelveticaNeue", "Helvetica Neue", Arial, sans-serif;
  font-style: normal;
  font-weight: 400;
  font-size: 20px;
  line-height: 30px;
}

#boxError, #boxSuccess, #boxError2, #boxSuccess2 {
  display: none;
  margin-top: 5rem;
}
@media (max-width: 599px) {
  #boxError, #boxSuccess, #boxError2, #boxSuccess2 {
    margin-top: 2rem;
  }
}

/*# sourceMappingURL=screen.css.map */
