@charset "UTF-8";
@font-face { font-family: 'Montserrat'; font-style: normal; font-weight: 400; src: url("../fonts/webfonts/Montserrat-Regular.eot"), url("../fonts/webfonts/Montserrat-Regular.eot?#iefix") format("embedded-opentype"), url("../fonts/webfonts/Montserrat-Regular.woff2") format("woff2"), url("../fonts/webfonts/Montserrat-Regular.woff") format("woff"), url("../fonts/ttf/Montserrat-Regular.ttf") format("truetype"); }

@font-face { font-family: 'MontserratMedium'; font-style: normal; src: url("../fonts/webfonts/Montserrat-Medium.eot"), url("../fonts/webfonts/Montserrat-Medium.eot?#iefix") format("embedded-opentype"), url("../fonts/webfonts/Montserrat-Medium.woff2") format("woff2"), url("../fonts/webfonts/Montserrat-Medium.woff") format("woff"), url("../fonts/ttf/Montserrat-Medium.ttf") format("truetype"); }

@font-face { font-family: 'MontserratBold'; font-style: normal; src: url("../fonts/webfonts/Montserrat-Bold.eot"), url("../fonts/webfonts/Montserrat-Bold.eot?#iefix") format("embedded-opentype"), url("../fonts/webfonts/Montserrat-Bold.woff2") format("woff2"), url("../fonts/webfonts/Montserrat-Bold.woff") format("woff"), url("../fonts/ttf/Montserrat-Bold.ttf") format("truetype"); }

@font-face { font-family: 'MontserratRegular'; font-style: normal; src: url("../fonts/webfonts/Montserrat-Regular.eot"), url("../fonts/webfonts/Montserrat-Regular.eot?#iefix") format("embedded-opentype"), url("../fonts/webfonts/Montserrat-Regular.woff2") format("woff2"), url("../fonts/webfonts/Montserrat-Regular.woff") format("woff"), url("../fonts/ttf/Montserrat-Regular.ttf") format("truetype"); }

@font-face { font-family: 'MontserratSemiBold'; font-style: normal; src: url("../fonts/webfonts/Montserrat-SemiBold.eot"), url("../fonts/webfonts/Montserrat-SemiBold.eot?#iefix") format("embedded-opentype"), url("../fonts/webfonts/Montserrat-SemiBold.woff2") format("woff2"), url("../fonts/webfonts/Montserrat-SemiBold.woff") format("woff"), url("../fonts/ttf/Montserrat-SemiBold.ttf") format("truetype"); }

@font-face { font-family: 'MontserratLight'; font-style: normal; src: url("../fonts/webfonts/Montserrat-Light.eot"), url("../fonts/webfonts/Montserrat-Light.eot?#iefix") format("embedded-opentype"), url("../fonts/webfonts/Montserrat-Light.woff2") format("woff2"), url("../fonts/webfonts/Montserrat-Light.woff") format("woff"), url("../fonts/ttf/Montserrat-Light.ttf") format("truetype"); }

.montserrat { font-family: "Montserrat" !important; }

.montserrat-medium { font-family: "MontserratMedium" !important; }

.montserrat-bold { font-family: "MontserratBold" !important; }

.montserrat-regular { font-family: "MontserratRegular" !important; }

.montserrat-semibold { font-family: "MontserratSemiBold" !important; }

.montserrat-light { font-family: "MontserratLight" !important; }

h1 { font-family: "MontserratBold"; font-size: 48px; color: white; margin: 0; line-height: 64px; }

body .box-margin-XXS { margin-bottom: 8px; }

body .box-margin-XS { margin-bottom: 16px; }

body .box-margin-M { margin-bottom: 32px; }

body .box-margin-S { margin-bottom: 20px; }

body .box-margin-L { margin-bottom: 40px; }

body .box-margin-XL { margin-bottom: 60px; }

@media only screen and (min-width: 300px) and (max-width: 1199px) { body .box-margin-XL { margin-bottom: 40px; } }

body .box-margin-XXL { margin-bottom: 90px; }

@media only screen and (min-width: 300px) and (max-width: 1199px) { body .box-margin-XXL { margin-bottom: 110px; } }

body .box-margin-special { margin-bottom: 40px; }

@media only screen and (min-width: 300px) and (max-width: 1199px) { body .box-margin-special { margin-bottom: 140px; } }

@media only screen and (min-width: 300px) and (max-width: 1199px) { .hidden-xs-down, .hidden-sm-down { display: none !important; } }

.col-xs-1, .col-sm-1, .col-md-1, .col-lg-1, .col-xs-2, .col-sm-2, .col-md-2, .col-lg-2, .col-xs-3, .col-sm-3, .col-md-3, .col-lg-3, .col-xs-4, .col-sm-4, .col-md-4, .col-lg-4, .col-xs-5, .col-sm-5, .col-md-5, .col-lg-5, .col-xs-6, .col-sm-6, .col-md-6, .col-lg-6, .col-xs-7, .col-sm-7, .col-md-7, .col-lg-7, .col-xs-8, .col-sm-8, .col-md-8, .col-lg-8, .col-xs-9, .col-sm-9, .col-md-9, .col-lg-9, .col-xs-10, .col-sm-10, .col-md-10, .col-lg-10, .col-xs-11, .col-sm-11, .col-md-11, .col-lg-11, .col-xs-12, .col-sm-12, .col-md-12, .col-lg-12 { position: relative; min-height: 1px; padding-right: 10px; padding-left: 10px; }

.row { margin-right: -10px; margin-left: -10px; }

.row-no-padding-right.col { padding-right: 0 !important; }

.row-no-padding-left.col { padding-left: 0 !important; }

.container-fluid { max-width: 1000px; padding-right: 40px; padding-left: 40px; position: relative; margin: 0 auto; }

.row.row-xs-eq { display: table; table-layout: fixed; margin: 0; }

.row.row-xs-eq::before { content: none; }

.row.row-xs-eq::after { content: none; }

.row.row-xs-eq > [class^='col-'] { display: table-cell; float: none; padding: 0; }

@media (min-width: 768px) { .row.row-sm-eq { display: table; table-layout: fixed; margin: 0; }
  .row.row-sm-eq::before { content: none; }
  .row.row-sm-eq::after { content: none; }
  .row.row-sm-eq > [class^='col-'] { display: table-cell; float: none; padding: 0; } }

@media (min-width: 992px) { .row.row-md-eq { display: table; table-layout: fixed; margin: 0; }
  .row.row-md-eq::before { content: none; }
  .row.row-md-eq::after { content: none; }
  .row.row-md-eq > [class^='col-'] { display: table-cell; float: none; padding: 0; } }

@media (min-width: 1200px) { .row.row-lg-eq { display: table; table-layout: fixed; margin: 0; }
  .row.row-lg-eq::before { content: none; }
  .row.row-lg-eq::after { content: none; }
  .row.row-lg-eq > [class^='col-'] { display: table-cell; float: none; padding: 0; } }

.float-right { float: right; }

.float-left { float: left; }

.align-vertical-middle { vertical-align: middle; }

@media only screen and (min-width: 300px) and (max-width: 1199px) { .sm-hide { display: none; } }

@media only screen and (min-width: 1200px) { .lg-hide { display: none; } }

.select2-selection--single { border: 2px solid white; padding: 10px !important; height: auto !important; }

.content .select2.select2-container.select2-container--custom-option-select, .content span.select2 { width: 100% !important; }

.select2-selection--single { -webkit-transition: background-color 240ms linear; transition: background-color 240ms linear; -moz-transition: background-color 240ms linear; -o-transition: background-color 240ms linear; }

.select2-selection__rendered:after { border: solid white; border-width: 0 2px 2px 0; display: inline-block; padding: 5px; content: ""; position: absolute; transform: rotate(45deg); -webkit-transform: rotate(45deg); right: 20px; top: 16px; }

.select2-container--open .select2-selection__rendered:after { transform: rotate(-135deg); -webkit-transform: rotate(-135deg); top: 23px; }

.select2-selection--single[aria-expanded="true"], .active-col .select2-selection--single, .single-select .select2-container--below .select2-selection--single, .single-select .select2-container--above .select2-selection--single { background: white; color: black; }

.select2-selection--single[aria-expanded="true"] .select2-selection__rendered:after, .active-col .select2-selection--single .select2-selection__rendered:after, .single-select .select2-container--below .select2-selection--single .select2-selection__rendered:after, .single-select .select2-container--above .select2-selection--single .select2-selection__rendered:after { border: solid black; border-width: 0 2px 2px 0; display: inline-block; padding: 5px; content: ""; position: absolute; }

.image-radios .select2 { margin-top: 12px; }

.select2-search__field { display: none; }

span.select2-dropdown { padding: 2px 13px 8px 13px; border: 0; border-radius: 0; }

span.select2-dropdown.select2-dropdown--above { margin-top: -1px; }

span.select2-dropdown.select2-dropdown--below { margin-top: 1px; }

span.select2-container.select2-container--custom-option-select.select2-container--open { width: auto !important; }

@media only screen and (min-width: 300px) and (max-width: 1199px) { .select2-selection--single { padding: 19px 16px 20px 16px !important; font-size: 32px; }
  .select2-selection__rendered:after { border: solid white; border-width: 0 2px 2px 0; display: inline-block; padding: 5px; content: ""; position: absolute; transform: rotate(45deg); -webkit-transform: rotate(45deg); right: 20px; top: 36px; }
  .select2-container--open .select2-selection__rendered:after { transform: rotate(-135deg); -webkit-transform: rotate(-135deg); top: 44px; }
  .select2-results__option { font-size: 32px; } }

.large-bg-image-theme { background: url("../../images/Hintergrund_Bild.png") no-repeat; background-size: cover; }

.large-bg-image-theme .startscreen-tiles a { display: block; position: relative; }

@media only screen and (min-width: 1200px) { .large-bg-image-theme .startscreen-tiles a { min-height: 450px; } }

.large-bg-image-theme .startscreen-tiles img { width: 100%; border: 5px solid white; }

@media only screen and (min-width: 1200px) { .large-bg-image-theme .startscreen-tiles img { position: absolute; left: 0; -webkit-transition: opacity 300ms ease-in-out; transition: opacity 300ms ease-in-out; }
  .large-bg-image-theme .startscreen-tiles img.hover:hover { opacity: 0; } }

@media only screen and (min-width: 300px) and (max-width: 1199px) { .large-bg-image-theme .startscreen-tiles img { display: none; }
  .large-bg-image-theme .startscreen-tiles img.hover { display: block; } }

html { min-height: 100%; }

body { background-size: cover; margin: 0; font-family: "MontserratRegular"; font-size: 18px; height: 100%; }

@media only screen and (min-width: 300px) and (max-width: 1199px) { body { font-size: 32px; } }

.content { padding-top: 90px; color: white; }

.content a { color: #fff; text-decoration: underline; }

.content a:hover { text-decoration: none; }

.wrap { min-height: 100%; margin-bottom: -100px; }

.footer, .push { height: 100px; }

.content-splitter { background: white; width: 100%; height: 1px; }

.cta { margin-left: 80px; background-color: rgba(28, 28, 28, 0.7); border: 4px solid white; display: block; padding: 20px 0; text-decoration: none !important; }

.cta:hover { background: white; color: black; }

@media only screen and (min-width: 300px) and (max-width: 1199px) { .cta { margin-left: 0; } }

.cta .content-splitter { height: 1px; width: 100%; background: white; }

.thankyou { height: 100vh; }

.thankyou .thankyou-hook { margin-left: auto; margin-right: auto; width: 160px; display: block; }

textarea { background: #3e3e3e; border: 2px solid white; padding: 10px 16px; color: white; width: 100% !important; border-radius: 0; }

input[type="text"], input[type="password"], input[type="email"] { background: #3e3e3e; padding: 10px 12px; color: white; border: 2px solid white; width: 100%; }

.file-input-wrapper input { opacity: 0; height: 45px; }

.file-input-wrapper:before { position: absolute; width: 150px; border: 2px solid white; height: 48px; width: 295px; content: "Durchsuchen"; padding: 10px 17px; cursor: pointer; }

#fileList { margin-top: 32px; position: relative; margin-left: 0; padding: 0; }

#fileList li { position: relative; color: #6f6f6f; list-style: none; }

#fileList .delete-upload:after { content: "X"; position: absolute; right: 0; cursor: pointer; top: 0; }

.input-amount { border: 0 !important; color: white; background: #3e3e3e; font-size: 60px; font-family: "MontserratBold"; width: 100%; padding: 0; margin: 0; letter-spacing: 2px; }

.fake-radio input[type="radio"] { opacity: 0; position: absolute; }

.fake-radio input[type="radio"]:checked + label:before { background: white; content: ""; }

.fake-radio label { position: relative; width: 24px; height: 24px; margin-right: 60px; padding-left: 32px; }

.fake-radio label:before { width: 24px; height: 24px; cursor: pointer; content: ""; border-radius: 50%; position: absolute; border: 2px solid white; left: 0; }

.fake-checkbox input[type="checkbox"] { opacity: 0; }

.fake-checkbox input[type="checkbox"]:checked + label:before { content: "✓"; position: absolute; width: 20px; height: 20px; left: 7px; }

.fake-checkbox label { margin-left: 12px; }

.fake-checkbox label:before { content: " "; position: absolute; width: 20px; height: 20px; border: 2px solid white; left: 7px; }

*:focus { outline: none; }

.paypal-button-bg { background-color: #eee; height: 50px; }

.paypal-button-bg #paypal-button-container { width: 100%; overflow: hidden; padding: 8px 0; }

@media only screen and (min-width: 300px) and (max-width: 991px) { .paypal-button-bg { height: 100px; padding: 16px 0; margin: 25px 0; } }

@media only screen and (min-width: 992px) and (max-width: 1199px) { .paypal-button-bg { height: 100px; padding: 16px 0; }
  .paypal-button-bg #paypal-button-container { padding: 18px 0; } }

.error-label { color: #980000; padding-left: 0 !important; }

@media only screen and (min-width: 300px) and (max-width: 1199px) { .paypal-button-wrap { background: #eee; height: 80px; }
  .paypal-button-wrap #paypal-button-container { margin-top: 16px; }
  textarea { font-size: 32px; }
  .file-input-wrapper input { opacity: 0; height: 89px; }
  .file-input-wrapper:before { height: 89px; width: 100%; content: "Durchsuchen"; padding: 19px 16px 20px 16px !important; font-size: 32px; }
  #fileList li { font-size: 32px; }
  .submit { height: 80px; width: 300px; }
  input[type="text"], input[type="password"], input[type="email"] { padding: 14px 16px 18px 16px; }
  .fake-radio label { position: relative; width: 50px; height: 50px; margin-right: 110px; padding: 2px 0 0 65px; font-size: 32px; }
  .fake-radio label:before { width: 50px; height: 50px; cursor: pointer; content: ""; border-radius: 50%; position: absolute; border: 2px solid white; left: 0; top: -1px; }
  .fake-checkbox input[type="checkbox"] { opacity: 0; }
  .fake-checkbox input[type="checkbox"]:checked + label:before { content: "✓"; position: absolute; width: 40px; height: 40px; left: 7px; }
  .fake-checkbox label { margin-left: 60px; font-size: 32px; }
  .fake-checkbox label:before { content: " "; position: absolute; width: 40px; height: 40px; border: 2px solid white; left: 7px; } }

.btn.btn-default.submit { width: 100%; height: 50px; border: 2px solid white; background: #3e3e3e; color: white; border-radius: 0; text-decoration: none; font-family: "Montserrat"; font-size: 1.8rem; line-height: 3.5rem; }

@media only screen and (min-width: 300px) and (max-width: 1199px) { .btn.btn-default.submit { font-size: 3rem; height: 100px; font-family: "Montserrat"; line-height: 9rem; } }

.btn.btn-default.submit:hover { background: #fff; color: #3e3e3e; }

.submit { width: 100%; height: 50px; border: 2px solid white; background: #3e3e3e; color: white; border-radius: 0; text-decoration: none; font-family: "Montserrat"; font-size: 1.8rem; line-height: 3.6rem; }

.submit:hover { background: #fff; color: #3e3e3e; }

.footer { border-top: 2px solid white; height: 100px; text-align: center; }

.footer:before { content: ""; position: absolute; top: -5px; width: 28px; left: 39px; height: 6px; background: url(../../images/footer_foot.png) no-repeat; }

.footer:after { content: ""; position: absolute; top: -5px; right: 39px; width: 28px; height: 6px; background: url(../../images/footer_foot_right.png) no-repeat; }

.footer a { font-family: "MontserratRegular"; color: #fff; font-size: 20px; margin-top: 10px; display: inline-block; margin-right: 20px; }

@media only screen and (min-width: 300px) and (max-width: 1199px) { .footer a { font-size: 40px; margin-top: 20px; } }

.header { height: 150px; background-color: rgba(28, 28, 28, 0.7); }

.header .logo { display: block; margin: 0 auto; width: 300px; height: 91px; padding-top: 27px; }

@media only screen and (min-width: 300px) and (max-width: 1199px) { .header .logo { width: 600px; height: 180px; } }

@media only screen and (min-width: 300px) and (max-width: 1199px) { .header { height: 260px; } }

.productpage-theme { background: url("../../images/Header_Bild.png") no-repeat; background-color: #3e3e3e; background-size: 100% 500px !important; }

@media only screen and (min-width: 300px) and (max-width: 1199px) { .productpage-theme { background-image: url("../../images/Header_Bild-mobile.png"); background-size: auto !important; } }

@media only screen and (min-width: 300px) and (max-width: 1199px) { .productpage-theme { height: 100% !important; } }

.productpage-theme .streich-preis-wrapper { display: none; }

.productpage-theme .streich-preis-wrapper .streich-price { font-size: 48px; font-family: "MontserratBold"; position: relative; text-align: right; display: inline; float: right; padding: 0 20px; }

.productpage-theme .streich-preis-wrapper .streich-price.active:before { width: 100%; height: 6px; background: red; position: absolute; content: ""; left: 0; -webkit-transform: rotate(-10deg); transform: rotate(-10deg); top: 30px; opacity: 0.8; }

.productpage-theme .streich-preis-wrapper .streichpreis-label { clear: both; }

.productpage-theme .image-header { height: 350px; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; }

.productpage-theme h2 { position: relative; color: white; font-size: 60px; font-family: "MontserratBold"; line-height: 78px; margin: auto; text-align: center; }

.productpage-theme h3 { font-size: 24px; border-bottom: 1px solid white; display: inline-block; padding-bottom: 8px; color: white; margin: 0 0 80px 0; }

.productpage-theme h4 { font-family: "MontserratBold"; font-size: 24px; margin-bottom: 30px; }

.productpage-theme .content { position: relative; padding-top: 0; color: white; }

.productpage-theme .image-radios .radio-col { cursor: pointer; }

.productpage-theme .image-radios input { display: none; }

.productpage-theme .image-radios img { width: 100%; border: 2px solid white; }

.productpage-theme .image-radios img.active { display: none; }

.productpage-theme form .colors input { opacity: 0; position: absolute; }

.productpage-theme form .colors input:checked + label:after { width: 40px; height: 40px; cursor: pointer; content: ""; border-radius: 50%; position: absolute; border: 2px solid white; background: transparent; left: 0; }

.productpage-theme form .colors label { position: relative; width: 40px; height: 40px; margin-right: 35px; }

.productpage-theme form .colors label:before { width: 40px; height: 40px; cursor: pointer; content: ""; border-radius: 50%; position: absolute; border: 0 none; }

.productpage-theme form .colors label.mc_red:before { background: #980000; }

.productpage-theme form .colors label.mc_yellow:before { background: #d5b900; }

.productpage-theme form .colors label.mc_green:before { background: #0ca600; }

.productpage-theme form .colors label.mc_blue:before { background: #211898; }

.productpage-theme form .colors label.mc_white:before { background: #e7e7e7; }

.productpage-theme form .colors label.mc_black:before { background: #000; }

.productpage-theme form .colors label.mc_grey:before { background: #8d8d8d; }

.productpage-theme .summary { border-bottom: 1px solid white; padding-bottom: 24px; }

.productpage-theme .summary div { display: table; }

.productpage-theme .summary div span { text-align: left; width: 100%; display: block; vertical-align: top; display: table-cell; padding-left: 60px; display: table-cell; font-family: "MontserratLight"; }

.productpage-theme .summary div div { font-family: "MontserratMedium"; width: 122px; }

.productpage-theme .table-box-label { width: 200px; display: inline-block; }

@media only screen and (min-width: 300px) and (max-width: 1199px) { .productpage-theme h2 { font-size: 68px; line-height: 88px; }
  .productpage-theme h4 { font-size: 50px; }
  .productpage-theme .form-header, .productpage-theme h3 { font-size: 34px; }
  .productpage-theme .colors { height: 80px; }
  .productpage-theme .colors input:checked + label:after { width: 80px !important; height: 80px !important; cursor: pointer; content: ""; }
  .productpage-theme .colors label { width: 80px !important; height: 80px !important; }
  .productpage-theme .colors label:before { width: 80px !important; height: 80px !important; content: ""; }
  .productpage-theme .summary { font-size: 32px; }
  .productpage-theme .summary div div { width: 250px; }
  .productpage-theme .table-box-label { width: 280px; }
  .productpage-theme .image-header { height: 630px; } }
