/* --------------------- 
bootstrap variables
--------------------- */

@font-face {
    font-family: "Exo 2";
    font-weight: 400;
    font-style: normal;
    font-display: swap;
    src: url("../fonts/exo_2-regular.woff2") format("woff2"), url("../fonts/exo_2-regular.woff") format("woff");
  }
  @font-face {
    font-family: "Exo 2";
    font-weight: 700;
    font-style: normal;
    font-display: swap;
    src: url("../fonts/exo_2-700.woff2") format("woff2"), url("../fonts/exo_2-700.woff") format("woff");
  }
  @font-face {
    font-family: "Source Sans Pro";
    font-weight: 900;
    font-style: normal;
    font-display: swap;
    src: url("../fonts/Source_Sans_Pro-900.woff2") format("woff2"), url("../fonts/Source_Sans_Pro-900.woff") format("woff");
  }
  @font-face {
    font-family: "Source Sans Pro";
    font-weight: 700;
    font-style: normal;
    font-display: swap;
    src: url("../fonts/Source_Sans_Pro-700.woff2") format("woff2"), url("../fonts/Source_Sans_Pro-700.woff") format("woff");
  }
  @font-face {
    font-family: "Source Sans Pro";
    font-weight: 400;
    font-style: normal;
    font-display: swap;
    src: url("../fonts/Source_Sans_Pro-regular.woff2") format("woff2"), url("../fonts/Source_Sans_Pro-regular.woff") format("woff");
  }
  @font-face {
    font-family: "Source Sans Pro";
    font-weight: 100;
    font-style: normal;
    font-display: swap;
    src: url("../fonts/Source_Sans_Pro-regular.woff2") format("woff2"), url("../fonts/Source_Sans_Pro-regular.woff") format("woff");
  }
  @font-face {
    font-family: "Source Sans Pro";
    font-weight: 600;
    font-style: normal;
    font-display: swap;
    src: url("../fonts/Source_Sans_Pro-600.woff2") format("woff2"), url("../fonts/Source_Sans_Pro-600.woff") format("woff");
  }




:root {
  /*custom colors*/
  --brand: #144580;
  --brandHighlight: #0785F2;
  --primary: #144580;
  --secondary: #082b59;
  --tertiary: #07244C;
  --white: #ffffff;
  --black: #323232;
  --neutral: #808080;
  --light: #f1f2f3;
  --dark: #0f0f0f;
  --bs-dropdown-link-color: #323232;
  --bs-dropdown-link-hover-color: #323232;
  /* boostrap colors */
  --bs-blue: #0d6efd;
  --bs-indigo: #6610f2;
  --bs-purple: #6f42c1;
  --bs-pink: #d63384;
  --bs-red: #dc3545;
  --bs-orange: #fd7e14;
  --bs-yellow: #144580;
  --bs-green: #198754;
  --bs-teal: #20c997;
  --bs-cyan: #0dcaf0;
  --bs-white: #ffffff;
  --bs-gray: #d2d2d2;
  --bs-gray-dark: #939393;
  /* theme colors */
  --bs-primary: #144580;
  --bs-secondary: #082b59;
  --bs-success: #198754;
  --bs-info: #0dcaf0;
  --bs-warning: #ffc107;
  --bs-danger: #dc3545;
  --bs-light: #D6D7DA;
  --bs-dark: #0f0f0f;
  /* grays*/
  --bs-gray-100: white;
  --bs-gray-200: #e3e3e3;
  --bs-gray-300: #dfdfdf;
  --bs-gray-400: lightgray;
  --bs-gray-500: #c6c6c6;
  --bs-gray-600: #b9b9b9;
  --bs-gray-700: #acacac;
  --bs-gray-800: #939393;
  --bs-gray-900: #212529;
  --bs-font-sans-serif: "Source Sans Pro,sans-serif";
  --bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  --bs-border-radius: 0;
  --bs-navbar-toggler-font-size: 24px;
}

.uf-border {
  border-radius: 20px 0;
  overflow: hidden;
}

a {
	color: #3890c6;
  cursor: pointer;
  text-decoration: none;
}

a:hover {
    color: #e9edf0;
}


.manufacturer-gradient {
    background-image: linear-gradient(to right, #e0232c 0%, #8d080d 51%, #e0232c 100%);
    color: #ffffff;
}

.manufacturer-btn-primary {
    background-size: 200% auto;
    color: #ffffff !important;
    background-image: linear-gradient(to right, #e0232c 0%, #8d080d 51%, #e0232c 100%);
    transition: 0.2s all ease-in;
}

.manufacturer-btn-primary:hover {
    background-position: right center;
    color: #ffffff;
}

/* --------------------- 
always footer on bottom of site
--------------------- */
body {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
  background-color: #fff;
  color: #7c8288;
  font-family: Source Sans Pro, sans-serif;
  font-size: 1rem;
  font-style: normal;
  font-weight: 400;
  line-height: 1.56;
}
body footer {
  margin-top: 15px;
}

/* --------------------- 
image sizing
--------------------- */
.image-wrapper img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.btn {
  padding: 12px 35px;
  border-radius: 0;
  text-transform: uppercase;
  text-align: center;
  font-weight: 400;
}

.uf-btn-outline,
.btn-outline {
  border: 2px solid;
  transition: all 0.4s;
}

.btn-primary {
  --bs-btn-color: var(--white);
  --bs-btn-bg: var(--primary);
  --bs-btn-border-color: none;
  --bs-btn-hover-color: var(--white);
  --bs-btn-hover-bg: var(--primary);
  --bs-btn-hover-border-color: none;
  --bs-btn-active-color: var(--white);
  --bs-btn-active-bg: var(--primary);
  --bs-btn-active-border-color: none;
  --bs-btn-disabled-color: var(--white);
  --bs-btn-disabled-bg: var(--primary);
  --bs-btn-disabled-border-color: var(--primary);
  color: var(--white) !important;
}

.btn-primary a{
  color: var(--white) !important;
}

.btn-primary:hover {
    box-shadow: inset 0 0 0 100px rgba(0, 0, 0, .2);
    color: #fff;
    opacity: 1;
}

.btn-secondary {
  --bs-btn-color: var(--dark);
  --bs-btn-bg: var(--bs-gray);
  --bs-btn-border-color: var(--secondary);
  --bs-btn-hover-color: var(--white);
  --bs-btn-hover-bg: var(--black);
  --bs-btn-hover-border-color: var(--primary);
  --bs-btn-focus-shadow-rgb: 130, 138, 145;
  --bs-btn-active-color: var(--white);
  --bs-btn-active-bg: var(--dark);
  --bs-btn-active-border-color: var(--primary);
  --bs-btn-active-shadow: none;
  --bs-btn-disabled-color: var(--white);
  --bs-btn-disabled-bg: #355785;
  --bs-btn-disabled-border-color: var(--secondary);
  --bs-btn-border-width: 2px;
}

/* --------------------- 
custom buttons
--------------------- */
.icon-btn {
  display: flex;
  justify-content: center;
  gap: 0.5rem;
}
.icon-btn:not(.btn) {
  --btn-color: var(--dark);
  color: var(--btn-color);
}
.icon-btn:not(.btn) svg * {
  fill: var(--btn-color);
}
.icon-btn:not(.btn):hover {
  --btn-color: var(--primary);
}

h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
  font-weight: 400;
}

.subtitle {
  color: #acacac;
  text-transform: uppercase;
}

.heading-large {
  font-size: 2.8rem;
  font-weight: 900;
}

.heading-xlarge {
  font-size: 4.2rem;
  font-weight: 900;
  margin-bottom: 1.4rem;
}

.header-bar {
    padding: 1rem 0;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

header .header-top-bar {
    background: var(--black);
    padding-top:5px;
    padding-bottom:5px;
}

header .content-wrapper {
    display: flex;
    color: var(--white);
    padding: 5px 0;
    font-size: 0.85rem;
    letter-spacing: 0.025em;
}

header .content-wrapper .contact-info, header .content-wrapper .contact-info a{
    color: var(--white);
    font-weight: 100;
    font-size: 0.85rem;
}
header .content-wrapper .contact-info a:hover{
    color: var(--primary);
}
 header .content-wrapper .contact-info i{
    font-size: 1.2rem;
}

header .header-topline{
    background-color: var(--white);
}


@media (min-width: 992px) {
  .teaser-area {
    min-height: calc(300px + 1rem);
  }
}

/* --------------------- 
limiting the container-fluid width 
to ensure ultra-wide screen support
--------------------- */
@media (min-width: 1800px) {
  .container-fluid {
    width: 1780px;
  }
}

/* --------------------- 
custom width container for a more uneven, line breaking layout
use wisely...
--------------------- */
@media (min-width: 1300px) {
  .container.custom-container {
    max-width: 100%;
    margin: unset;
  }
  .teaser-area {
    min-height: calc(400px + 1rem);
  }
}
@media (min-width: 1600px) {
  .container.custom-container {
    max-width: 1400px;
  }
  .teaser-area {
    min-height: calc(500px + 1rem);
  }
}

/* --------------------- 
used on bootstrap rows to stretch the columns 
and is inner wrappers to fit the column biggest in height
--------------------- */
.row-eq-height {
  align-items: stretch;
}
.row-eq-height > div > div {
  height: 100%;
}

/* --------------------- 
    Go to top Button
--------------------- */
.to-top {
  background-color: #144580;
  color: #D6D7DA;
  border-radius: 0.15rem;
  font-size: 0.875rem;
  display: flex;
  justify-content: center;
  align-items: center;
  position: fixed;
  cursor: pointer;
  z-index: 99;
  width: 2.1em;
  height: 2.1em;
  line-height: 2.1;
  bottom: 3%;
  right: 30px;
  transition: 0.4s;
  transform: translateY(15%);
}
.to-top:hover {
  transform: translateY(-3px);
}

.uf-box {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 1rem;
  background-color: #144580;
  border-radius: 1rem 0;
  color: #ffffff;
  padding: 3rem;
}

.breadcrumb-area {
  display: flex;
  align-items: flex-end;
  background: var(--white);
  transition: 0.5s all;
  color: var(--black);
  padding-top: 1rem;
  min-height: 80px;
  border-bottom: 1px solid var(--light);
}
@media (max-width: 768px) {
  .breadcrumb-area {
    padding-top: 1.5rem;
  }
}
@media (max-width: 991px) {
  .breadcrumb-area {
    padding-top: 1.5rem;
  }
  .teaser-area {
    min-height: calc(200px + 1rem);
  }
}
@media (min-width: 992px) {
  .breadcrumb-area {
    min-height: calc(100px + 1rem);
  }
}
.breadcrumb-area a {
  color: var(--black);
}
.breadcrumb-area .divider {
  color: #868991;
}
.breadcrumb-area.gradient {
  background: linear-gradient(330deg, #07244C 50%, #144580 100%);
}
@media (max-width: 768px) {
  .breadcrumb-area h1 {
    font-size: calc(1.375rem + 0.5vw);
  }
}

/* --------------------- 
faded background overlay
**NOTE: overlay is mostly overlapping child elements => set them to a higher z-index to show them **
--------------------- */
.bg-overlay {
  --overlay-opacity: 1;
  --color: var(--white);
  --bg-color-1: rgba(0, 0, 0, 1);
  --bg-color-2: rgba(255, 255, 255, 0);
  position: relative;
  overflow: hidden;
}
.bg-overlay > * {
  color: var(--color);
}
.bg-overlay:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgb(0, 0, 0);
  background: linear-gradient(0deg, var(--bg-color-1) 0%, var(--bg-color-2) 100%);
  opacity: var(--overlay-opacity);
  transition: all 0.5s;
  z-index: 0;
}
.bg-overlay.overlay-hover {
  --overlay-opacity: 0;
}
.bg-overlay.overlay-hover:hover {
  --color: var(--light);
  --overlay-opacity: 1;
}

.container-fluid.image-grid-area {
  padding: 0;
}

.image-grid-wrapper {
  display: grid;
}
.image-grid-wrapper.gap {
  gap: 0.5rem;
}
.image-grid-wrapper .gallery-img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.image-grid-wrapper > * {
  margin: unset;
}

/* --------------------- 
grid with only one line => classic row/column
--------------------- */
.image-grid-wrapper.img-row {
  display: flex;
  flex-wrap: wrap;
}
.image-grid-wrapper.img-row.gap {
  gap: 0.5rem;
}
.image-grid-wrapper.img-row > * {
  width: 25%;
}

.cms-content-area {
  /* --------------------- 
  nice display for lists, as columns with bg-color
  --------------------- */
}
.cms-content-area h1,
.cms-content-area h2,
.cms-content-area h3,
.cms-content-area h4,
.cms-content-area h5,
.cms-content-area h6,
.cms-content-area .h1,
.cms-content-area .h2,
.cms-content-area .h3,
.cms-content-area .h4,
.cms-content-area .h5,
.cms-content-area .h6 {
  margin-top: 2rem;
  margin-bottom: 1.5rem;
}
.cms-content-area strong {
  color: #144580;
}
.cms-content-area .info-columns {
  margin-top: 2rem;
  display: flex;
  flex-wrap: wrap;
  gap: 1.5rem;
}
.cms-content-area .info-columns > div {
  flex: 1 1 20%;
  background-color: lightgray;
  align-self: center;
  min-height: 3rem;
  padding: 1rem;
}

.benefits .benefit-wrapper {
  position: relative;
  padding: 12px;
  margin-top: 12px;
  margin-bottom: 3rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  background-color: #ececec;
}
.benefits .icon-number {
  display: flex;
  justify-content: center;
  align-items: center;
  padding-right: 2px;
  border-radius: 100%;
  background-color: #144580;
  color: #ffffff;
  width: 2rem;
  height: 2rem;
  position: absolute;
  top: -20px;
  left: 44%;
}

/* --------------------- 
component import
--------------------- */
/* --------------------- 
social icons (mostyl in footers)
--------------------- */
.social-wrapper {
  display: flex;
  gap: 1rem;
}
.social-wrapper svg {
  width: 1.5rem;
  height: auto;
}
.social-wrapper svg path {
  fill: #D6D7DA;
}

/* --------------------- 
links not wrapped
--------------------- */
.social-icon svg {
  width: 1.5rem;
  height: auto;
}
.social-icon svg path {
  fill: #D6D7DA;
}
.social-icon:hover svg path {
  fill: #144580;
}

/* --------------------- 

links, badges
--------------------- */
.footer-badges-wrapper {
  display: flex;
  flex-wrap: wrap;
  gap: 0.2rem;
}
.footer-badges-wrapper .cat {
  background-color: #062246;
  color: #D6D7DA;
  font-size: 0.875rem;
  padding: 4px;
}
.footer-badges-wrapper .cat:hover {
  color: #287cec;
}

footer {
  padding-top: 3rem;
  padding-bottom: 1rem;
  color: #333;
  background-color: #fff;
  border-top: 1px solid #144580;
}
footer a {
  color: inherit;
  text-decoration: none;
}
footer a:hover {
  color: var(--primary);
}
footer ul {
  list-style-type: none;
  margin: unset;
  padding: unset;
}

footer h5,
footer .h5 {
  font-weight: 400;
  font-size: 1.22rem;
  color: #7c8288;
}

.footer-content {
  padding-bottom: 2rem;
  font-size: 1.0rem;
  color: #7c8288;
}

.footer-content .footer-logo img {
  width: 220px;
}

@media (max-width: 991px) {
  .footer-content > div {
    margin-bottom: 2rem;
  }
}

footer.copyright{
  color: var(--black);
  background-color: var(--white);
  padding-top: 1rem;
  margin-top: 5px;
}

.copyright {
    display: flex;
    justify-content: space-between;
    font-size: 0.875rem;
    padding-top: 1rem;
    margin-top: 4rem;
   border-top: 1px solid #144580;
}

.copyright .legal-links a {
  margin-right: 0.5rem;
}

.cr-liftfinder a {
  color: #144580;
}

/* --------------------- 
component styling imports
--------------------- */
.navbar .nav-item {
  position: relative;
}
.navbar .nav-item .ul-dropdown-menu {
  list-style: none;
  margin: 0;
  padding: 0.5rem 0;
  background-color: #ffffff;
}
@media (min-width: 992px) {
  .navbar .nav-item .ul-dropdown-menu {
    box-shadow: 0px 10px 13px -7px #212529, 0px 5px 15px -7px rgba(0, 0, 0, 0);
  }
}
@media (max-width: 991px) {
  .navbar .nav-item .ul-dropdown-menu {
    display: none;
  }
  .navbar .nav-item .ul-dropdown-menu.active, .navbar .nav-item .ul-dropdown-menu.hover {
    display: block;
  }
}
@media (min-width: 992px) {
  .navbar .nav-item .ul-dropdown-menu {
    position: absolute;
    left: 0;
    z-index: 99;
    width: 300px;
    top: auto;
    opacity: 0;
    transition: transform 0.3s ease-out;
    transform: translateY(10%);
    visibility: hidden;
  }
  .navbar .nav-item .first-level .fa-chevron-down {
    position: relative;
    top: 0.45rem;
    right: unset;
    font-size: 0.875rem;
  }
  .navbar .nav-item .ul-dropdown-menu .ul-dropdown-menu {
    top: 0;
    opacity: 0;
    left: 200px;
    visibility: hidden;
    transform: translateY(5px);
  }
  .navbar .nav-item .ul-dropdown-menu .dropdown-item {
    white-space: normal;
    text-decoration: none;
    color: #7c8288;
  }
  .navbar .nav-item:hover > .ul-dropdown-menu {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
  }
}

.navbar .container {
  position: relative;
}
.navbar.transparent-nav:not(.fixed-top) {
  color: #ffffff;
}
@media (min-width: 992px) {
  .navbar .top-menu {
    position: absolute;
    right: 1.4rem;
    top: 10%;
    display: flex;
    align-items: baseline;
    gap: 2rem;
    list-style: none;
  }
}
@media (max-width: 991px) {
  .navbar .top-menu {
    display: none;
  }
}
.navbar .top-menu a {
  color: inherit;
}
.navbar .top-menu:not(.offCan) {
  margin-bottom: unset;
}
.navbar .top-menu:not(.offCan) .nav-link.first-level,
.navbar .top-menu:not(.offCan) li {
  font-size: 14px;
  font-weight: normal;
}
.navbar .top-menu:not(.offCan) svg {
  width: 14px;
  height: auto;
}
@media (min-width: 992px) {
  .navbar .offCan {
    display: none;
  }
}
.navbar.fixed-top .top-menu {
  display: none !important;
}

.navbar .container {
  position: relative;
}
.navbar .container .nav-item.lifts-new {
  position: static;
}
@media (min-width: 992px) {
  .navbar .container .mega-menu {
    display: flex;
    flex-wrap: wrap;
  }
}
@media (min-width: 992px) {
  .navbar .container .mega-menu {
    width: calc(100% - 24px) !important;
    padding: 1rem 1.5rem;
    padding-top: 4rem;
    left: 12px;
  }
}
.navbar .container .mega-menu .mega-menu-item {
  /* --------------------- 
  logos
  --------------------- */
}
.navbar .container .mega-menu .mega-menu-item > .dropdown-item:hover {
  text-decoration: underline;
}
.navbar .container .mega-menu .mega-menu-item:hover {
  background-color: transparent;
}
.navbar .container .mega-menu .mega-menu-item .submenu {
  display: none;
}
.navbar .container .mega-menu .mega-menu-item img.nav-item-logo {
  max-height: 40px;
}
@media (min-width: 992px) {
  .navbar .container .mega-menu .mega-menu-item {
    width: calc(25% - 1.5rem);
    margin-bottom: 2rem;
  }
  .navbar .container .mega-menu .mega-menu-item:not(:last-child) {
    margin-right: 1.5rem;
  }
  .navbar .container .mega-menu .mega-menu-item .main-link {
    position: relative;
  }
  .navbar .container .mega-menu .mega-menu-item .main-link img {
    max-height: 2rem;
  }
  .navbar .container .mega-menu .mega-menu-item .main-link a {
    font-weight: 700;
    font-size: 1.05rem;
  }
  .navbar .container .mega-menu .mega-menu-item .submenu {
    display: block;
  }
}
.navbar .container .mega-menu .submenu {
  list-style-type: none;
  position: relative;
  margin-left: 1.5rem;
  padding: unset;
}
.navbar .container .mega-menu .submenu .nav-item {
  padding-top: unset;
  padding-bottom: unset;
}
.navbar .container .mega-menu .submenu::before {
  content: "";
  height: 100%;
  width: 2px;
  background-color: #dfdfdf;
  position: absolute;
  left: 0;
  top: 0;
}

.quick-contact {
  display: none;
  margin-right: 1rem;
}
.quick-contact.sticky {
  background-color: #0785F2;
  padding: 0.5rem 1rem;
  font-size: 0.875rem;
  display: block;
  position: fixed;
  right: -9rem;
  top: 45vh;
  animation: 1s flyIn;
  transition: right 0.5s;
  color: #ffffff;
}
.quick-contact.sticky svg {
  height: auto;
  width: 0.875rem;
  margin-right: 1rem;
}
.quick-contact.sticky:hover {
  right: -1rem;
}

.quick-contact-lifts {
  position: fixed;
  top: 45vh;
  display: flex;
  align-items: center;
  transition: right 0.5s;
}
.quick-contact-lifts.show {
  right: 0 !important;
}
.quick-contact-lifts .contact-body {
  background-color: #144580;
  color: #ffffff;
  padding: 1rem;
}
.quick-contact-lifts .toggle {
  display: flex;
  align-items: center;
  background-color: #144580;
  padding: 0.5rem;
}
.quick-contact-lifts svg * {
  fill: #ffffff;
}

@keyframes flyIn {
  from {
    right: -12rem;
  }
  to {
    right: -9rem;
  }
}
#quick_search {
  --bottom-color: #000;
}
#quick_search .search-input,
#quick_search .input-group-text {
  background-color: transparent;
  border-color: transparent;
  color: var(--bottom-color);
}
#quick_search .input-group {
  border-bottom: 1px solid var(--bottom-color);
  justify-content: space-between;
}
#quick_search svg,
#quick_search svg * {
  fill: var(--bottom-color);
}
#quick_search .search-input::-moz-placeholder {
  color: var(--bottom-color);
}
#quick_search .search-input::placeholder {
  color: var(--bottom-color);
}
#quick_search .search-input:focus-visible {
  outline: none;
}
#quick_search .search-input:focus-visible::-moz-placeholder {
  color: #D6D7DA;
}
#quick_search .search-input:focus-visible::placeholder {
  color: #D6D7DA;
}
#quick_search .input-group-text:hover svg * {
  fill: #07244C;
}
@media (max-width: 992px) {
  #quick_search {
    margin-top: 0.5rem;
  }
}
@media (min-width: 992px) {
  #quick_search {
    --bottom-color: #fff;
  }
}

/* --------------------- 
Logo
--------------------- */
.navbar-brand img {
  width: 250px;
}

.logo-center .logo {
    margin: 0 30px;
    order: 2;
    text-align: center;
}

@media (min-width: 992px) {
  .navbar-brand img {
    height: auto;
    max-width: 250px !important;
  }
}

/* --------------------- 
menu navigation
--------------------- */
.navbar {
  color: #7c8288;
  background: var(--white);
  padding: 0 0 0 0;
  border-top: 1px solid #3890c6;
  border-bottom: 1px solid #3890c6;
}
@media (max-width: 992px) {
  .navbar .nav-item .first-level,
  .navbar .nav-item .ul-dropdown-menu .nav-item {
    border-bottom: 1px solid;
  }
  .navbar .nav-item .first-level {
    border-bottom-color: black;
  }
  .navbar .nav-item .ul-dropdown-menu .nav-item {
    border-bottom-color: #c6c6c6;
  }
}
.navbar .nav-item .inner {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
.navbar .nav-item .nav-link {
    -moz-transition: all 0.4s ease-out;
    -o-transition: all 0.4s ease-out;
    -webkit-transition: all 0.4s ease-out;
    -ms-transition: all 0.4s ease-out;
    transition: all 0.4s ease-out;
}
.navbar .nav-item .nav-link.first-level {
  font-weight: 100;
  color: #7c8288;
}
@media (max-width: 992px) {
  .navbar .nav-item .nav-link.first-level {
    color: var(--black);
  }
}

.navbar .nav-item .nav-link .fa {
  font-size: 0.875rem;
}
.navbar .nav-item:hover {
  color: hsla(0, 0%, 7%, .85);
}
.navbar .nav-item .nav-link.first-level:hover {
  color: #7c8288;
}
.navbar.fixed-top .nav-item .nav-link.first-level:hover {
  color: #7c8288;
}

.navbar .navbar-toggler {
  border: none;
}
.navbar .navbar-toggler svg * {
  stroke: var(--icon-color);
}
.navbar-toggler svg {
  width: 30px;
  height: 30px;
  color: hsla(0, 0%, 40%, .85);
}
.navbar .navbar-toggler:focus {
  box-shadow: none;
  border: none;
}

.navbar .ul-dropdown-menu .nav-item {
  padding: 0.5rem 1rem;
}
.navbar .ul-dropdown-menu .nav-item:hover {
  background-color: var(--light);
}
.navbar.transparent-nav:not(.fixed-top) {
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  z-index: 1030;
  background-color: transparent;
  --icon-color: var(--white);
}
@media (min-width: 992px) {
  .navbar .nav-item {
  padding: 9px 5px 10px 5px;
  height: 100%;
  }
  .navbar-nav {
  display: flex;
  }
  .navbar .nav-item a.first-level {
  border-right: 1px solid #3890c6;
  margin: 0 !important;
  padding-right: 3.5rem !important;
  padding-left: 3.5rem !important;
  }
  .navbar .nav-item a.first-level.first-child {
  padding-left: 0.5rem !important;
  }
  .navbar .nav-item .nav-link.first-level {
    font-size: 1rem;
  }
  .navbar-expand-lg .navbar-nav .nav-link.sec {
    padding-top: 0px;
    padding-bottom: 0px;
    }
  }
  .input-group {
    margin-top:7px;
  }
  .navbar.transparent-nav:not(.fixed-top) .nav-link.first-level {
    color: #ffffff;
  }
  .navbar.transparent-nav:not(.fixed-top) .nav-link.first-level:hover {
    border-color: #D6D7DA;
  }
  .form-control {
    font-size: 0.8rem;
  }
}
@media (min-width: 1200px) {
  .navbar .nav-item .nav-link.first-level {
    font-size: 1.2rem;
  }
  .form-control {
    font-size: 1rem;
  }
}
@media (min-width: 1400px) {
  .navbar .nav-item {
  padding: 9px 5px 10px 5px;
  }
  .input-group {
    margin-top:7px;
  }
  .input-group.header_search {
    width:250px;
  }
  .product-card img {
    max-height: 12.7rem;
    width: auto !important;
    margin-left: auto;
    margin-right: auto;
    display: block;
  }
}
.navbar .nav-item.active .nav-link {
  color: #144580;
  border-bottom: 2px solid #144580;
}
.navbar.transparent-nav:not(.fixed-top) .navbar-brand img {
  border: 2px solid #ffffff;
  border-radius: 10px 0;
}
.navbar.fixed-top {
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
  background-color: var(--white) !important;
  transition: background-color 0.5s ease !important;
}
.navbar.fixed-top .navbar-brand img {
  width: 200px;
}
.navbar.fixed-top .nav-link {
  font-size: 1rem;
}
.navbar.fixed-top .nav-link.first-level {
  color: #7c8288;
}

.navbar .nav-item .manu-link-logo {
    max-width: 6rem;
}

/* --------------------- 
stylings for overview and category cards
--------------------- */
/* --------------------- 
overview cards
background image
onHover: dark overlay, text
--------------------- */
.bg-image-box {
  min-height: 25vh;
  text-align: center;
  align-items: center;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  background-color: #07244C;
}

.content-hover-box {
  position: relative;
}
.content-hover-box .manu-logo img {
  max-height: 5rem;
}
.content-hover-box .hover-content {
  color: #ffffff;
  z-index: 1;
  width: 100%;
  position: absolute;
  left: 0;
  top: 15%;
  transition: all 0.5s;
}
.content-hover-box .hover-content .text-on-hover {
  padding: 1.5rem;
  opacity: 0;
}
.content-hover-box:hover .hover-content {
  top: 35%;
}
.content-hover-box:hover .text-on-hover {
  opacity: 1;
}
.content-hover-box:hover .title-visible {
  background: transparent;
}

/* --------------------- 
cards with image, file-icon, title and link-list
--------------------- */
.category-card {
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}
.category-card .main-link {
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}
.category-card.bg-image-hover {
  min-height: 25vh;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  background-color: transparent;
}
.category-card.bg-image-hover.Cesab {
  background-size: 180%;
}
.category-card ul {
  list-style-type: none;
  padding: unset;
  margin: unset;
}
.category-card ul a:hover {
  text-decoration: underline;
}
.category-card .toggle-btn {
  cursor: pointer;
}
.category-card .toggle-btn svg {
  fill: #ffffff;
  transition: all 0.2s;
  width: 1rem;
  transform: rotate(180deg);
  margin-left: 1rem;
}
.category-card .hover-content {
  height: 50%;
  bottom: 15%;
}
.category-card:hover .hover-content {
  bottom: 0;
  height: 50%;
}

/* --------------------- 
logos
--------------------- */
.manu-logo {
  max-width: 20vw;
}

/* --------------------- 
Manufacturer Section (new lifts)
--------------------- */

.manufacturer-area a {
  color: #333;
}

.manufacturer-gradient a {
    color: #ffffff;
}

.manufacturer-area .overview-wrapper {
    display: block;
    width: 100%;
    height: auto;
}

.manufacturer-area .overview-card {
    padding: 1.5rem;
    height: auto;
    border: 0.09rem solid var(--bs-border-color-translucent);
    min-height: 200px;
}

.manufacturer-area .overview-card img {
    max-height:50px;
    width: auto;
}

/* --------------------- 
back btn
--------------------- */
.back-btn {
  margin-bottom: 2rem;
}
.back-btn a:hover {
  text-decoration: underline;
}

/* --------------------- 
related products
--------------------- */
.related-products-area {
  margin-top: 4rem;
  padding: 3rem 0;
  background-color: #dfdfdf;
}
.related-products-area .heading {
  margin-bottom: 1.5rem;
}
.related-products-area .device-card .product-spec-list {
  background-color: #ececec;
}
.related-products-area .device-card .btn-primary {
  color: #ffffff !important;
}

/* --------------------- 
categories
--------------------- */
.manufacturer-area .category-card.bg-image-box {
  background-size: contain;
  background-color: #ffffff;
}
.manufacturer-area .overlay-card-text {
  --bg-color-1: rgba(0, 0, 0, 1);
  --bg-color-2: rgba(255, 255, 255, 0);
  min-height: 4rem;
  background: rgba(0, 0, 0, 0.8);
  color: #ffffff;
  padding: 1rem 1.5rem;
}
.manufacturer-area .cat-img img {
  max-height: 240px;
}

/* --------------------- 
device list
--------------------- */
.device-list-wrapper {
  margin-bottom: 3rem;
  /* --------------------- 
  product card
  --------------------- */
}
.device-list-wrapper a {
  color: inherit;
}
.device-list-wrapper .image-wrapper {
  display: flex;
  justify-content: center;
  padding: 1rem;
}
.device-list-wrapper .image-wrapper img {
  max-height: 23vh;
  width: auto;
}
.device-list-wrapper .device-card .card-body {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.device-list-wrapper .btn-primary {
  color: #ffffff;
}

/* --------------------- 
files
--------------------- */
.file-wrapper {
  display: flex;
  gap: 0.5rem;
}

/* --------------------- 
product details
--------------------- */
.manufacturer-device-details-area .data-display {
  margin: 1rem 0;
}
.manufacturer-device-details-area .data-display svg {
  width: 1.5rem;
  height: 1.5rem;
}
.manufacturer-device-details-area .data-display svg * {
  fill: #144580;
}

/* --------------------- 
components
--------------------- */
.super-large-container {
  padding-left: unset;
  padding-right: unset;
  padding-top: 8rem;
  overflow: hidden;
  /* --------------------- 
  the div holding all together
  --------------------- */
  /* --------------------- 
  content inside the view width,
  faking its inside a regular container, centered on the screen
  --------------------- */
  /* --------------------- 
  visual effect of the content growing larger than the view width is
  --------------------- */
}
.super-large-container .super-wrapper {
  display: flex;
  gap: 1rem;
}
@media (max-width: 992px) {
  .super-large-container .super-wrapper {
    flex-wrap: wrap;
  }
}
.super-large-container .content {
  margin: 2rem;
}
@media (min-width: 1000px) {
  .super-large-container .content {
    max-width: 35vw;
    margin-left: 6vw;
  }
}
.super-large-container .oversized-content {
  overflow: hidden;
}
@media (min-width: 1000px) {
  .super-large-container .oversized-content {
    max-width: calc(59vw - 2rem);
  }
}

.img-zoom img {
  transition: all 0.7s;
}
.img-zoom:hover img {
  transform: scale(1.1);
}

section {
  padding-top: 2rem;
  padding-bottom: 4rem;
}

/* --------------------- 
Banner
--------------------- */
.banner-section {
  position: relative;
  overflow: hidden;
  border-radius: 0 0 0 10rem;
}
.banner-section .banner-overlay {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background-color: rgba(0, 0, 0, 0.4);
}
.banner-section .bg-image {
  background-size: cover;
  min-height: 60vh;
}
@media (min-width: 1500px) {
  .banner-section .bg-image {
    background-position-y: -295px;
  }
}
.banner-section .content {
  position: absolute;
  color: #ffffff;
  z-index: 1;
  bottom: 20%;
  left: 15%;
  max-width: 500px;
}
.banner-section .content .heading {
  margin-bottom: 2rem;
}
.banner-section .content .subheading {
  font-size: 1.8rem;
}
.banner-section .content .btn {
  margin-top: 1rem;
  color: #ffffff;
}

@media (max-width: 425px) {
  .banner-section .content {
    bottom: 8vh !important;
  }
  .banner-section .content .heading-xlarge {
    font-size: 1.8rem !important;
  }
  .banner-section .content .subheading {
    font-size: 0.8rem;
    max-width: 90% !important;
  }
  .banner-section .bg-image {
    min-height: 48vh !important;
  }
  .banner-section .content {
    left: 30% !important;
  }
  .company-spec > div {
    min-height: 360px !important;
  }
  .company-specs {
    margin-right: 1.2rem !important;
    margin-left: 1.2rem !important;
  }
  .teaser-area {
    min-height: calc(100px + 1rem);
  }
}

@media (max-width: 1024px) {
  .banner-section .content {
    bottom: 10vh;
  }
  .banner-section .content .heading-xlarge {
    font-size: 2.7rem;
  }
  .banner-section .content .subheading {
    font-size: 1.2rem;
    max-width: 80%;
  }
  .banner-section .bg-image {
    min-height: 50vh;
  }
  .banner-section .content {
    left: 22%;
  }
  .company-spec > div {
    min-height: 360px;
  }
}

/* --------------------- 
company seo
--------------------- */
.company-seo {
  align-items: center;
}
@media (min-width: 992px) {
  .company-seo {
    flex-direction: row-reverse;
  }
}
.company-seo h2 {
  margin-bottom: 2rem;
}
@media (min-width: 992px) {
  .company-seo .text {
    padding-left: 4rem;
    max-width: 80%;
  }
}
.company-seo .btn {
  margin-top: 1rem;
  margin-bottom: 2rem;
}

/* --------------------- 
brands/manufacturers
--------------------- */
.index-manufacturer-area {
  text-align: center;
  background-color: #ececec;
  padding-top: 1rem;
  padding-bottom: 2rem;
}
.index-manufacturer-area .subtitle {
  margin-bottom: 1rem;
}
.index-manufacturer-area .manu-logos {
  display: flex;
  flex-wrap: wrap;
  gap: 1.5rem;
  justify-content: center;
}
.index-manufacturer-area .manu-logos img {
  padding: 1rem;
}

/* --------------------- 
productslider
--------------------- */
/* --------------------- 
company specs
--------------------- */
.company-spec-area {
  z-index: 1;
  position: relative;
}

.company-specs {
  display: flex;
  align-items: stretch;
  margin-right: 4.2rem;
  margin-left: 4.2rem;
}

.company-spec {
  margin-bottom: 1rem;
}
.company-spec > div {
  background-color: #0785F2;
  border-radius: 1rem 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 1rem;
  color: #ffffff;
  text-align: center;
  padding: 3rem;
}
.company-spec span {
  font-size: 2.4rem;
  font-weight: 900;
}
.company-spec p {
  font-size: 1.2rem;
}

/* --------------------- 
company sections (neu, gebraucht,..)
--------------------- */
.sections-area {
  position: relative;
  background-color: #07244C;
  color: #D6D7DA;
  padding-top: 5rem;
  padding-bottom: 5rem;
}
@media (min-width: 992px) {
  .sections-area {
    padding-top: 15rem;
    margin-top: -200px;
  }
}
.sections-area .subtitle {
  color: #D6D7DA;
}
.sections-area .item {
  margin-bottom: 2rem;
}
.sections-area .item > div {
  padding: 1rem;
}
.sections-area .item .bordered {
  border-radius: 1rem 0;
  border: 1px solid #acacac;
  min-height: 20rem;
}

/* --------------------- 
news section
--------------------- */
.news-index-area {
  background-color: #082b59;
  color: #ffffff;
}
.news-index-area a {
  color: inherit;
}
.news-index-area a:hover {
  text-decoration: underline;
}

/* --------------------- 
styling used for both product-list and product-details
--------------------- */
/* --------------------- 
component styling
--------------------- */
/* --------------------- 
Default elements
--------------------- */
.custom-swiper {
  position: relative;
}
.custom-swiper .swiper-nav {
  position: absolute;
  bottom: 10px;
  z-index: 10;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  left: auto;
  font-size: 1rem;
  color: #ffffff;
  background-color: rgba(0, 0, 0, 0.7);
  padding: 5px 10px;
}
.custom-swiper .swiper-nav.next {
  right: 10px;
}
.custom-swiper .swiper-nav.prev {
  right: 50px;
}
.custom-swiper .swiper-nav.swiper-button-disabled {
  color: #D6D7DA;
  background-color: rgba(0, 0, 0, 0.3);
}

.swiper-slide img {
  display: block;
  width: auto;
  height: 100%;
  max-height: 500px;
  -o-object-fit: cover;
     object-fit: cover;
}

@media (max-width: 425px) {
  .swiper-slide img {
  width: 100%;
  }
}

/* --------------------- 
Image Slider on productlist
--------------------- */
.device-images {
  position: relative;
}
.device-images .swiper-slide {
  position: relative;
  overflow: hidden;
  display: table;
  table-layout: fixed;
  width: 100%;
  min-height: 320px;
}
@media (min-width: 992px) {
  .team .device-images .swiper-slide {
    min-height: 350px;
  }
  .device-images .swiper-slide {
    min-height: 230px;
  }
  .offcanvas.offcanvas-start {
    left: -25px;
  }
  .navbar-expand-lg .offcanvas {
    position: relative;
  }
}
.device-images .swiper-slide img {
  position: absolute;
  top: 0;
  left: 0;
  width: 0px;
  height: 0px;
  max-width: 100%;
  min-width: 100%;
  max-height: 100%;
  min-height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
.device-images .image-counter {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 10;
  padding: 5px 10px;
  background-color: rgba(0, 0, 0, 0.3);
  color: #ffffff;
}

/* --------------------- 
image slider on productdetail
--------------------- */
.device-gallery .main-image {
  position: relative;
  overflow: hidden;
}
.device-gallery .main-image .zoom-overlay {
  position: absolute;
  width: 100%;
  height: 4rem;
  top: 0;
  left: 0;
  z-index: 11;
  background: rgba(0, 0, 0, 0.4);
  color: #ffffff;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  transition: 0.8s all;
}
.device-gallery .main-image:hover .zoom-overlay {
  opacity: 1;
}
.device-gallery .thumbs {
  height: 20%;
  box-sizing: border-box;
  padding: 10px 0;
  overflow: hidden;
}
.device-gallery .thumbs .swiper-slide {
  width: 10%;
  height: 100%;
  opacity: 0.4;
}
.device-gallery .thumbs .swiper-slide-thumb-active {
  opacity: 1;
}

.gallery-column {
  transition: 0.5s all ease-out;
}

.vehicle-data .heading {
  color: #acacac;
  text-transform: uppercase;
  padding: 0.5rem 1rem;
}
.vehicle-data .team .heading {
    color: #acacac;
    padding: 0.5rem 0;
}
.vehicle-data .wrapper {
  border: 1px solid #b9b9b9;
  overflow: hidden;
  height: 100%;
}
.vehicle-data .wrapper .heading {
  min-width: 170px;
}

/* --------------------- 
data-display (table)
--------------------- */
.vehicle-data .table-wrapper {
  width: 100%;
}
.vehicle-data table,
.vehicle-data tbody {
  width: 100%;
  background: transparent;
}
.vehicle-data td {
  padding: 0.5rem 1rem;
}
.vehicle-data .table-striped tr:nth-child(odd) {
  background-color: #b9b9b9;
}
.vehicle-data .table-striped tr:nth-child(even) {
  background-color: #D6D7DA;
}

.condition-wrapper {
  display: flex;
  gap: 1rem;
  justify-content: center;
  text-align: center;
}
.condition-wrapper > div {
  width: 16.6666666667%;
}

.condition-indicator {
  display: flex;
  gap: 10px;
}
.condition-indicator span {
  background-color: #bbbbbb;
  width: 1.4rem;
  height: 1rem;
  display: block;
  border-radius: 5px 0px;
}
.condition-indicator.neu span {
  background-color: #59a101;
}
.condition-indicator.sehr-gut span:nth-child(-n+5) {
  background-color: #59a101;
}
.condition-indicator.gut span:nth-child(-n+4) {
  background-color: #76b729;
}
.condition-indicator.normal span:nth-child(-n+3) {
  background-color: #76b729;
}
.condition-indicator.schlecht span:nth-child(-n+2) {
  background-color: #f59133;
}

.product-spec-list {
  min-height: 69px;
  color: #ffffff;
  padding: 0.5rem;
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 1rem;
  font-size: 0.875rem;
  background-color: #144580;
}
.product-spec-list svg path {
  fill: #ffffff;
}
.product-spec-list.soft {
  background-color: #dfdfdf;
  color: #333;
}
.product-spec-list.soft svg path {
  fill: #333;
}
.product-spec-list li {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.product-spec-list svg {
  max-width: 1.5rem;
  height: 2rem;
}
.product-spec-list .volt svg {
  max-height: 1.5rem;
}
.product-spec-list .load-weight svg {
  max-width: 1.1rem;
}
.product-spec-list .time svg {
  max-height: 1.4rem;
}

.list-card .product-spec-list {
  margin-top: 1rem;
  background-color: transparent;
  align-items: stretch;
  padding-left: 0;
  gap: 0;
}
.list-card .product-spec-list.soft li {
  background-color: #dfdfdf;
}
.list-card .product-spec-list li {
  background-color: #144580;
  padding: 0.5rem;
  min-width: 4.7rem;
}
.list-card .product-spec-list li.volt, .list-card .product-spec-list li.time {
  padding-top: 1rem;
}

/* --------------------- 
styling for productlist
--------------------- */
/* --------------------- 
component styling
--------------------- */
.view-type .active svg path {
  fill: #0f0f0f;
}
.view-type svg path {
  fill: lightgray;
}

/* --------------------- 
Filter (on product-list)
--------------------- */
.device-filter .form-group {
  margin-bottom: 0.8rem;
}
.device-filter .form-actions button {
  margin-bottom: 0.5rem;
}
.device-filter .form-actions .btn {
  width: 100%;
}
.device-filter .title {
  color: #acacac;
  margin-left: 0;
}
.device-filter option {
  margin-left: 0.5rem;
}

/* --------------------- 
Device Cards
--------------------- */
.device-card {
  overflow: hidden;
  margin-bottom: 1.6rem;
  /* --------------------- 
  price
  --------------------- */
  /* --------------------- 
  grid view
  --------------------- */
  /* --------------------- 
  list view
  --------------------- */
}
.device-card .device-images {
  overflow: hidden;
}
.device-card .card-title {
  min-height: 3rem;
  margin: unset;
  font-size: 1.25rem;
}
.device-card .card-title a {
  color: inherit;
  text-decoration: none;
}
.device-card .device-price span {
  font-size: 0.875rem;
}
.device-card .price {
  margin: unset;
  font-size: 1rem;
  font-weight: normal;
}
.device-card .price span {
  margin-left: 3px;
  font-weight: 400;
  font-size: 0.875rem;
}
.device-card.grid-card .action-wrapper {
  width: 100%;
}
.device-card.grid-card .action-wrapper .btn {
  display: block;
}
.device-card.grid-card .side-notes > * {
  margin: unset;
}
.device-card.list-card {
  border-bottom: 1px solid #dfdfdf;
  padding-bottom: 1.5rem;
}
.device-card.list-card .data {
  align-self: end;
}
.device-card.list-card .list-group {
  flex-direction: row;
  flex-wrap: wrap;
  margin-bottom: 0.5rem;
}
.device-card.list-card .list-group .list-group-item {
  width: 50%;
  padding-left: 0;
}
.device-card.list-card .side-notes {
  display: flex;
  gap: 1rem;
}

.product-card .card-title {
    min-height: 3rem;
    margin: unset;
    font-size: 1.25rem;
}

/* --------------------- 
sorting
--------------------- */
.sort-area {
  padding-bottom: 1rem;
  margin-bottom: 2rem;
  border-bottom: 1px solid #dfdfdf;
}

.sort-list {
  gap: 1rem;
  display: flex;
  align-items: center;
  justify-content: flex-end;
}

/* --------------------- 
pagination
--------------------- */
.pagination {
  display: flex;
  justify-content: center;
  align-items: baseline;
  margin-top: 2rem;
  margin-bottom: 4rem;
}
.pagination .page-numbers,
.pagination .page-nav {
  padding: 0.5rem 1rem;
  color: inherit;
  line-height: 1.2;
  min-height: 2.5rem;
}
.pagination .page-numbers a,
.pagination .page-nav a {
  color: inherit;
}
.pagination .page-numbers.current, .pagination .page-numbers:hover,
.pagination .page-nav.current,
.pagination .page-nav:hover {
  color: #0f0f0f;
  background-color: #ececec;
}
.pagination .page-nav {
  border: 1px solid #ececec;
}

/* --------------------- 
vehicle introduction
--------------------- */
.vehicle-title-bar {
  padding: 1rem 0;
  margin-bottom: 1rem;
}
.vehicle-title-bar.colored {
  background: #144580;
  color: #ffffff;
  padding: 1rem;
}
.vehicle-title-bar.colored .subtitle {
  color: #D6D7DA;
}

/* --------------------- 
Gallery
--------------------- */


/* --------------------- 
wrapper gallery + core
--------------------- */
.product-core {
  box-shadow: 0px 10px 13px -7px #212529, 0px 5px 15px -7px rgba(0, 0, 0, 0);
  padding-bottom: 2rem;
}
.product-core .content-wrapper > div {
  margin-top: 0.5rem;
}

/* --------------------- 
core information
--------------------- */
.core-data-wrapper {
  padding-top: 0.5rem;
}

/* --------------------- 
actions
--------------------- */
.action-wrapper {
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
  gap: 0.5rem;
}
.action-wrapper .rent-btn svg {
  height: 25px;
  width: auto;
}

/* --------------------- 
 price
--------------------- */
.price-wrapper {
  display: flex;
  gap: 0.5rem;
  flex-direction: row;
  align-items: baseline;
}

/* --------------------- 
Vehicle data
--------------------- */
.vehicle-data-area {
  margin-top: 4rem;
  margin-bottom: 4rem;
  padding-top: 2rem;
  padding-bottom: 4rem;
}

.vehicle-data {
  /* --------------------- 
  display as table
  --------------------- */
}
.vehicle-data .table {
  margin-bottom: unset;
}
.vehicle-data .data-display td:first-of-type {
  width: 250px;
}
.vehicle-data .data-display:last-of-type {
  border-color: var(--bs-table-striped-bg);
}
.vehicle-data.core-data-wrapper .data-display td:first-of-type {
  width: 142px;
  padding-left: 0;
}

/* --------------------- 
swiper js navigation styling
--------------------- */
.swiper-body {
  position: relative;
  --nav-border-color: var(--dark);
  --svg-color: var(--dark);
}
.swiper-body.has-nav {
  padding-bottom: 2rem;
}
.swiper-body.negative {
  --svg-color: var(--white);
}
.swiper-body.themed {
  --svg-color: var(--primary);
  --nav-border-color: var(--primary);
}
.swiper-body.overflow-hidden {
  overflow: hidden;
}

.swiper-nav {
  position: absolute;
  bottom: 10px;
  right: 0;
  z-index: 11;
  display: flex;
  flex-direction: row;
  gap: 0.5rem;
  padding: 0 1rem;
  opacity: 0.6;
}
.swiper-nav.start {
  left: 0;
}
.swiper-nav.circle .nav-btn {
  border: 1px solid var(--nav-border-color);
  border-radius: 100%;
}
.swiper-nav.small {
  --nav-btn-width: 2rem;
  --nav-btn-height: 2rem;
}
.swiper-nav.small svg {
  width: calc(var(--nav-btn-width) / 2);
}
.swiper-nav svg {
  fill: var(--svg-color);
}
.swiper-nav .nav-btn {
  background-color: transparent;
  width: var(--nav-btn-width);
  height: var(--nav-btn-height);
  display: flex;
  justify-content: center;
  align-items: center;
  transition: 0.2s all;
}
.swiper-nav .nav-btn:hover {
  opacity: 1;
}
.swiper-nav .nav-btn.next svg {
  transform: rotate(180deg);
  margin-left: 4px;
}
.swiper-nav .nav-btn.prev svg {
  margin-right: 4px;
}

/* --------------------- 
swiper js pagination styling
--------------------- */
.swiper-body .swiper-pagination {
  /* --------------------- 
  changed default coloring to fit color theme of the template
  --------------------- */
  /* --------------------- 
  bullets not filled, only when active
  --------------------- */
  /* --------------------- 
  bullet size
  --------------------- */
}
.swiper-body .swiper-pagination.themed .swiper-pagination-bullet-active {
  background: #144580;
}
.swiper-body .swiper-pagination.transparent .swiper-pagination-bullet {
  background: transparent;
  border: 1px solid #144580;
}
.swiper-body .swiper-pagination.transparent .swiper-pagination-bullet-active {
  background: #144580;
}
.swiper-body .swiper-pagination.large {
  --swiper-pagination-bullet-size: 12px;
  --swiper-pagination-bullet-height: 12px;
  --swiper-pagination-bullet-width: 12px;
}
.swiper-body .swiper-pagination.small {
  --swiper-pagination-bullet-size: 8px;
  --swiper-pagination-bullet-height: 8px;
  --swiper-pagination-bullet-width: 8px;
}

/* --------------------- 
CUSTOM
--------------------- */

nav.sidebar {
    position: fixed;
    right: 0;
    top: 50vh;
    width: auto;
    height: auto;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    padding: 0;
    z-index: 999;
}

.sidebar .phone-badge {
    background-color: #3c3c3c;
}

.sidebar .mail-badge {
    background-color: #e30d14;
}

.sidebar .contact-badge {
    background-color: #dadada;
    color: #3c3c3c;
}

.sidebar .wa-badge {
    background-color: #25e47b;
    color: #fff;
}

.sidebar a:hover {
    transform: none;
}

.sidebar a {
	  font-size: 16px;
	  /* display: flex; */
	  /* align-items: center; */
	  width: 255px;
	  text-decoration: none;
	  color: #fff;
	  font-size: 16px;
	  transform: translateX(215px);
	  transition: transform 500ms ease-in-out;
}

.sidebar a [class*="fa-"] {
		font-size: 30px;
		padding: 5px;
}

.sidebar a [class*="fab fa-"] {
		font-size: 34px;
		padding: 5px;
}

.cta-box {
	border:1px solid #e1e1e1;
	padding:40px 15px;
	width:100%;
	position:relative;
	background:#fafafa;
}

.trenner_bottom {
    float: left;
    position: relative;
    display: inline;
    padding: 0 0 0 0;
    margin: 7px 0 13px 0;
    background-color: #787878;
    height: 1px;
    width: 100%;
}

.standard {
    float: left;
    display: inline;
    position: relative;
    margin: 0px;
    padding: 0px;
    text-align: left;
}

.clear_row {
    clear: both;
}

a.nav_bottom_01:link, a.nav_bottom_01:visited {
    font-size: 14px;
    line-height: 16px;
    color: #d2d2d2;
    background-color: #2c2c2c;
    font-weight: normal;
    text-decoration: none;
    float: left;
    display: inline;
    position: relative;
    margin: 0 2px 2px 0;
    padding: 6px 10px 8px 10px;
}

a.nav_bottom_01:hover, a.nav_bottom_01:active {
    color: var(--white); 
    background-color: var(--primary); 
}


.nav-link.toggle i {
    position: absolute;
    top: 22px;
    right: 10px;
    transform: translateY(-50%);
}

.nav-link.subsub.toggle {
        padding-top: 0px;
        padding-bottom: 0px;
}

.thumbs .swiper-slide img {
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

.detailliste_link {
    color: #323232;
}

.detailliste_center {
    text-align: center;
}

.detailliste_right {
    text-align: right;
}

.img-responsive {
    display: block;
    max-width: 100%;
    height: auto;
}

.navbar.fixed-top .navbar-brand img.img-logo {
    display: block !important;
    padding-top: 3px;
}

.navbar .navbar-brand img.img-logo {
    display: none;
}

.custom_header_text {
    padding: 5px 10px;
    font-size: 14px;
    background: #144580;
    transform: skew(-25deg);
    position: relative;
    color: #fff;
    max-width: 190px;
    margin-right: 15px;
    width: auto;
    margin-top: 0px;
}

.custom_header_phone-wrapper {
    max-width: 300px !important;
    text-align: right;
    margin-top: 10px;
}

.custom_header_phone a, .custom_header_phone i {
    color: #144580 !important;
}

.custom_footer_social-media {
    padding: 10px 0 0 0;
    margin-bottom: 30px;
    border-bottom: 1px solid #e3e3e3;
}
.custom_footer_sm_icons ul {
    list-style: none;
    text-align: center;
    padding: 0px;
}
.custom_footer_sm_icons li {
    display: inline-block;
    padding: 0 3px;
}
.custom_footer_sm_text {
    color: #144580;
    font-size: 1rem;
    font-weight: 700;
}
.custom_footer_sm-logo-1 svg {
    width: 30px;
}
.custom_footer_sm-logo-2 svg {
    width: 30px;
}
img, svg {
    vertical-align: middle;
}




@media (min-width: 1081px) {
    .custom_header_phone a {
        font-size: 1.25rem;
    }
}

.header__info {
    border-inline-start: 1px solid #3890c6;
    margin-inline-start: 1.2rem;
    padding-inline-start: 1.2rem;
    font-size: 0.95rem;
}

.btn--accent.btn--fill, .btn--accent.btn--outline:hover {
    background: linear-gradient(111.02deg, #144580, #3890c6) !important;
    color: #fff !important;
}

.btn--top {
    align-items: center;
    -ms-appearance: none;
    -webkit-appearance: none;
    appearance: none;
    background: none;
    border: none;
    cursor: pointer;
    font-style: normal;
    font-weight: 400;
    justify-content: center;
    line-height: 1.56;
    outline: none;
    overflow: hidden;
    position: relative;
    text-align: center;
    text-decoration: none;
    transform: scale(1);
    transition: box-shadow, background-image, background-color, transform;
    transition-duration: .1s;
    transition-timing-function: ease-in-out;
    -webkit-user-select: none;
    user-select: none;
    vertical-align: middle;
    display: inline-block;
}
.btn--top--small {
    border-radius: 8px !important;
    font-size: .83rem !important;
    padding: 0.55rem 0.68rem !important;
}

.btn--light.btn--fill, .btn--light.btn--outline:hover {
    background: #e9edf0;
    color: #7c8288;
}

.btn--small {
    border-radius: 8px;
    font-size: .83rem;
    padding: .55rem .68rem;
}

.btn--top:hover {
    text-decoration: none;
    transform: scale(1.07);
}

.btn--top:after {
    background: currentColor;
    border-radius: 20px;
    color: inherit;
    content: "";
    display: block;
    height: 2.22rem;
    left: 50%;
    margin-left: -1.11rem;
    margin-top: -1.11rem;
    opacity: 0;
    pointer-events: none;
    position: absolute;
    top: 50%;
    transform: scale(0);
    width: 2.22rem;
    z-index: -1;
}

.btn--top:not(:first-child) {
    margin-inline-start: 1.2rem;
}

.icon--light.icon--outline {
    border-color: #3890c6;
}
.icon--small.icon--disc, .icon--small.icon--square {
    height: 1.82rem;
    width: 1.82rem;
}
.icon--light {
    color: #7c8288;
}
.icon--outline {
    border: 1px solid;
}
.icon--disc {
    border-radius: 100%;
}
.icon {
    align-items: center;
    display: inline-flex;
    justify-content: center;
    text-align: center;
    vertical-align: middle;
}

.col-nav__item:not(:first-child) {
    margin-top: .56rem;
}