:root {
    --tp-body-font-family: 'Urbanist';
    --tp-body-font-size: 20px;
    --tp-body-font-weight: 100;
    --tp-body-line-height: 1.5;

    --breakpoint-sm: 576px;
    --breakpoint-md: 768px;
    --breakpoint-lg: 992px;
    --breakpoint-xl: 1200px;
    --breakpoint-xxl: 1400px;

    --bs-blue: #102D69;
    --bs-logo-blue: #182133;
    --bs-black: #000;
    --bs-dark-grey: #111;
    --bs-grey: #373736;
    --bs-white: #fff;
}

::selection { 
    color: var(--bs-black);
    background: var(--bs-grey);
  }
::-moz-selection { 
    color: var(--bs-black);
    background: var(--bs-grey);
  }
body, .sp-preloader {
  background-color: #182133;
  color: #fff;
}
body {
    font-family: var(--tp-body-font-family);
    font-size: var(--tp-body-font-size);
    font-weight: var(--tp-body-font-weight);
    line-height: var(--tp-body-line-height);
}
p {
  font-size: var(--tp-body-font-size);
}
p strong {
  font-size: 20px;
}

h1 {
    font-family: var(--tp-body-font-family);
    font-size: 80px;
    font-weight: 100;
    line-height: 1.5;
}

h2 {
    font-family: var(--tp-body-font-family);
    font-size: 55px;
    font-weight: 100;
    line-height: 1.5;
}

h3 {
    font-family: var(--tp-body-font-family);
    font-size: 50px;
    font-weight: 100;
    line-height: 1.5;
}

h4 {
    font-family: var(--tp-body-font-family);
    font-size: 40px;
    font-weight: 100;
    line-height: 1.5;
}

h5 {
    font-family: var(--tp-body-font-family);
    font-size: 30px;
    font-weight: 400;
    line-height: 1.5;
}

h6 {
    font-family: var(--tp-body-font-family);
    font-size: 20px;
    font-weight: 400;
    line-height: 1.5;
}

.button-showtext .show-text {
  opacity: 0;
  margin: 30px 0 0 0;
}

/* cookie tabelle */
.cf2OTb {
  color: #fff !important;
  }
#sp-footer a:hover, #sp-footer a:active, #sp-footer a:focus, #sp-bottom a:hover, #sp-bottom a:active, #sp-bottom a:focus {
  color: #fff;
}
.sp-module ul > li > a:hover {
  color: #9d9d9d;
}
.fontBigger {
  font-size: 30px !important;
}
.center {
  text-align:center;
}
.uppercase {
  text-transform: uppercase;
}
.color-logo-blue {
  color: var(--bs-blue);
}
#sp-bottom .bg-light,
#sp-bottom .bg-light a {
  color: var(--bs-grey);
}
/* button */
.sppb-btn-custom {
background-color: transparent;
  border-color: #FFFFFF;
  color: #FFFFFF;
padding: 15px 65px 15px 65px;
box-shadow: 0 0 0 0 #FFFFFF;
text-transform: uppercase;
}

.sppb-btn-custom:hover {
  background-color: #102d69;
  border-color: #102d69;
  color: #FFFFFF;
}

/* language switcher */
.lang-active a {
  color: #9D9D9D !important;
}
div.mod-languages a {
  padding: .5rem;
  text-decoration: none;
  display: inline-block;
  font-weight: 700;
}
.sp-module-content .mod-languages ul.lang-inline {
  margin: 0;
  padding: 0;
  height: 85px;
  line-height: 85px;
}
.sp-module-content .mod-languages ul.lang-inline li {
  border: none;
  display: inline-block;
  margin: 0;
}
.sp-module ul > li > a {
  color: #373736;
}
div.mod-languages ul li.lang-active {
  background-color: #82828200 !important;
  padding: 0px;
  border-radius: 3px;
  color: #102D69 !important;
}
div.mod-languages ul.lang-inline li::before {
content: "";
  display: inline-block;
  height: 14px;
  width: 1px;
  background-color: #000;
  vertical-align: middle;
  transform: rotate(10deg);
  margin: 0 5px 0 5px;
}
div.mod-languages ul.lang-inline li:first-child::before {
content: none;
  display: inline-block;
  height: 14px;
  width: 1px;
  background-color: #000;
  vertical-align: middle;
  transform: rotate(10deg);
}

/* ---------------------------------------- scrollbar styling ---------------------------------------- */
/* scrollbar styling */
html,body {
  --sb-track-color:#111;
  --sb-thumb-color: #EEE;
  --sb-size: 8px;

  scrollbar-color: var(--sb-thumb-color) 
                   var(--sb-track-color);
  scrollbar-width: inherit;
}

body::-webkit-scrollbar {
  width: var(--sb-size) 
}

body::-webkit-scrollbar-track {
  background: var(--sb-track-color);
  border-radius: 8px;
}

body::-webkit-scrollbar-thumb {
  background: var(--sb-thumb-color);
  border-radius: 8px;
  
  }

/* ---------------------------------------- HEADER ---------------------------------------- */
header .container-inner {
  background-color: #eee;
  border-radius: 10px 10px 12px 12px;
  padding: 0px 15px;
}
#sp-logo div {
  justify-content: center !important;
}
#sp-header {
  padding: 0px 50px;
}
/* ---------------------------------------- LOGO ---------------------------------------- */
.logo-image-phone {
  height: 50px !important;
}
/* ---------------------------------------- MENU ---------------------------------------- */

.sp-megamenu-parent>li:last-child>a {
    padding: 0px 15px 0px 15px !important;
}
.burger-icon {
  width: 30px;
  cursor: pointer;
}
/* ---------------------------------------- BODY ---------------------------------------- */
.align-items-bottom {
  -ms-flex-align: flex-end !important;
  align-items: flex-end !important;
}

/* ---------------------------------------- BOTTOM ---------------------------------------- */
#sp-bottom {
  font-size: unset;
  line-height: unset;
  padding: 0px;
}
#sp-bottom .container {
  
}
#sp-footer, #sp-bottom {
  background: #182133 !important;
  color: #eeeeee;
}
#sp-footer p, 
#sp-bottom p {
  font-size: var(--tp-body-font-size);
}
/* ---------------------------------------- FOOTER ---------------------------------------- */
#sp-footer {
    font-size: 14px;
    padding: 0;
    background: #182133 !important;
}
#sp-footer .container-inner {
  padding: 30px 0;
  border-top: 0px solid rgba(255, 255, 255, 0.1);
}

/* ---------------------------------------- LARGE DESKTOPS ---------------------------------------- */
@media (min-width: 1399.98px) {
  
}

/* ---------------------------------------- DESKTOPS ---------------------------------------- */
@media only screen and (max-width: 1199.98px) {
  body {
    font-size: 16px;
  }
  h1 {
    font-size: 70px;
  }
  h4 {
    font-size: 40px;
  }
  h5 {
    font-size: 25px;
  }
}

/* ---------------------------------------- TABLETS ---------------------------------------- */
@media only screen and (max-width: 991.98px) {
  h1 {
    font-size: 60px;
  }
  h2 {
    font-size: 55px;
  }
  h4 {
    font-size: 35px;
  }
  h5 {
    font-size: 25px;
  }

  #sp-header .logo {
    height: 50px;
  }
  .logo-image-phone {
  height: 40px !important;
}
  .sp-module-content .mod-languages ul.lang-inline {
  margin: 0;
  padding: 0;
  height: 50px;
  line-height: 50px;
}
  #sp-footer, #sp-footer2 {
    text-align: center !important;
  }
}

/* ---------------------------------------- LANDSCAPE PHONE ---------------------------------------- */
@media only screen and (max-width: 767.98px) {
  body {
    font-size: 14px;
  }
  h1 {
    font-size: 50px;
  }
  h2 {
    font-size: 50px;
  }
  h4 {
    font-size: 30px;
  }
  h5 {
    font-size: 25px;
  }
    p {
  font-size: 20px;
}
}

/* ---------------------------------------- PORTRAIT PHONE ---------------------------------------- */
@media only screen and (max-width: 575.98px) {
  h1 {
    font-size: 40px;
  }
  h2 {
    font-size: 40px;
  }
  h4 {
    font-size: 25px;
  }
  h5 {
    font-size: 25px;
  }
  div.mod-languages ul.lang-inline li::before {
    margin: 0 3px;
  }
  #sp-header {
  padding: 0px 15px;
}
    #sp-header {
    height: 50px;
  }
}