/*
* Prefixed by:
* PostCSS: v7.0.29,
* Autoprefixer: v9.7.6
* Browsers: last 4 version
*/

/*------------------------------------*\
    MAIN
\*------------------------------------*/

/* font-family:"Arial Narrow MT W01 Regular"; */
/* @font-face {
    font-family: 'Arial Narrow';
    src: url('../fonts/2efa47ee-a5b2-48b4-bf5d-34bd3b20c7c2.woff2')
            format('woff2'),
        url('../fonts/df6ec43e-1e7d-4321-b7d9-c641e09a85e3.woff') format('woff'),
        url('../fonts/2efa47ee-a5b2-48b4-bf5d-34bd3b20c7c2.ttf')
            format('truetype');
    font-weight: 300;
    font-display: swap;
} */

/* font-family:"Arial Narrow MT W01 Bold"; */
/* @font-face {
    font-family: 'Arial Narrow';
    src: url('../fonts/c6352ed7-dc94-4f89-bb0e-191bcb55ae9c.woff2')
            format('woff2'),
        url('../fonts/be8d2a32-550a-4871-8752-ae0ee886f9f0.woff') format('woff'),
        url('../fonts/c6352ed7-dc94-4f89-bb0e-191bcb55ae9c.ttf')
            format('truetype');
    font-weight: 550;
    font-display: swap;
} */

@font-face {
    font-family: 'Roboto Condensed';
    src: url('../fonts/RobotoCondensed-VariableFont_wght.ttf')
        format('truetype');
    font-display: swap;
}

@font-face {
    font-family: 'Roboto Condensed';
    src: url('../fonts/RobotoCondensed-Italic-VariableFont_wght.ttf')
        format('truetype');
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Oswald';
    src: url('../fonts/Oswald-VariableFont_wght.ttf') format('truetype');
    font-display: swap;
}

@font-face {
    font-family: 'Arial Narrow';
    src: local();
    font-display: swap;
}

/* global box-sizing */
*,
*:after,
*:before {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-font-smoothing: antialiased;
    font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
    margin: 0;
    padding: 0;

    -webkit-box-pack: center;

    -ms-flex-pack: center;

    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;

    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

/* html element 62.5% font-size for REM use */
html {
    font-size: 10px;
    font-family: 'Oswald', 'Roboto Condensed', 'Arial Narrow', sans-serif;
}

body {
    /* font-family: 'Roboto', sans-serif; */
    color: var(--textcolor);
    font-size: 2rem;
    line-height: 1.2;
}

fieldset:not(.checkbox) p {
    width: 100%;
}
.checkbox p + p {
    margin-top: 0;
    margin-left: 1rem;
}

body.custom-background:not(.home) {
    background: none;
}

/* clear */
.clear:before,
.clear:after {
    content: ' ';
    display: table;
}

.clear:after {
    clear: both;
}

.clear {
    *zoom: 1;
}

img {
    max-width: 100%;
    max-width: 100%;
    height: auto;
    width: auto;
    vertical-align: bottom;
}

a {
    color: inherit;
    text-decoration: none;
}

a:hover {
    color: var(--secondary);
}

a:focus {
    outline: 0;
}

a:hover,
a:active {
    outline: 0;
}

input:focus {
    outline: 0;
    border: 1px solid #04a4cc;
}

h1:not(.custom_headline),
h2:not(.custom_headline),
h3:not(.custom_headline),
.h1,
.h2,
.h3 {
    /* text-transform: uppercase; */
    color: var(--primary, #003a65);
    font-weight: lighter;
    /* font-family: 'Oswald', sans-serif; */
}

h1:not(.custom_headline) strong,
h1:not(.custom_headline) b,
h2:not(.custom_headline) strong,
h2:not(.custom_headline) b,
h3:not(.custom_headline) strong,
h3:not(.custom_headline) b,
h4:not(.custom_headline) strong,
h4:not(.custom_headline) b,
.h1 strong,
.h1 b,
.h2 strong,
.h2 b,
.h3 strong,
.h3 b,
.h4 strong,
.h4 b {
    font-weight: 550;
}

h1:not(.custom_headline),
.h1 {
    font-size: var(
        --h1
    ); /* ursprünglich so groß wie h2:not(.custom_headline) */
    margin-bottom: 0;
}

h2:not(.custom_headline),
.h2 {
    font-size: var(--h2);
    margin-bottom: 0;
}

h1:not(.custom_headline) + *,
.h1 + *,
h2:not(.custom_headline) + *,
.h2 + * {
    margin-top: 4.3rem;
}

.h1 h1:not(.custom_headline) + * {
    margin-top: 0;
}

h1:not(.custom_headline):not(:first-child),
h1:not(.custom_headline):not(:first-child),
.h2:not(:first-child),
.h2:not(:first-child) {
    margin-top: 13.3rem;
}

h1:not(.custom_headline) + h2:not(.custom_headline):not(:first-child),
h1:not(.custom_headline) + .h2:not(:first-child),
.h1 + h2:not(.custom_headline):not(:first-child),
.h1 + .h2:not(:first-child) {
    margin-top: 1em;
}

h4:not(.custom_headline):not(:first-child),
.h4:not(:first-child) {
    margin: 2rem 0 1rem;
}

.subpages-content h1:not(.custom_headline):not(:first-child),
.subpages-content .h1:not(:first-child),
.subpages-content h2:not(.custom_headline):not(:first-child),
.subpages-content .h2:not(:first-child) {
    margin-top: 0;
}

h3:not(.custom_headline),
h4:not(.custom_headline),
.h3,
.h4 {
    font-size: var(--h3);
    font-weight: 550;
    margin-bottom: 2rem;
}

h3:not(.custom_headline),
.h3 {
    font-weight: normal;
}

h4:not(.custom_headline),
.h4 {
    /* text-transform: uppercase; */
}

ul li,
p {
    /* font-size: 1.6rem; */
    /* line-height: 1.4; */
    /* max-width: 70rem; */
    /* font-weight: 550; */
    /* text-align: justify; */
    -webkit-hyphens: auto;
    -ms-hyphens: auto;
    hyphens: auto;
}

p + p {
    margin-top: 1em;
}

blockquote {
    margin: 1.6rem 0;
    color: var(--secondary);
}

blockquote > :first-child:before {
    content: '„';
    display: inline;
}

blockquote > :last-child:after {
    content: '“';
    display: inline;
}

ol,
ul {
    margin: 0.8rem 0 1.6rem 1.5rem;
}

li {
    list-style: none;
}

/* ol li {
	list-style: inherit;
	margin-left: 1em;
}

ol {
	margin: .8rem 0 1.6rem;
}

main ol {
	margin: 1rem 0 1rem;
} */

ol {
    counter-reset: ol;
}

main ol,
main ul {
    /* margin: 1rem 0 1rem 1em */
    margin: 1rem 0 1rem 1.2em;
}

main li {
    position: relative;
}

main ul.children > li:before,
main ul.wp-block-list > li:before,
main ul:not([class]) > li:before {
    content: '';
    background-color: var(--primary, #003a65);
    height: 0.4em;
    width: 0.4em;
    -webkit-transform: translate(-100%, -50%) skewY(-30deg);
    -ms-transform: translate(-100%, -50%) skewY(-30deg);
    transform: translate(-100%, -50%) skewY(-30deg);
    display: inline-block;
    position: absolute;
    top: 0.6em;
    left: -0.75em;
}

main ol.wp-block-list > li:before,
main ol:not([class]) > li:before {
    counter-increment: ol;
    content: counter(ol) '.';
    -webkit-transform: translate(-100%, -50%);
    -ms-transform: translate(-100%, -50%);
    transform: translate(-100%, -50%);
    display: inline-block;
    position: absolute;
    top: 0.6em;
    left: -0.5em;
    min-width: 0.7em;
    /* text-align: right; */
    color: var(--primary, #003a65);
    font-weight: 550;
}

main ol ul,
main ol ol,
main ul ul,
main ul ol {
    margin-bottom: 1.5rem;
}

li:not(:last-child) {
    margin-bottom: 0.8rem;
}

.sidebar > ul > li:not(:last-child) {
    margin-bottom: 2.4rem;
}

h2:not(.custom_headline),
h3:not(.custom_headline),
h4:not(.custom_headline),
h5:not(.custom_headline),
h6:not(.custom_headline) {
    /* margin-top: 5rem; */
    /* margin-bottom: 1.6rem; */
}

.scroll_top {
    /* position: relative; */
    /* width: 7rem; */
    /* height: 7rem; */
    /* display: block; */
}

.scroll_top:before {
    content: url('../img/arrow-left.svg');
    -webkit-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg);
}

/*------------------------------------*\
	TYPOGRAPHY
\*------------------------------------*/

@font-face {
    font-family: 'Font-Name';
    src: url('fonts/font-name.eot');
    src: url('fonts/font-name.eot?#iefix') format('embedded-opentype'),
        url('fonts/font-name.woff') format('woff'),
        url('fonts/font-name.ttf') format('truetype'),
        url('fonts/font-name.svg#font-name') format('svg');
    font-weight: normal;
    font-style: normal;
}

/*------------------------------------*\
    MISC
\*------------------------------------*/

::-moz-selection {
    background: #04a4cc;
    color: #fff;
    text-shadow: none;
}

::selection {
    background: #04a4cc;
    color: #fff;
    text-shadow: none;
}

::-webkit-selection {
    background: #04a4cc;
    color: #fff;
    text-shadow: none;
}

::-moz-selection {
    background: #04a4cc;
    color: #fff;
    text-shadow: none;
}

/*------------------------------------*\
    WORDPRESS CORE
\*------------------------------------*/

.alignnone {
    /*margin:5px 20px 20px 0;*/
}

.aligncenter,
div.aligncenter {
    display: block;
    margin: 5px auto 5px auto;
}

.alignright {
    float: right;
    margin: 5px 0 20px 20px;
}

.alignleft {
    float: left;
    margin: 5px 20px 20px 0;
}

a img.alignright {
    float: right;
    margin: 5px 0 20px 20px;
}

a img.alignnone {
    margin: 5px 20px 20px 0;
}

a img.alignleft {
    float: left;
    margin: 5px 20px 20px 0;
}

a img.aligncenter {
    display: block;
    margin-left: auto;
    margin-right: auto;
}

.wp-caption {
    background: #fff;
    border: 1px solid #f0f0f0;
    max-width: 96%;
    padding: 5px 3px 10px;
    text-align: center;
}

.wp-caption.alignnone {
    margin: 5px 20px 20px 0;
}

.wp-caption.alignleft {
    margin: 5px 20px 20px 0;
}

.wp-caption.alignright {
    margin: 5px 0 20px 20px;
}

.wp-caption img {
    border: 0 none;
    height: auto;
    margin: 0;
    max-width: 98.5%;
    padding: 0;
    width: auto;
}

.sticky {
}

.bypostauthor {
}

section {
    width: 100%;
}

/* WP */

.wp-block-separator {
    border: none;
    border-top: solid 1px #000;
    margin: 7rem calc((100% - (100vw / 12 * 8)) / 2);
}

.wp-block-separator + * {
    margin-top: 0 !important;
}

#wpcf7-f4487-p4049-o4 form {
    max-width: none;
}

#wpcf7-f4487-p4049-o4 .wpcf7-list-item {
    margin: 2rem 0;
}

#wpcf7-f4487-p4049-o4 input[type='checkbox'] {
    margin-right: 2rem;
}

#wpcf7-f4487-p4049-o4 p a {
    color: var(--secondary);
}

input[type='submit'].button {
    /* background-color: rgba(240, 129, 0, 1); */
    /* color: #fff; */
    display: inline-block;
    /* padding: 1rem 2rem; */
    margin: 0.8rem 0;
}

#wpcf7-f4487-p4049-o4 .feedback_slider {
    max-width: 70rem;
}

.feedback_slider .noUi-target {
    margin: 1rem 0;
    border-radius: 9px;
    width: 100%;
}
.feedback_slider .noUi-connects {
    background: rgba(255, 255, 255, 1);
    background-image: -o-linear-gradient(
        bottom,
        rgba(0, 0, 0, 0.12) 0%,
        rgba(0, 0, 0, 0) 10px
    );
    background-image: linear-gradient(
        0deg,
        rgba(0, 0, 0, 0.12) 0%,
        rgba(0, 0, 0, 0) 10px
    );
    border-radius: 9px;
}

.feedback_slider .noUi-connect {
    background: rgba(240, 129, 0, 1);
    background-image: -o-linear-gradient(
        bottom,
        rgba(0, 0, 0, 0.15) 0%,
        rgba(0, 0, 0, 0) 10px
    );
    background-image: linear-gradient(
        0deg,
        rgba(0, 0, 0, 0.15) 0%,
        rgba(0, 0, 0, 0) 10px
    );
}

.feedback_slider .noUi-touch-area {
    /* content: ' ';
    background-image: url(../../../img/arrow-next-white.svg);
    background-repeat: no-repeat;
    background-size: contain; */
}

/* .feedback_slider .noUi-handle {
  background: url(../img/range_thumb.svg);
  background-repeat: no-repeat;
  background-size: contain;
  -webkit-transform: scale(1.2);
      -ms-transform: scale(1.2);
          transform: scale(1.2);
  -webkit-box-shadow: none;
          box-shadow: none;
  border: none;
  cursor: pointer;
} */

.feedback_slider .noUi-handle::before,
.feedback_slider .noUi-handle::after {
    content: none;
}

.feedback_slider .min-max-values,
.feedback_slider .min-max-values > p {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    width: 100%;
}

/*------------------------------------*\
    PRINT
\*------------------------------------*/

@media print {
    * {
        background: transparent !important;
        color: #000 !important;
        -webkit-box-shadow: none !important;
        box-shadow: none !important;
        text-shadow: none !important;
    }

    a,
    a:visited {
        text-decoration: underline;
    }

    abbr[title]:after {
        content: ' (' attr(title) ')';
    }

    .ir a:after,
    a[href^='javascript:']:after,
    a[href^='mailto:']:after,
    a[href^='tel:']:after,
    a[href^='#']:after {
        content: '';
    }

    pre,
    blockquote {
        border: 1px solid #999;
        page-break-inside: avoid;
    }

    thead {
        display: table-header-group;
    }

    tr,
    img {
        page-break-inside: avoid;
    }

    img {
        max-width: 100% !important;
    }

    @page {
        margin: 0.5cm;
    }

    p,
    h2:not(.custom_headline),
    .h2,
    h3:not(.custom_headline),
    .h3 {
        orphans: 3;
        widows: 3;
    }

    h2:not(.custom_headline),
    .h2,
    h3:not(.custom_headline),
    .h3 {
        page-break-after: avoid;
    }
}

.mce-ico.mce-i-none {
    background-size: 100%;
    background-repeat: no-repeat;
}

.download .wpcf7-response-output {
    width: 100%;
    margin: 0 !important;
}

.product_examples:not(:first-child) {
    margin-top: 4rem;
}

#application_form {
    width: 100%;
    margin: 0;
}

#application_form .forminator-ui .forminator-title {
    font-size: var(--h3) !important;
}

#application_form #html-3,
#application_form
    .forminator-ui
    .forminator-row:not(:first-child):not(:nth-child(2))
    .forminator-title {
    border-top: 1px solid var(--textcolor);
    margin-top: 0rem;
    padding-top: 5rem;
}
#application_form #html-3 a {
    color: var(--secondary);
}

#application_form .forminator-ui .forminator-button-submit {
    background-color: rgba(240, 129, 0, 1) !important;
    color: #ffffff !important;
    border: none !important;
    margin-left: auto !important;
}

#application_form button.forminator-button.forminator-button-submit::after {
    content: none;
}

#application_form .forminator-file-upload {
    background-color: #f2f2f2;
}
#application_form .forminator-ui .forminator-multi-upload {
    background-color: #f2f2f2 !important;
    border: none;
    padding: 0;
    padding: 0.5rem 5rem 0.5rem 1rem !important;
    margin-top: 0 !important;
    font-size: inherit !important;
    line-height: normal !important;
    width: 100%;
    position: relative;
}

#application_form .forminator-ui .forminator-multi-upload:after {
    content: url(../img/upload.svg);
    padding: 0.75rem;
    background-color: var(--secondary);
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    width: 4rem;
    display: inline-table;
}

#application_form
    .forminator-ui.forminator-custom-form
    .forminator-multi-upload
    .forminator-multi-upload-message
    [class*='forminator-icon-'] {
    display: none;
}

#application_form
    .forminator-ui.forminator-custom-form[data-design='default']
    .forminator-multi-upload
    .forminator-multi-upload-message
    p {
    text-align: left;
    font: inherit;
    display: flex;
    flex-direction: row-reverse;
    justify-content: flex-end;
    color: transparent;
    font-size: 0.1px;
}

#application_form
    .forminator-ui
    .forminator-multi-upload
    .forminator-multi-upload-message
    p
    a {
    font: inherit;
    color: var(--textcolor) !important;
    text-decoration: none !important;
    font-size: 18px;
    font-weight: 300 !important;
    line-height: 1.8 !important;
}

#application_form .forminator-ui.forminator-custom-form .forminator-row {
    align-items: flex-start;
}

#application_form .forminator-checkbox__label a {
    color: var(--secondary);
}

#application_form .forminator-ui .forminator-label {
    font-weight: normal !important;
}

#application_form
    .forminator-ui
    .forminator-select2
    + .forminator-select
    .selection
    .select2-selection--single[role='combobox'],
#application_form .forminator-ui .forminator-input {
    border: 2px solid #e5e5e5 !important;
    border-radius: 0 !important;
}

@media (min-width: 783px) {
    #application_form
        .forminator-ui.forminator-custom-form
        .forminator-col-12.forminator-col-6 {
        padding-right: calc(50% + 15px);
    }

    #application_form {
        /* padding-right: 5rem; */
    }
}

#application_form
    .forminator-ui
    select.forminator-select2
    + .forminator-select
    .selection
    .select2-selection--single[role='combobox']
    .select2-selection__rendered {
    line-height: 1.8 !important;
}

.wp-block-table .has-fixed-layout {
    table-layout: auto;
    width: auto;
    vertical-align: baseline;
}

.wp-block-table td,
.wp-block-table th {
    border: none;
    vertical-align: baseline;
}

/*  widget */

/* Compare Widget Styles */
.compare-widget {
    display: none;
    position: fixed;
    bottom: 1rem;
    right: 2rem;
    width: 30rem;
    background-color: #fff;
    border: 1px solid #ccc;
    box-shadow: 0 0 1rem rgba(0, 0, 0, 0.2);
    z-index: 9999;
    transition: height 0.3s ease-in-out;
    overflow: hidden;
}

.compare-widget.closed > :not(.compare-widget-header) {
    display: none;
}

.compare_select.disabled {
    opacity: 0.8;
}

.compare-widget.open {
    height: auto;
    max-height: 40rem;
    overflow-y: auto;
}

.compare-widget-header {
    cursor: pointer;
    background-color: #f0f0f0;
    padding: 1rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.compare-widget-header .compare-widget-toggle {
    font-size: 2em;
    font-weight: bold;
    transition: transform 0.3s ease-in-out;
    line-height: 0.5em;
}

.compare-widget.open .compare-widget-toggle {
    transform: rotate(45deg);
}
.compare-widget-content {
    padding: 10px;
    display: none;
}

.compare-widget.open .compare-widget-content {
    display: block;
}

.compare-widget-content ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.compare-widget-content li {
    display: flex;
    align-items: center;
    margin-bottom: 0.5rem;
}

.compare-widget-content li img {
    margin-right: 1rem;
    width: 4rem;
}

.compare-widget-content .remove-compare {
    margin-left: auto;
    background: none;
    border: none;
    cursor: pointer;
    font-weight: bold;
    width: 2rem;
    transform: translateY(-0.25em) rotate(45deg);
    font-size: 2em;
    line-height: 0.5em;
    transform-origin: center center;
}
.compare-widget .button.compare-button {
    width: 100%;
    margin: 0 auto;
    text-align: center;
}

/* Modal Style */
.compare-modal {
    display: none;
}
.compare-modal-content {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background-color: #fff;
    border: 1px solid #ccc;
    padding: 2rem;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
    z-index: 10000;
}

.compare-modal-overlay {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(0, 0, 0, 0.6);
    width: 100vw;
    height: 100vh;
    z-index: 9999;
}

.compare-modal-content p {
    display: none;
}
