/********* vars ***********/
:root {
    --shadow: 2px 8px 20px 0px rgb(3 43 29 / 14%);
    --shadow-soft: 2px 8px 40px 0px rgb(3 43 29 / 10%);
    --video-shadow: 40px 0px 50px 0px rgb(3 43 29 / 10%);
    --primary-color: #0daf77;
    --secondary-color: #bc202e;
    --tertiary-color: #28d89b;
    --primary-color-100: #f2f2f2;
    --primary-color-900: #032b1d;
    --fs-body: 14px;
    --fs-h2: 1.8rem;
    --fs-h3: 1.4rem;
    --fs-h4: 0.9rem;
}

::selection {
    background-color: var(--secondary-color);
    color: #fff;
}

/******* typography ******/

body:not(.fe-admin-area) {
    font-size: var(--fs-body);
    font-family: Poppins, sans-serif;
}

h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
    font-family: 'Poppins Bold', sans-serif;
}

p {
    margin: 0 0 30px;
    line-height: 200%;
}

.img-luz {
    background: #fff;
    padding: 20px;
    border: 1px solid #000;
}

.small,
small {
    font-size: 75%;
    text-transform: uppercase;
}

::after,
::before {
    box-sizing: border-box;
}

.headline-h1 {
    text-transform: uppercase;
}

h2 {
    font-size: var(--fs-h2);
    text-transform: uppercase;
    font-weight: 900;
    line-height: 125%;
}

h3 {
    font-size: var(--fs-h3);
    font-weight: 400;
    color: var(--primary-color-900);
    line-height: 1.5em;
    text-transform: uppercase;
}

h4 {
    font-size: var(--fs-h4);
    text-transform: uppercase;
    font-weight: lighter;
    line-height: 160%;
}

/******* navigation ******/

.nav-area-lines li a {
    text-transform: uppercase;
    font-weight: 300;
    font-size: 1em;
}

/******* Buttons *********/

body:not(.fe-admin-area) .btn:not(.dropdown-toggle, .btn-block, .btn-header, .btn-default) {
    padding: 1.15rem 4rem;
    text-transform: uppercase;
    border-radius: 50px;
    text-align: center;
    border: none;
    box-shadow: none;
    font-weight: 200;
    font-size: 16px;
    display: inline-block;
    line-height: unset;
    transition: all ease-in-out 0.25s;
    transform: translate3d(0, 0, 0);
    color: #fff !important;
}

#sss-search .audaris-widget div.mb-4:nth-child(5) {
    justify-content: center;
    max-width: 400px;
}

body:not(.fe-admin-area) .btn::before {
    content: '';
}

body:not(.fe-admin-area) .btn:not(.dropdown-toggle, .btn-block, .btn-header):hover {
    transform: translate3d(0, -5px, 0);
    box-shadow: var(--shadow);
}

body:not(.fe-admin-area) .btn.dropdown-toggle {
    color: var(--primary-color-900);
    border-bottom: var(--primary-color) solid 2px;
}

body:not(.fe-admin-area) .btn.dropdown-toggle:hover,
.bootstrap-select .btn-default:hover,
.bootstrap-select .btn-default:active,
.bootstrap-select .btn-default.active,
.bootstrap-select.open > .dropdown-toggle.btn-default,
.btn-default:hover,
.btn-default.active {
    color: var(--primary-color-900);
    border-bottom: var(--primary-color) solid 2px;
    background-color: transparent;
    border-color: transparent;
}

/** primary **/

body:not(.fe-admin-area) .btn.btn-primary:not(.btn-block) {
    background: var(--primary-color);
    background: linear-gradient(125deg, var(--tertiary-color) 0%, var(--primary-color) 100%) !important;
    background-size: 100% 100% !important;
    background-repeat: no-repeat !important;
}

body:not(.fe-admin-area) .btn.btn-primary:not(.btn-block):hover {
    background: var(--primary-sub-color);
    background: linear-gradient(125deg, var(--tertiary-color) 0%, var(--primary-color) 100%) !important;
    background-size: 160% 100% !important;
}

/** secondary **/

body:not(.fe-admin-area) .btn.btn-secondary {
    background: transparent;
    font-size: 16px;
    display: inline-block;
    border: 2px solid var(--primary-color);
    color: var(--primary-color) !important;
}

body:not(.fe-admin-area) .btn.btn-secondary:hover {
    border-color: var(--secondary-color) !important;
    color: var(--secondary-color) !important;
    transform: translate3d(0, 0, 0);
    background-color: var(--primary-color-100);
    box-shadow: none;
}

body:not(.fe-admin-area) .btn.btn-secondary::before {
    color: #648ba8;
}

body:not(.fe-admin-area) .btn.btn-secondary:hover::before {
    color: #fff;
}

/** btn-block (offnungzeiten, phone, route-berechnen etc.) **/

body:not(.fe-admin-area) .btn.btn-block,
body:not(.fe-admin-area) .btn.btn-default {
    background: transparent;
    border: 2px solid var(--primary-color);
    color: var(--primary-color) !important;
    border-radius: 50px;
    padding: 4px 24px;
    transition: all ease-in-out 0.25s;
}

body:not(.fe-admin-area) .btn.btn-block:hover {
    border-color: var(--secondary-color) !important;
    color: var(--secondary-color) !important;
    transform: translate3d(0, 0, 0);
    background-color: var(--primary-color-100);
    box-shadow: none;
}

body:not(.fe-admin-area) .btn.btn-block::before {
    color: #648ba8;
}

body:not(.fe-admin-area) .btn.btn-block:hover::before {
    color: #fff;
}

/************ link  ****************/

body:not(.fe-admin-area) a.link {
    color: var(--primary-color) !important;
    text-decoration: none !important;
}

body:not(.fe-admin-area) a.link:hover {
    text-decoration: underline !important;
}

#section-consultants:not(.consultants-view-2) .person-data .link-phone {
    margin-bottom: 10px;
}

/************ Main-Carousel *****************/

#header-slider-background-area {
    position: absolute;
    top: 50px;
    height: 100px;
    z-index: -1;
    background-color: var(--primary-color-100) !important;
    border-bottom: none;
    width: 100%;
}

#header-slider .carousel-caption,
#header-slider .owl-dots {
    display: none;
}

#header-slider .owl-carousel {
    box-shadow: var(--shadow);
    margin: 24px 0;
    background-color: #fff;
}

#header-slider .owl-nav .owl-prev,
#header-slider .owl-nav .owl-next {
    transform: translateY(0);
    top: 91%;
    opacity: 1;
    color: var(--primary-color-900);
    font-size: 0;
    transition: all ease-in-out 0.25s;
}

#header-slider .owl-nav .owl-prev:hover,
#header-slider .owl-nav .owl-next:hover {
    color: var(--primary-color);
}

#header-slider .owl-nav .owl-prev::after,
#header-slider .owl-nav .owl-next::after {
    font-size: 36px;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    line-height: 1;
    font-family: FontAwesome;
    font-weight: 400;
}

#header-slider .owl-nav .owl-prev {
    left: 82%;
}

#header-slider .owl-nav .owl-prev::after {
    content: '\f177';
}

#header-slider .owl-nav .owl-next {
    right: 6%;
}

#header-slider .owl-nav .owl-next::after {
    content: '\f178';
}

/************ Quicksearch *****************/

.quicksearch {
    box-shadow: var(--shadow);
    width: 80%;
    margin: 70px auto;
    padding: 3rem;
}

#section-search-switcher[data-view='4'] .search-switcher-top-container {
    max-width: 1580px;
    width: 100%;
}

#sss-search button.form-select {
    border: none;
    border-bottom: var(--primary-color) solid 2px;
    text-transform: uppercase;
    margin-bottom: 2rem;
}

#sss-ankauf button.form-select,
#sss-ankauf input,
#sss-ankauf select {
    border: none;
    border-bottom: var(--primary-color) solid 2px;
    text-transform: uppercase;
    margin-bottom: 2rem;
}

.audaris-widget .form-checkbox:focus,
.audaris-widget .form-input:focus,
.audaris-widget .form-select:focus,
.audaris-widget .form-textarea:focus {
    outline: none;
    border: none;
    border-bottom: var(--primary-color) solid 2px;
}

#section-search-switcher .search-switcher-top-container {
    border-radius: 0;
    box-shadow: var(--shadow);
}

#section-search-switcher .nav-tabs > li {
    border: 0;
    flex-grow: 1;
    text-align: center;
}

#section-search-switcher .nav-tabs > li > a {
    background: #fff;
    color: var(--primary-color-900);
    text-transform: uppercase;
    transition: all ease-in-out 0.25s;
    border-radius: 0 !important;
    line-height: 250%;
}

#section-search-switcher .nav-tabs > li.active > a,
#section-search-switcher .nav-tabs > li.active > a:hover,
#section-search-switcher .nav-tabs > li.active > a:focus {
    box-shadow: var(--shadow);
    position: relative;
    z-index: 5;
}

#section-search-switcher .nav-tabs {
    border: 0;
    display: flex;
    justify-content: center;
    max-width: 80%;
    margin: 0 auto;
    position: relative;
    top: -50px;
    z-index: 10;
}

#section-service-brands-ajax {
    background-color: #fff;
}

#section-service-brands-ajax #location-request {
    background: var(--primary-color-100);
}

/************ Showroom Slider **************/
.audaris-widget .fa-long-arrow-right,
.audaris-widget .fa-long-arrow-left {
    transition: all ease-in-out 0.25s;
}

.audaris-widget .fa-long-arrow-right:hover,
.audaris-widget .fa-long-arrow-left:hover {
    color: var(--primary-color);
}

.audaris-widget .fa-long-arrow-right::before {
    content: '\f30b' !important;
}

.audaris-widget .fa-long-arrow-left::before {
    content: '\f30a' !important;
}

.VehicleSlider .vehicle-card-3 {
    background-color: var(--primary-color-100) !important;
    box-shadow: 0 4px 0 0 var(--secondary-color) !important;
}

.VehicleSlider .vehicle-card-3 h3 span:first-child {
    color: var(--primary-color-900) !important;
    text-transform: uppercase;
}

.VehicleSlider .vehicle-card-3 h3 span:last-child {
    color: var(--secondary-color) !important;
    text-transform: uppercase;
}

.VehicleSlider .vehicle-card-3 > div:last-child > div > *:first-child {
    background-color: var(--primary-color-900) !important;
}

.vue-widget-custom .row > div:first-child {
    padding: 10% 0;
}

.vue-widget-custom .row > div:nth-child(2) > .row {
    box-shadow: var(--shadow);
    overflow: hidden;
}

.side-box {
    padding: 3rem;
    background-color: var(--primary-color-100);
}

.side-box .side-box-inner {
    width: 85%;
    margin: 0 auto;
}

/************* fahrzeug boxes and round icons *************/

.video-row {
    box-shadow: var(--video-shadow);
}

.video-col {
    padding: 0;
}

.video-container {
    width: 100%;
    height: 100%;
    text-align: center;
    padding: 32px;
}

.video-container > * {
    margin: 0 auto;
}

.fahrzeug-boxes > * {
    padding: 0;
}

.fahrzeug-box {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    background-color: var(--primary-color-100);
    padding: 12px 24px;
}

.fahrzeug-box img {
    transform: scale3d(1, 1, 1);
    transition: all ease-in-out 0.25s;
}

.fahrzeug-box:hover img {
    transform: scale3d(1.1, 1.1, 1);
}

.round-icon-container {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 0 24px 12px;
    text-align: center;
}

.round-icon {
    font-size: 24px;
    width: 68px;
    height: 68px;
    border-radius: 50%;
    box-shadow: var(--shadow);
    text-align: center;
    display: flex;
    justify-content: center;
    flex-direction: column;
    align-items: center;
    border-left: 3px solid var(--secondary-color);
    border-top: 1px solid var(--secondary-color);
}

.round-icon.large {
    font-size: inherit;
    width: 180px;
    height: 180px;
    border-left: 6px solid var(--secondary-color);
    border-top: 2px solid var(--secondary-color);
    margin-bottom: 1rem;
}

.round-icon.large > * {
    position: relative;
    top: 14px;
}

.price-disclaimer {
    background: var(--primary-color-100);
}

.price-disclaimer > p {
    padding: 6px;
}

/************ IM **********************/

[data-container='infomanager'].infomanager-view-3 .prev,
[data-container='infomanager'].infomanager-view-3 .next {
    opacity: 1;
    top: -48px;
    color: var(--primary-color-900);
    font-size: 0 !important;
    transition: all ease-in-out 0.25s;
}

[data-container='infomanager'].infomanager-view-3 .prev {
    left: 92%;
}

[data-container='infomanager'].infomanager-view-3 .next {
    right: 0;
}

[data-container='infomanager'].infomanager-view-3 .prev:hover,
[data-container='infomanager'].infomanager-view-3 .next:hover {
    color: var(--primary-color);
}

[data-container='infomanager'].infomanager-view-3 .prev::after,
[data-container='infomanager'].infomanager-view-3 .next::after,
[data-container='infomanager'].infomanager-view-3[data-slider-view='1'] .im-headline::after {
    font-size: 36px;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    line-height: 1;
    font-family: FontAwesome;
    font-weight: 400;
}

[data-container='infomanager'].infomanager-view-3 .prev::after {
    content: '\f177';
}

[data-container='infomanager'].infomanager-view-3 .next::after {
    content: '\f178';
}

[data-container='infomanager'].infomanager-view-3 .owl-stage {
    padding: 24px 0;
}

[data-container='infomanager'] .owl-stage {
    padding: 0 0 28px;
}

[data-container='infomanager'].infomanager-view-3[data-slider-view='1'] .im-slider-entry {
    box-shadow: var(--shadow);
}

[data-container='infomanager'].infomanager-view-3[data-slider-view='1'] .im-slider-entry .entry-img {
    padding-bottom: 50%;
}

[data-container='infomanager'].infomanager-view-3[data-slider-view='1'] .im-headline {
    background: #fff;
    color: var(--primary-color-900);
    padding: 10px 24px;
    text-align: left;
    position: relative;
}

[data-container='infomanager'].infomanager-view-3[data-slider-view='1'] .im-headline::after {
    content: '\f054';
    position: absolute;
    font-size: 15px;
    font-weight: 600;
    right: 24px;
}

/************ footer ******************/

#footer #pre_area h1,
#footer #pre_area h2,
#footer #pre_area h3,
#footer #pre_area h4,
#footer #pre_area h5,
#footer #pre_area h6 {
    color: var(--primary-color-900) !important;
}

#footer #pre_area {
    background: transparent;
    color: var(--primary-color-900) !important;
    padding: 120px 0;
    text-align: center;
}

.prefooter-box {
    background: linear-gradient(125deg, #fff 0%, #fff 80%, rgb(3 43 29 / 7%) 100%);
    box-shadow: var(--shadow-soft);
    min-height: 110px;
    padding: 12px;
}

.prefooter-box.last {
    background: #fff;
}

/************* formular ************/
label {
    font-weight: 300;
}

.well {
    min-height: 20px;
    padding: 0;
    margin-bottom: 20px;
    background-color: transparent;
    border: none;
    border-radius: 0;
    box-shadow: inset 0 0 0 rgb(0 0 0 / 0%);
}

.slider-selection {
    background-image: linear-gradient(125deg, var(--tertiary-color) 0%, var(--primary-color-100) 100%);
}

.form-control::placeholder {
    color: var(--primary-color-900);
    opacity: 0.9;
}

.bootstrap-select .dropdown-menu > .active > a {
    color: var(--primary-color-900);
}

body:not(.fe-admin-area) .form-control:not(.dropdown) {
    display: block;
    width: 100%;
    height: 34px;
    padding: 6px 12px;
    font-size: var(--fs-body);
    color: var(--primary-color-900);
    border: none;
    border-bottom: var(--primary-color) solid 2px;
    border-radius: 0;
    background: #f0f0f0;
}

body:not(.fe-admin-area) label {
    text-transform: uppercase;
}

[data-container='vehicle-enquiry-form'] .lead {
    border-bottom: none;
    font-size: var(--fs-h2);
    text-transform: uppercase;
    font-weight: 900;
    line-height: 125%;
    padding-bottom: 10px;
}

[data-container='vehicle-enquiry-form'] .well.form-group .lead {
    padding-top: 42px;
}

.input-group-addon {
    padding: 6px 12px;
    font-size: var(--fs-body);
    font-weight: 400;
    line-height: 1;
    color: var(--primary-color-900);
    text-align: center;
    background-color: var(--primary-color-100);
    border: none;
    border-bottom: var(--primary-color) solid 2px;
    border-radius: 0;
}

#header #logo-primary-box .logo-link img {
    max-width: 230px;
}

.navbar-top {
    align-items: center;
    display: flex;
    flex-direction: row-reverse;
}

@media (min-width: 1380px) {
    .navbar-left {
        align-items: center;
        color: #fff;
        display: flex;
        height: 130px;
        padding-left: 20px;
        width: auto;
    }

    .navbar-left a {
        border: 1px solid #ccc;
        display: inline-block;
        padding: 6px;
    }

    .navbar-left img {
        max-height: 25px;
    }
}

@media (min-width: 1580px) {
    .navbar-left {
        padding-left: 30px;
    }

    .navbar-left img {
        max-height: 45px;
    }
}

.number::after {
    content: '€';
}

/******** Content-Block Leistung Section ****/

.content-block {
    padding: 0 24px;
}

/************* queries *************/

@media (min-width: 768px) {
    #header-slider .container-fluid {
        padding-left: 0;
        padding-right: 0;
        position: relative;
        margin-right: 0;
        max-width: calc(1730px + 24px);
        width: calc(90.5% + 24px);
    }

    #header-slider .owl-carousel {
        margin: 24px;
    }

    .site-home #section-search-switcher .search-switcher-top-container {
        margin-top: calc(80px + 8rem) !important;
        padding: 0 5rem;
    }
}

@media (min-width: 992px) {
    .content-block {
        padding: 0 6px;
    }
}

@media (min-width: 1200px) {
    #header-slider .owl-nav .owl-prev {
        left: 90%;
    }

    #header-slider .owl-nav .owl-next {
        right: 4%;
    }
}

/************* auda-classes ****************/

.auda-align-center {
    align-items: center;
}

.auda-justify-center {
    justify-content: center;
}

.auda-cr-center {
    align-items: center;
    justify-content: center;
}

.auda-hv-center {
    align-items: center;
    justify-content: center;
    flex-direction: column;
}

.auda-space {
    padding: 20px;
}

.auda-space-xl {
    padding: 50px;
}

.auda-h-100 {
    height: 100%;
}

#section-direction-compact .service-area-open-time {
    padding: 10px;
    background: #e3e3e3;
    margin: 20px 0 0;
}

/* TIMELINE AH */

/* Ueberschrift */
.main {
    width: 80%;
    margin-top: 80px;
}

.main h3 {
    line-height: 60px;
    color: #3c3c3b;
}

.main p {
    font-size: 13px;
    line-height: 20px;
    text-align: right;
}

/* Timeline */
.tl {
    padding: 0;
    margin: 0;
    position: relative;
}

.tl_timeline {
    padding: 40px 0;
    width: 80%;
    margin-left: 10%;
    margin-bottom: 40px;
    margin-top: -45px;
}

/* Vertikale Linie */
.tl_timeline::before {
    content: '';
    position: absolute;
    left: 65px;
    width: 3px;
    height: calc(100% - 160px);
    background: #0daf77;
}

/* Logo_Short */
@media (min-width: 907px) {
    .tl_timeline .tl_column .tl_title h3::before {
        content: url('/website/themes/luzzi-luzzi.de/dynamic/fe/images/unternehmen/ll.jpg');
        position: absolute;
        left: 42px;
        margin-top: 46px;
        width: 40px;
        height: 0;
        background: #fff;
    }
}

/* Timeline-Eintrag */
.tl_timeline .tl_column {
    margin: 40px 0;
}

/* Jahreszahl */
.tl_timeline .tl_column .tl_title h3 {
    font-size: 40px;
    color: #0daf77;
    letter-spacing: 0;
    margin-left: 8px;
    font-weight: 700;
    margin-bottom: 40px;
}

/* Titel */
.tl_timeline .tl_column .tl_title h4 {
    margin-top: -47px;
    font-size: 18px;
    color: #000;
    margin-left: 8px;
    font-weight: bold;
}

/* Beschreibung */
.tl_timeline .tl_column .tl_description {
    border-left: 1px solid #51a71e;
    margin-left: 8px;
}

.tl_timeline .tl_column .tl_description p {
    font-size: 13px;
    line-height: 20px;
    margin-left: 20px;
    margin-top: 10px;
    padding-right: 10px;
}

/* Timeline - Anpassungen fuer mobile Geraete */
@media (max-width: 479px) {
    #optional-header-icons > a:last-child {
        display: block !important;
    }
}

@media (max-width: 767px) {
    .tl_timeline {
        width: 85%;
    }

    .tl_timeline::before {
        left: 15px;
    }

    .tl_timeline .tl_column {
        margin: 0;
    }

    .tl_timeline .tl_column .tl_title h2::before {
        left: -4px;
    }
}

/* LF */
.auda-space {
    padding: 45px;
}
