/* COLORS */
/* TRANSITIONS */
/* FIXED SIZE */
/******************
** START MIXINs **
******************/
/******************
** END MIXINs **
******************/
@keyframes fadein {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }
/* Firefox < 16 */
@-moz-keyframes fadein {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }
/* Safari, Chrome and Opera > 12.1 */
@-webkit-keyframes fadein {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }
/* Internet Explorer */
@-ms-keyframes fadein {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }
@font-face {
  font-family: 'hq';
  /*a name to be used later*/
  src: url("../fonts/hq.ttf");
  /*URL to font*/ }
* {
  margin: 0;
  font-family: hq; }

html {
  max-width: 100vw;
  overflow-x: hidden;
  -webkit-overflow-scrolling: touch; }

body {
  max-width: 100vw;
  overflow-x: hidden;
  -webkit-overflow-scrolling: touch;
  min-height: 100vh;
  color: #000000; }

a {
  text-decoration: none;
  color: #888;
  -webkit-transition: 0.2s;
  -moz-transition: 0.2s;
  -o-transition: 0.2s;
  transition: 0.2s; }

a:hover {
  color: #000000;
  text-decoration: underline;
  cursor: pointer; }

a.svg {
  position: relative;
  display: inline-block; }

a.svg:after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0; }

a.bigBtn, a.no-underline, a.btn {
  text-decoration: none !important; }

h1,
h2.head1,
span.head1 {
  color: #000000;
  font-size: 1.6em;
  letter-spacing: 2px;
  text-transform: uppercase;
  font-weight: bold; }

h2 {
  color: #000000;
  font-size: 1.1em;
  padding-bottom: 5px;
  text-transform: uppercase;
  letter-spacing: 1px; }

h3 {
  font-size: 1em; }

h1.large,
h2.head1.large {
  font-size: 3em; }

h2 .large {
  font-size: 1.9em; }

h1.noPadding,
h2.head1.noPadding {
  padding: 0 !important; }

h1.noMargin,
h2.head1.noMargin {
  margin: 0 !important; }

.white {
  color: #fff; }

h1.inline,
h2.head1.inline,
span.head1.inline {
  display: inline-block;
  margin: 0 !important;
  padding: 0 !important;
  font-size: 1.2em; }

.smallLetter {
  text-transform: none !important; }

input {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none; }

.outer {
  width: 100%;
  min-width: 100vw; }

.noMargin {
  margin: 0 !important; }

/********************
****** FLEXBOX ******
********************/
body,
.startButton,
.toggleButtons,
.buttonBox,
.produktImgContent,
.produktImgBox,
.produktImgBox,
.produktbeschreibungItem,
.produktbeschreibungBox,
.imageBox,
.imageBoxItem,
.produktbeschreibung,
.mainKonfigurator .arrowContainer,
.konfigurator_wrapper,
.progressText,
.kasseAgbs,
.warenkorbItem,
.addPickElement,
.konfiguratorGallerySlider,
.faqFrage,
.konfigurator .konfigurator_menu .konfigurator_main_menu .bottom_navigation .button,
.konfigurator .konfigurator_menu .konfigurator_main_menu .bottom_navigation,
.konfigurator .konfigurator_menu .konfigurator_main_menu .box .auswahl_boxen .auswahl_box .modulbox,
.konfigurator .konfigurator_menu .konfigurator_main_menu .box .auswahl_boxen .auswahl_box,
.konfigurator .konfigurator_menu .konfigurator_main_menu .konfigurator_menus .konfigurator_menu_nav,
.konfigurator .konfigurator_menu .konfigurator_main_menu .konfigurator_menus,
.konfigurator .konfigurator_menu .konfigurator_main_menu,
.konfigurator .konfigurator_menu .tab.active,
.konfigurator .konfigurator_menu .tab,
.konfigurator .konfigurator_menu .konfigurator_menu_top_nav,
.konfigurator .konfigurator_menu,
.konfigurator .canvas .mainKonfigurator .preisbox .preisbox_buttons,
.konfigurator .canvas .mainKonfigurator .preisbox,
.konfigurator .canvas .mainKonfigurator,
.konfigurator .canvas,
.konfigurator .canvas .konfiguratorGallery,
.konfigurator .canvas .canvasContainer,
.konfigurator,
.kasseSumme,
.kasseSummeContainer,
.kasseLieferdatenEnde,
.kasseBestellenBottom,
.formRight,
.formLeft,
#kasseLieferadresseContainer,
.progressBar .progressBarLine,
.progressBar .progressBarIcon,
.progressBar,
#kasseLogin,
.kasseButtonsContainer,
.iconsColumn,
.kasseTable .imageTd,
.textPageItem,
.textPageContent,
.textPageContainer,
.screenImgRow,
.screenItem,
.screenContainer,
.fullImgContainer .arrow,
.fullImgContainer .content .text,
.fullImgContainer .content,
.bestellungenProduct,
.bestellungenProductsBox,
.bestellungenBottom,
.rememberMeBox,
.defaultForm .multirowItem,
.defaultForm .multirow,
.defaultForm,
.loginContainer.active,
.footerGroup,
footer,
.warenkorbButton,
header .headerRight,
header .logo a.svg,
header .logo,
header .header-button.profileBtnClicked #closeProfileMenu,
header .header-button.profileBtn .loginIcon,
header .header-button,
header,
#toast,
.mainContent,
.buttonBar,
.wrapper,
.screenSmallImg,
.flexContainer {
  display: -webkit-box;
  /* OLD - iOS 6-, Safari 3.1-6, BB7 */
  display: -ms-flexbox;
  /* TWEENER - IE 10 */
  display: -webkit-flex;
  /* NEW - Safari 6.1+. iOS 7.1+, BB10 */
  display: flex;
  /* NEW, Spec - Firefox, Chrome, Opera */
  flex-shrink: 0;
  -webkit-flex-shrink: 0;
  -ms-flex-shrink: 0; }

.toggleButtons,
.produktImgBox,
.produktbeschreibungBox,
.imageBox,
.mainKonfigurator .arrowContainer,
.progressText,
.kasseAgbs,
.warenkorbItem,
.konfiguratorGallerySlider,
.faqFrage,
.konfigurator .konfigurator_menu .konfigurator_main_menu .bottom_navigation .button,
.konfigurator .konfigurator_menu .konfigurator_main_menu .bottom_navigation,
.konfigurator .konfigurator_menu .konfigurator_main_menu .box .auswahl_boxen,
.konfigurator .konfigurator_menu .konfigurator_main_menu .konfigurator_menus,
.konfigurator .konfigurator_menu .konfigurator_menu_top_nav,
.konfigurator .canvas .mainKonfigurator .preisbox .preisbox_buttons,
.konfigurator .canvas .mainKonfigurator,
.konfigurator .canvas .konfiguratorGallery,
.konfigurator .canvas .canvasContainer,
.kasseSumme,
.kasseSummeContainer,
.kasseLieferdatenEnde,
.kasseBestellenBottom,
#kasseLieferadresseContainer,
.progressBar,
.kasseButtonsContainer,
.kasseTable .imageTd,
.textPageContent,
.screenImgRow,
.screenContainer,
.bestellungenProduct,
.bestellungenBottom,
.rememberMeBox,
.defaultForm .multirow,
footer,
header .headerRight,
header,
#toast,
.buttonBar,
.flexRow {
  flex-direction: row;
  -webkit-flex-direction: row;
  -ms-flex-direction: row; }

body,
.startButton,
.buttonBox,
.produktImgContent,
.produktbeschreibungItem,
.imageBoxItem,
.produktbeschreibung,
.addPickElement,
.konfigurator .konfigurator_menu .konfigurator_main_menu .box .auswahl_boxen .auswahl_box .modulbox,
.konfigurator .konfigurator_menu .konfigurator_main_menu .box .auswahl_boxen .auswahl_box,
.konfigurator .konfigurator_menu .konfigurator_main_menu .konfigurator_menus .konfigurator_menu_nav,
.konfigurator .konfigurator_menu .konfigurator_main_menu,
.konfigurator .konfigurator_menu .tab,
.konfigurator .konfigurator_menu,
.konfigurator .canvas .mainKonfigurator .preisbox,
.konfigurator .canvas,
.konfigurator,
.konfigurator_wrapper,
.formRight,
.formLeft,
.progressBar .progressBarLine,
.progressBar .progressBarIcon,
#kasseLogin,
.iconsColumn,
.textPageContainer,
.screenItem,
.fullImgContainer .content .text,
.fullImgContainer .content,
.bestellungenProductsBox,
.defaultForm .multirowItem,
.defaultForm,
.loginContainer,
.footerGroup,
.warenkorbButton,
.mainContent,
#modal,
.wrapper,
.screenSmallImg,
.flexColumn {
  flex-direction: column;
  -webkit-flex-direction: column;
  -ms-flex-direction: column; }

.produktbeschreibung,
.konfigurator,
.konfigurator .canvas,
.konfigurator .canvas .konfiguratorGallery,
.konfigurator .konfigurator_menu,
.progressBar .progressBarIcon,
.textPageItem:first-child,
.bestellungenBottom,
.flexLeft {
  justify-content: flex-start;
  -webkit-justify-content: flex-start;
  -ms-justify-content: flex-start; }

.startButton,
.produktImgBox,
.kasseAgbs,
.warenkorbItem.betrag,
.warenkorbItem.summe,
.konfigurator .canvas .mainKonfigurator .preisbox,
.kasseSummeContainer,
header .headerRight,
.flexRight {
  justify-content: flex-end;
  -webkit-justify-content: flex-end;
  -ms-justify-content: flex-end; }

.toggleButtons,
.mainKonfigurator .arrowContainer,
.buttonBox,
.produktImgContent,
.produktbeschreibungItem,
.produktbeschreibungBox,
.imageBoxItem,
.imageBox,
.konfigurator .canvas .mainKonfigurator,
.progressText,
.defaultForm .multirowItem,
.addPickElement,
.konfiguratorGallerySlider,
.konfigurator .konfigurator_menu .konfigurator_main_menu .bottom_navigation .button,
.konfigurator .konfigurator_menu .konfigurator_main_menu .box .auswahl_boxen .auswahl_box .modulbox,
.konfigurator .konfigurator_menu .konfigurator_main_menu .konfigurator_menus .konfigurator_menu_nav,
.konfigurator .konfigurator_menu .konfigurator_main_menu,
.konfigurator .konfigurator_menu .tab,
.konfigurator .canvas .mainKonfigurator .preisbox .preisbox_buttons,
.konfigurator .canvas .canvasContainer,
.progressBar .progressBarLine,
#kasseLogin,
.iconsColumn,
.textPageItem,
.screenItem,
.screenContainer,
.fullImgContainer .arrow,
.fullImgContainer .content .text,
.fullImgContainer .content,
.bestellungenProductsBox,
.loginContainer,
.warenkorbButton,
header .logo,
header .header-button,
#toast,
#modal,
.buttonBar,
.screenSmallImg,
.flexCenter {
  justify-content: center;
  -webkit-justify-content: center;
  -ms-justify-content: center; }

.warenkorbItem,
.faqFrage,
.konfigurator .konfigurator_menu .konfigurator_main_menu .bottom_navigation,
.kasseBestellenBottom,
#kasseLieferadresseContainer,
.progressBar,
.textPageContent,
.screenImgRow,
.rememberMeBox,
.defaultForm .multirow,
footer,
header,
.flexSpaceBetween {
  justify-content: space-between;
  -webkit-justify-content: space-between;
  -ms-justify-content: space-between; }

.toggleButtons,
.produktbeschreibungBox,
.imageBox,
.addPickElement,
.kasseLieferdatenEnde,
.kasseBestellenBottom,
#kasseLieferadresseContainer,
.textPageContent,
.bestellungenBottom,
footer,
.flexWrap {
  flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  /* Safari 6.1+ */
  -ms-flex-wrap: wrap; }

.produktImgBox,
.produktbeschreibungItem,
.produktbeschreibung,
.mainKonfigurator .arrowContainer,
.addPickElement,
.konfigurator .konfigurator_menu .konfigurator_main_menu .bottom_navigation .button,
.konfigurator .konfigurator_menu .konfigurator_main_menu .box .auswahl_boxen .auswahl_box,
.konfigurator .konfigurator_menu .konfigurator_main_menu .box .auswahl_boxen,
.konfigurator .konfigurator_menu .konfigurator_main_menu .konfigurator_menus .konfigurator_menu_nav,
.konfigurator .konfigurator_menu .konfigurator_main_menu .konfigurator_menus,
.konfigurator .konfigurator_menu .konfigurator_main_menu,
.konfigurator .canvas .mainKonfigurator,
.konfigurator .konfigurator_menu .tab,
.konfigurator .canvas .canvasContainer,
.konfigurator,
.vorauswahl,
#kasseLogin,
.screenItem,
.fullImgContainer .content .text,
.fullImgContainer .content,
.loginContainer,
header .logo a.svg,
header .logo,
header .header-button,
header,
#toast,
#modal,
.flexAlignCenter {
  align-items: center;
  -webkit-align-items: center;
  /* Safari 6.1+ */
  -ms-align-items: center; }

.screenImgRow,
.konfigurator .canvas,
.konfigurator .konfigurator_menu .konfigurator_menu_top_nav,
.flexAlignStart {
  align-items: flex-start;
  -webkit-align-items: flex-start;
  /* Safari 6.1+ */
  -ms-align-items: flex-start; }

.konfiguratorGallerySlider,
.fullImgContainer .arrow,
.fullImgContainer .content.right,
.flexAlignEnd {
  align-items: flex-end;
  -webkit-align-items: flex-end;
  /* Safari 6.1+ */
  -ms-align-items: flex-end; }

.kasseTable .imageTd,
header .headerRight,
header .headerLeft,
.konfigurator .konfigurator_menu .tab,
.konfigurator .konfigurator_menu .konfigurator_main_menu,
.konfigurator .konfigurator_menu .konfigurator_main_menu .konfigurator_menus,
.konfigurator .konfigurator_menu .konfigurator_main_menu .box .auswahl_boxen .auswahl_box,
.konfigurator .konfigurator_menu .konfigurator_main_menu .bottom_navigation .button,
.konfigurator .konfigurator_menu .konfigurator_main_menu .bottom_navigation .button span,
#kasseLieferadresseContainer,
.formRight,
.formLeft,
.kasseBestellenBottom,
.kasseLieferdatenEnde,
.kasseSummeContainer,
.kasseSumme,
#kasseLogin button,
.kasseAlsGastBestellen,
.kasseButtons,
.textPageContent,
.textPageItem,
.buttonBar .buttonBarItem,
.footerGroup,
.defaultForm .multirowItem,
.bestellungenBottom,
.bestellungenBottomItem,
.flexSpacer,
.fullImgContainer,
.fullImgContainer .content .text,
.screenItem,
.screenSmallImg,
.flexItem {
  flex: 1;
  -webkit-flex: 1;
  /* Safari 6.1+ */
  -ms-flex: 1; }

.flexGap {
  flex: 0 0 10px;
  -webkit-flex: 0 0 10px;
  /* Safari 6.1+ */
  -ms-flex: 0 0 10px; }

.flexGapBig {
  flex: 0 0 30px;
  -webkit-flex: 0 0 30px;
  /* Safari 6.1+ */
  -ms-flex: 0 0 30px; }

/********************
***** FLEXBOX END ***
********************/
.btnUnderImg,
.vorauswahl,
.progressBar,
.bestelldetailsRow,
.konfigurator .konfigurator_menu .konfigurator_main_menu .bottom_navigation .button,
.konfigurator .konfigurator_menu .konfigurator_main_menu .box .boxContent,
.konfigurator .konfigurator_menu .konfigurator_main_menu .box .subBoxContent,
.konfigurator .canvas .mainKonfigurator .preisbox .kaufenBtn,
.konfigurator,
.textPageContainer,
.screenItem,
.screenContainer,
.fullImgContainer,
.fullImgContainer .content,
.defaultForm input,
header,
.borderBox,
.pseudoInput,
.mainContent,
.borderBoxSizing {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }

.onlyMobile,
.addPickElement,
.faqAnswer,
.konfigurator .konfigurator_menu .konfigurator_main_menu .box .boxContent,
.konfigurator .konfigurator_menu .konfigurator_main_menu .box .subBoxContent,
.konfigurator .konfigurator_menu .konfigurator_main_menu .box,
.konfigurator .konfigurator_menu .tab,
.gutscheinForm,
#profileMenu,
.radioCheckmark:after,
#register,
.loginContainer,
header .header-button .loginIcon,
header .header-button.profileBtnClicked .loginBtn,
header .header-button.profileBtn .loginBtn,
header .header-button.profileBtn.profileBtnClicked .loginIcon,
header #closeProfileMenu,
.preload,
.preloadModal,
#loading,
#modal,
#pickerContainer,
.hidden {
  display: none; }

button:hover {
  cursor: pointer; }

.btn {
  font-size: 16px;
  background-color: #000000;
  padding: 10px;
  text-transform: uppercase;
  text-align: center;
  margin: 10px;
  border: none;
  color: #fff;
  -webkit-transition: 0.2s;
  -moz-transition: 0.2s;
  -o-transition: 0.2s;
  transition: 0.2s;
  line-height: 20px; }

.btn:hover {
  background-color: #888;
  color: #fff;
  cursor: pointer; }

.btn:disabled {
  background-color: #ddd; }

.btnBorder {
  background-color: transparent;
  color: #000000;
  border: 1pt solid #000000; }

.btnBorder:hover {
  border-color: #888; }

.bigBtn {
  padding: 20px;
  letter-spacing: 2px; }

.buttonBar {
  width: 100%;
  text-align: center;
  margin-top: 20px; }

.buttonBar .buttonBarItem {
  text-align: center; }

.buttonBar .btn {
  width: 90%;
  margin: 0 2px !important; }

#pickerContainer,
#loading, #modal {
  position: fixed;
  width: 100vw;
  height: 100vh;
  top: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.5);
  opacity: 1;
  overflow: auto; }

#modal, #pickerContainer {
  z-index: 999; }

#loading {
  z-index: 1000; }

#loading img {
  margin: auto;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  width: 50px; }

#modal_content h2 {
  padding-bottom: 10px; }

#pickerContainer .pickerInnerDiv,
.modal_box {
  position: relative;
  width: auto;
  height: auto;
  background-color: #fff;
  margin: 5px;
  padding: 30px;
  position: relative;
  min-width: 200px;
  max-width: 500px;
  overflow: auto; }

.modal_box.editMode {
  max-width: 100% !important; }

.preloadModal.open {
  display: block; }

#pickerContainer .pickerInnerDiv {
  max-width: 100vw !important; }

#pickerContainer img {
  border: 1pt solid #888; }

.addPickElement {
  margin: 10px; }

.modal_box .closeModalBtn {
  font-size: 1.2em;
  position: absolute;
  top: 0;
  right: 0;
  padding: 5px 10px;
  background-color: #fff;
  border: none; }

.mainContent {
  flex: 1 0 auto;
  -webkit-flex: 1 0 auto;
  /* Safari 6.1+ */
  -ms-flex: 1 0 auto;
  border-top: 1pt solid #888;
  overflow-x: hidden;
  position: relative; }

.mainContent.transparentHeader {
  border: none;
  min-height: 100vh;
  margin-top: -80px;
  padding-top: 80px; }

.mainContent h2 {
  color: #000000;
  padding: 5px 0; }

.pseudoInput {
  font-size: 1em;
  width: 100%;
  padding: 10px;
  border: 1pt solid #888;
  color: #cccccc;
  min-width: 300px; }

#toast {
  width: 100vw;
  position: fixed;
  z-index: 9999;
  text-align: center;
  bottom: 100vh;
  top: -50vh;
  -webkit-transition: all 0.2s;
  -moz-transition: all 0.2s;
  -o-transition: all 0.2s;
  transition: all 0.2s; }

#toast #toast_content {
  font-size: 1.2em;
  background-color: #000000;
  color: #fff;
  padding: 10px;
  margin-top: 20px; }

table {
  border-collapse: collapse; }

table.subTable {
  background-color: #f8f8f8; }

thead td {
  border: none;
  font-size: 1.1em;
  font-weight: bold; }

.warenkorbItem,
.tdDiv,
td {
  padding: 20px;
  border-top: 1pt solid #888; }

td.noPadding {
  padding-top: 0;
  padding-bottom: 0; }

td.preis {
  text-align: right; }

tr.summe {
  text-align: right;
  font-weight: bold;
  text-transform: uppercase;
  font-size: 1.1em; }

.clickable-row:hover {
  cursor: pointer;
  background-color: #ddd; }

tr.hiddenRow {
  display: none; }

input[type="text"]:disabled {
  background-color: #f8f8f8;
  color: #888; }

.clickable:hover {
  cursor: pointer; }

.borderBox {
  padding: 50px;
  border: 1pt solid #000000; }

.borderBox h1:first-of-type,
.borderBox h2.head1:first-of-type {
  margin-bottom: 10px; }

.alignRight {
  text-align: right; }

.alignCenter {
  text-align: center; }

.spaceTop {
  margin-top: 20px; }

.fullWidth {
  width: 100% !important;
  max-width: 100% !important; }

.noBorder {
  border: none !important; }

.noPadding {
  padding: 0 !important; }

.bigText {
  font-size: 1.2em;
  color: #888;
  line-height: 2em; }

.bigText h1.inline,
.bigText h2.head1.inline,
.bigText span.head1.inline {
  color: #888; }

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

.faqKategorie {
  margin-bottom: 20px; }

.faqFrage span {
  font-weight: bold; }

.faqAnswer {
  padding: 20px; }

.storno {
  color: #c21111; }

.svgPrev {
  width: 30px; }

#svgPreview {
  width: 100%;
  text-align: center; }

#svgPreview svg .colorChangeStrokeSVG,
.svgPrev svg .colorChangeStrokeSVG {
  stroke: #000000 !important; }

.produktActiveWarnung,
.editModeLabel,
.editRefreshLabel {
  background-color: #000000;
  color: #fff;
  position: fixed;
  padding: 10px;
  text-align: center;
  z-index: 99; }

.editModeLabel {
  width: 500px;
  bottom: 0;
  left: 50%;
  margin-left: -250px; }

.produktActiveWarnung {
  background-color: #c21111;
  color: #fff;
  left: 0;
  top: 0; }

.editRefreshLabel {
  background-color: #c21111 !important;
  left: 0;
  top: 50%;
  display: none; }

.editRefreshLabel a:hover,
.editModeLabel a:hover {
  color: #fff; }

.screenContainer {
  background-color: #fff;
  height: auto;
  min-height: 0;
  width: 100%; }

.rotationInfo {
  width: 100vw;
  height: 100vh;
  position: fixed;
  left: 0;
  top: 0;
  background-color: #000000;
  color: #fff;
  z-index: 999;
  text-align: center;
  display: none; }

.rotationInfoInner {
  margin: auto;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  width: 300px;
  height: 400px;
  max-height: 90vh;
  text-transform: uppercase; }

.rotationInfo svg {
  width: 300px;
  height: 300px;
  max-width: 60vw;
  max-height: 60vw; }

.maxWidthContent {
  max-width: 1400px !important;
  margin-left: auto;
  margin-right: auto; }

/******************
* TOOLTIP *
*******************/
.tooltip {
  width: 100%;
  position: relative;
  display: inline-block; }

.tooltip .tooltiptext {
  visibility: hidden;
  width: 140px;
  background-color: #555;
  color: #fff;
  text-align: center;
  -moz-border-radius: 6px;
  -webkit-border-radius: 6px;
  border-radius: 6px;
  -khtml-border-radius: 6px;
  padding: 5px;
  position: absolute;
  z-index: 1;
  bottom: 120%;
  left: 50%;
  margin-left: -75px;
  opacity: 0;
  -webkit-transition: opacity 0.3s;
  -moz-transition: opacity 0.3s;
  -o-transition: opacity 0.3s;
  transition: opacity 0.3s; }

.tooltip .tooltiptext::after {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -5px;
  border-width: 5px;
  border-style: solid;
  border-color: #555 transparent transparent transparent; }

.tooltip:hover .tooltiptext {
  visibility: visible;
  opacity: 1; }

/******************
* ENDE TOOLTIP *
*******************/
/******************
* HEADER *
*******************/
header {
  width: 100%;
  position: relative;
  padding: 10px;
  height: 80px;
  min-height: 80px;
  background-color: #fff;
  z-index: 98; }

header.transparentHeader {
  background-color: transparent !important;
  border: none; }

header .header-button {
  position: relative;
  left: 0;
  width: 50px;
  height: 50px;
  border: 1pt solid #000000;
  font-size: 0.9em;
  color: #000000;
  -webkit-transition: 0.5s;
  -moz-transition: 0.5s;
  -o-transition: 0.5s;
  transition: 0.5s;
  text-transform: uppercase; }

header #closeProfileMenu {
  font-size: 1.5em; }

header .header-button:hover {
  cursor: pointer;
  -webkit-transform: rotate(360deg);
  -ms-transform: rotate(360deg);
  transform: rotate(360deg); }

header .profileBtnClicked {
  background-color: #888;
  color: #fff;
  border: none; }

header .profileBtnClicked:hover,
header .profileBtn:hover {
  transform: none; }

.menu-close {
  /* close button */
  color: #fff;
  font-size: 2em;
  z-index: 999;
  border: none;
  position: fixed;
  top: 0;
  left: -50px;
  -webkit-transition: all 0.5s;
  -moz-transition: all 0.5s;
  -o-transition: all 0.5s;
  transition: all 0.5s;
  padding: 10px; }

.menu-close:hover {
  cursor: pointer;
  color: #888; }

header .logo a.svg {
  width: 200px;
  height: auto; }

header .logo img {
  height: 32px;
  width: auto; }

.warenkorbButton {
  margin-right: 20px;
  width: 15px;
  background: url("../images/warenkorb.svg") no-repeat center center; }

.warenkorbButton:hover {
  text-decoration: none; }

.warenkorbButton:hover > .warenkorbAnzahl {
  font-weight: bold; }

.warenkorbButton .warenkorbAnzahl {
  margin-top: 5px;
  text-align: center;
  color: #fff;
  font-size: 0.7em; }

/******************
* HEADER ENDE *
*******************/
/******************
* FOOTER *
*******************/
footer {
  background-color: #ddd;
  color: #000000;
  padding: 10px 20px;
  line-height: 25px;
  margin-top: 20px; }

.footerGroup {
  padding: 20px; }

.paymentLogo {
  height: 20px;
  width: 50px;
  float: left;
  margin: 3px;
  padding: 5px;
  text-align: center;
  font-size: 100%; }

.paymentLogo img {
  max-width: 100%;
  max-height: 100%; }

/******************
* FOOTER ENDE *
*******************/
/******************
* NAVIGATION *
*******************/
.side-menu-wrapper {
  /* style menu wrapper */
  overflow: hidden;
  background: #fff;
  position: fixed;
  /* Fixed position */
  top: 0;
  left: -300px;
  /* Sidebar initial position. "right" for right positioned menu */
  height: 100%;
  z-index: 999;
  -webkit-transition: 0.5s;
  -moz-transition: 0.5s;
  -o-transition: 0.5s;
  transition: 0.5s;
  width: 300px;
  max-width: 85%;
  font: 1.1em "Courier New", Courier, monospace; }

.side-menu-wrapper > ul {
  /* css ul list style */
  list-style: none;
  padding: 0;
  margin: 0;
  overflow-y: auto;
  /* enable scroll for menu items */
  width: 100%;
  /* this width will hide scroll bar */
  height: 95%; }

.side-menu-wrapper > ul > li > a {
  /* links */
  display: block;
  border-bottom: 1px solid #888;
  padding: 20px;
  color: #000000;
  -webkit-transition: 0.2s;
  -moz-transition: 0.2s;
  -o-transition: 0.2s;
  transition: 0.2s;
  text-decoration: none;
  text-align: left;
  text-transform: uppercase; }

.side-menu-wrapper > ul > li > a:hover {
  color: #fff;
  background-color: #000000; }

.side-menu-overlay {
  /* overlay */
  height: 100%;
  width: 0;
  position: fixed;
  z-index: 998;
  top: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.7);
  overflow-y: auto;
  overflow-x: hidden;
  text-align: center;
  opacity: 0;
  -webkit-transition: opacity 1s;
  -moz-transition: opacity 1s;
  -o-transition: opacity 1s;
  transition: opacity 1s; }

/******************
* ENDE NAVIGATION *
******************/
/******************
* LOGIN *
*******************/
.formError {
  color: #c21111;
  padding: 5px 0;
  display: none; }

.loginContainer h1,
.loginContainer h2.head1 {
  text-align: center;
  text-transform: uppercase; }

.registrierenLink {
  margin-top: 20px;
  font-size: 0.7em;
  text-align: center; }

.defaultForm {
  width: 100%;
  min-width: 250px;
  max-width: 400px; }

.defaultForm label {
  color: #000000;
  font-size: 0.9em;
  margin-top: 10px; }

.defaultForm label.checkboxContainer {
  margin-top: 0; }

input[type="text"],
input[type="number"],
.defaultForm input:not([type="submit"]) {
  padding: 10px;
  border: 1pt solid #888;
  font-size: 1em;
  max-width: 400px; }

.defaultForm .multirow {
  max-width: 400px; }

.defaultForm .multirowItem input {
  width: 100%; }

.defaultForm .multirowItem .btn {
  margin: 0 10px; }

.defaultForm .multirowItem.flexLarge {
  flex-grow: 4;
  -webkit-flex-grow: 4;
  -ms-flex-grow: 4; }

.defaultForm .multirowItem input::before {
  content: '';
  border: 1px solid transparent;
  /** pseudo-elements are inline by default **/
  display: block;
  /** same height and width than our column **/
  width: 100%;
  /** position absolute starting at the top and left of our column **/
  position: absolute;
  top: 0;
  left: 0;
  /** we want the pseudo-element to be behind our real column **/
  z-index: -1; }

.defaultForm .submitBtn {
  border: none;
  margin: 20px 0; }

#imageForm,
#farbeForm {
  border: 1pt solid #888;
  padding: 10px; }

.searchform {
  margin: 10px 0; }

.rememberMeBox {
  font-size: .8em;
  margin-top: 10px; }

/*
* CUSTOM CHECKBOX
*/
.checkboxContainer {
  display: block;
  position: relative;
  padding-left: 15px;
  margin-top: 0;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none; }

/* Hide the browser's default checkbox */
.checkboxContainer input {
  position: absolute;
  opacity: 0;
  cursor: pointer; }

.checkboxContainer.marginTop {
  margin-top: 10px !important; }

/* Create a custom checkbox */
.checkmark {
  position: absolute;
  top: 3px;
  left: 0;
  height: 10px;
  width: 10px;
  background-color: #ddd; }

/* On mouse-over, add a grey background color */
.checkboxContainer:hover input ~ .checkmark {
  background-color: #cccccc; }

/* When the checkbox is checked, add a blue background */
.checkboxContainer input:checked ~ .checkmark {
  background-color: #000000; }

/* Create the checkmark/indicator (hidden when not checked) */
.checkmark:after {
  content: "";
  position: absolute;
  display: none; }

/* Show the checkmark when checked */
.checkboxContainer input:checked ~ .checkmark:after {
  display: block; }

/* Style the checkmark/indicator */
.checkboxContainer .checkmark:after {
  left: 3px;
  top: 0px;
  width: 3px;
  height: 6px;
  border: solid #fff;
  border-width: 0 1px 1px 0;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg); }

/*
* CUSTOM CHECKBOX ENDE
*/
/*
* CUSTOM RADIOBOX
*/
.radioContainer {
  display: block;
  position: relative;
  padding-left: 35px;
  margin-bottom: 12px;
  cursor: pointer;
  font-size: 22px;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none; }

/* Hide the browser's default radio button */
.radioContainer input {
  position: absolute;
  opacity: 0;
  cursor: pointer; }

/* Create a custom radio button */
.radioCheckmark {
  position: absolute;
  top: 0px;
  left: 0;
  height: 15px;
  width: 15px;
  background-color: #ddd;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  border-radius: 50%;
  -khtml-border-radius: 50%; }

/* On mouse-over, add a grey background color */
.radioContainer:hover input ~ .radioCheckmark {
  background-color: #888; }

/* When the radio button is checked, add a blue background */
.radioContainer input:checked ~ .radioCheckmark {
  background-color: #000000; }

/* Create the indicator (the dot/circle - hidden when not checked) */
.radioCheckmark:after {
  content: "";
  position: absolute; }

/* Show the indicator (dot/circle) when checked */
.radioContainer input:checked ~ .radioCheckmark:after {
  display: block; }

/*
* CUSTOM RADIOBOX ENDE
*/
.registerPage {
  margin-top: 20px; }

/*
* CUSTOM RADIO TOGGLE BUTTONS
*/
.toggleButtons {
  margin: 20px 0; }

.toggleButtons h2,
.toggleButtons h1 {
  flex: 1 0 100%;
  -webkit-flex: 1 0 100%;
  /* Safari 6.1+ */
  -ms-flex: 1 0 100%;
  margin-bottom: 10px;
  text-align: left; }

.toggleButtons label {
  flex: 1;
  -webkit-flex: 1;
  /* Safari 6.1+ */
  -ms-flex: 1;
  min-width: 200px;
  float: left;
  margin: 4px;
  background-color: #f8f8f8;
  -moz-border-radius: 4px;
  -webkit-border-radius: 4px;
  border-radius: 4px;
  -khtml-border-radius: 4px;
  color: #888; }

.toggleButtons label:hover {
  cursor: pointer; }

.toggleButtons label span {
  text-align: center;
  font-size: 1em;
  padding: 10px 0px;
  display: block;
  -moz-border-radius: 4px;
  -webkit-border-radius: 4px;
  border-radius: 4px;
  -khtml-border-radius: 4px;
  border: 1px solid #888; }

.toggleButtons label span.hinweis {
  font-size: .9em;
  border: none; }

.toggleButtons label input {
  position: absolute;
  visibility: hidden; }

.toggleButtons input:checked + span {
  background-color: #888;
  color: #fff;
  border-color: #888; }

/*
* CUSTOM RADIO TOGGLE BUTTONS ENDE
*/
/******************
* ENDE LOGIN *
*******************/
/******************+
* PROFILE MENU *
*******************/
#profileMenu {
  position: absolute;
  top: 15px;
  right: 50px;
  margin: 0 10px;
  padding: 10px;
  background-color: #888;
  text-align: left;
  z-index: 99; }

#profileMenu a {
  display: block;
  padding: 10px;
  color: #fff; }

.bestelldetailsRow {
  width: 100%;
  background-color: #f8f8f8;
  padding: 20px; }

.lightBackground {
  background-color: #f8f8f8; }

.greyText {
  color: #888; }

.bestellungenBottom {
  margin: 10px 0;
  padding-top: 10px; }

.bestellungenProductSubItem,
.bestellungenBottomItem {
  flex-shrink: 1;
  -webkit-flex-shrink: 1;
  -ms-flex-shrink: 1; }

.bestellungenBottomProducts {
  flex: 3;
  -webkit-flex: 3;
  /* Safari 6.1+ */
  -ms-flex: 3; }

.bestellungenProductSubItem.image {
  max-width: 150px; }

.bestellungenProductSubItem img {
  width: 100%; }

.bestellungenProduct {
  border-top: 1pt solid #888;
  padding: 10px 0; }

/******************+
* ENDE PROFILE MENU *
*******************/
/******************+
* ADMIN *
*******************/
.adminMenuItem {
  margin: 10px;
  padding: 5px;
  border: 1pt solid #000000;
  text-decoration: none;
  color: #000000; }

.adminMenuItem:hover {
  background-color: #f8f8f8;
  border-color: #f8f8f8;
  text-decoration: none; }

/******************+
* ENDE ADMIN *
*******************/
/******************+
* START PAGE *
*******************/
.fullImgContainer_background {
  position: absolute;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background-position: center;
  background-repeat: no-repeat;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
  z-index: -99;
  top: -80px; }

.fullImgContainer {
  top: 0;
  left: 0;
  width: 100vw;
  height: calc(100vh - 80px);
  height: -o-calc(100vh - 80px);
  /* opera */
  height: -webkit-calc(100vh - 80px);
  /* google, safari */
  height: -moz-calc(100vh - 80px);
  /* firefox */
  min-height: calc(100vh - 80px);
  min-height: -o-calc(100vh - 80px);
  /* opera */
  min-height: -webkit-calc(100vh - 80px);
  /* google, safari */
  min-height: -moz-calc(100vh - 80px);
  /* firefox */ }

.fullImgContainer .content {
  width: 100%;
  height: 100%; }

.productListBox {
  display: -webkit-box;
  /* OLD - iOS 6-, Safari 3.1-6, BB7 */
  display: -ms-flexbox;
  /* TWEENER - IE 10 */
  display: -webkit-flex;
  /* NEW - Safari 6.1+. iOS 7.1+, BB10 */
  display: flex;
  /* NEW, Spec - Firefox, Chrome, Opera */
  flex-direction: column;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }

.productListItem {
  flex: 1;
  -webkit-flex: 1;
  /* Safari 6.1+ */
  -ms-flex: 1;
  height: 60vh;
  min-height: 60vh; }

.productListItemImage {
  height: 45vh;
  min-height: 45vh;
  background-position: center;
  background-repeat: no-repeat;
  -webkit-background-size: contain;
  -moz-background-size: contain;
  -o-background-size: contain;
  background-size: contain; }

.productListItemButton {
  height: 15vh;
  min-height: 15vh;
  text-align: center; }

.productListItemButton a {
  display: inline-block; }

.halfWidthProduktBox {
  display: -webkit-box;
  /* OLD - iOS 6-, Safari 3.1-6, BB7 */
  display: -ms-flexbox;
  /* TWEENER - IE 10 */
  display: -webkit-flex;
  /* NEW - Safari 6.1+. iOS 7.1+, BB10 */
  display: flex;
  /* NEW, Spec - Firefox, Chrome, Opera */
  flex-shrink: 1;
  -webkit-flex-shrink: 1;
  -ms-flex-shrink: 1;
  flex-direction: row;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  height: calc(100vh - 80px);
  height: -o-calc(100vh - 80px);
  /* opera */
  height: -webkit-calc(100vh - 80px);
  /* google, safari */
  height: -moz-calc(100vh - 80px);
  /* firefox */ }

.halfWidthImgContainer {
  flex: 1;
  -webkit-flex: 1;
  /* Safari 6.1+ */
  -ms-flex: 1;
  display: -webkit-box;
  /* OLD - iOS 6-, Safari 3.1-6, BB7 */
  display: -ms-flexbox;
  /* TWEENER - IE 10 */
  display: -webkit-flex;
  /* NEW - Safari 6.1+. iOS 7.1+, BB10 */
  display: flex;
  /* NEW, Spec - Firefox, Chrome, Opera */
  flex-direction: column;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  width: 50%;
  height: 100%;
  min-height: 100%;
  background-position: center;
  background-repeat: no-repeat;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
  background-color: #ebebeb; }

.halfWidthImgContainer.secondColor {
  background-color: #dfdfdf; }

.halfWidthImgContainerImage {
  min-height: 0;
  flex: 2;
  -webkit-flex: 2;
  /* Safari 6.1+ */
  -ms-flex: 2;
  display: -webkit-box;
  /* OLD - iOS 6-, Safari 3.1-6, BB7 */
  display: -ms-flexbox;
  /* TWEENER - IE 10 */
  display: -webkit-flex;
  /* NEW - Safari 6.1+. iOS 7.1+, BB10 */
  display: flex;
  /* NEW, Spec - Firefox, Chrome, Opera */
  flex-direction: column;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  justify-content: center;
  -webkit-justify-content: center;
  -ms-justify-content: center;
  align-items: center;
  -webkit-align-items: center;
  /* Safari 6.1+ */
  -ms-align-items: center; }

.halfWidthImgContainerImage img {
  width: 100%;
  height: auto; }

.halfWidthImgContainerButton {
  flex: 1;
  -webkit-flex: 1;
  /* Safari 6.1+ */
  -ms-flex: 1;
  display: -webkit-box;
  /* OLD - iOS 6-, Safari 3.1-6, BB7 */
  display: -ms-flexbox;
  /* TWEENER - IE 10 */
  display: -webkit-flex;
  /* NEW - Safari 6.1+. iOS 7.1+, BB10 */
  display: flex;
  /* NEW, Spec - Firefox, Chrome, Opera */
  flex-direction: column;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  justify-content: flex-start;
  -webkit-justify-content: flex-start;
  -ms-justify-content: flex-start;
  align-items: center;
  -webkit-align-items: center;
  /* Safari 6.1+ */
  -ms-align-items: center; }

.topSlideGallery {
  position: relative;
  left: 0;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  display: -webkit-box;
  /* OLD - iOS 6-, Safari 3.1-6, BB7 */
  display: -ms-flexbox;
  /* TWEENER - IE 10 */
  display: -webkit-flex;
  /* NEW - Safari 6.1+. iOS 7.1+, BB10 */
  display: flex;
  /* NEW, Spec - Firefox, Chrome, Opera */
  flex-direction: row;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  height: calc(100vh - 80px);
  height: -o-calc(100vh - 80px);
  /* opera */
  height: -webkit-calc(100vh - 80px);
  /* google, safari */
  height: -moz-calc(100vh - 80px);
  /* firefox */
  -webkit-transition: left 0.5s;
  -moz-transition: left 0.5s;
  -o-transition: left 0.5s;
  transition: left 0.5s; }

.topSlideArrowLeft,
.topSlideArrowRight {
  display: -webkit-box;
  /* OLD - iOS 6-, Safari 3.1-6, BB7 */
  display: -ms-flexbox;
  /* TWEENER - IE 10 */
  display: -webkit-flex;
  /* NEW - Safari 6.1+. iOS 7.1+, BB10 */
  display: flex;
  /* NEW, Spec - Firefox, Chrome, Opera */
  flex-direction: column;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  justify-content: center;
  -webkit-justify-content: center;
  -ms-justify-content: center;
  align-items: center;
  -webkit-align-items: center;
  /* Safari 6.1+ */
  -ms-align-items: center;
  width: 10%;
  position: absolute;
  top: 80px;
  height: calc(100vh - 80px);
  height: -o-calc(100vh - 80px);
  /* opera */
  height: -webkit-calc(100vh - 80px);
  /* google, safari */
  height: -moz-calc(100vh - 80px);
  /* firefox */
  width: 5vw;
  min-width: 40px;
  z-index: 99; }

.topSlideArrowRight svg,
.topSlideArrowLeft svg {
  position: absolute;
  width: 40px;
  height: 40px;
  padding-bottom: 80px;
  -webkit-transition: opacity 1s;
  -moz-transition: opacity 1s;
  -o-transition: opacity 1s;
  transition: opacity 1s;
  opacity: 0; }

.topSlideArrowLeft {
  left: 0; }

.topSlideArrowRight {
  right: 0; }

.topSlideArrowLeft svg {
  left: 0; }

.topSlideArrowRight svg {
  right: 0; }

.topSlideElement {
  min-height: 100%;
  height: 100%;
  width: 100vw;
  background-position: center;
  background-repeat: no-repeat;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover; }

.topSlideElement .content {
  flex-shrink: 0;
  -webkit-flex-shrink: 0;
  -ms-flex-shrink: 0;
  display: -webkit-box;
  /* OLD - iOS 6-, Safari 3.1-6, BB7 */
  display: -ms-flexbox;
  /* TWEENER - IE 10 */
  display: -webkit-flex;
  /* NEW - Safari 6.1+. iOS 7.1+, BB10 */
  display: flex;
  /* NEW, Spec - Firefox, Chrome, Opera */
  flex-direction: column;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  justify-content: center;
  -webkit-justify-content: center;
  -ms-justify-content: center;
  align-items: center;
  -webkit-align-items: center;
  /* Safari 6.1+ */
  -ms-align-items: center;
  width: 100vw;
  height: 100%; }

.topSlideElement .content .text {
  flex: 1;
  -webkit-flex: 1;
  /* Safari 6.1+ */
  -ms-flex: 1;
  display: -webkit-box;
  /* OLD - iOS 6-, Safari 3.1-6, BB7 */
  display: -ms-flexbox;
  /* TWEENER - IE 10 */
  display: -webkit-flex;
  /* NEW - Safari 6.1+. iOS 7.1+, BB10 */
  display: flex;
  /* NEW, Spec - Firefox, Chrome, Opera */
  flex-direction: column;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  align-items: center;
  -webkit-align-items: center;
  /* Safari 6.1+ */
  -ms-align-items: center;
  justify-content: center;
  -webkit-justify-content: center;
  -ms-justify-content: center; }

.topSlideGallery .arrow {
  display: -webkit-box;
  /* OLD - iOS 6-, Safari 3.1-6, BB7 */
  display: -ms-flexbox;
  /* TWEENER - IE 10 */
  display: -webkit-flex;
  /* NEW - Safari 6.1+. iOS 7.1+, BB10 */
  display: flex;
  /* NEW, Spec - Firefox, Chrome, Opera */
  justify-content: center;
  -webkit-justify-content: center;
  -ms-justify-content: center;
  align-items: flex-end;
  -webkit-align-items: flex-end;
  /* Safari 6.1+ */
  -ms-align-items: flex-end; }

.mainContent.transparentHeader .topSlideElement .content .text h1,
.mainContent.transparentHeader .fullImgContainer .content .text h1,
.mainContent.transparentHeader .topSlideElement .content .text h2.head1,
.mainContent.transparentHeader .fullImgContainer .content .text h2.head1 {
  font-size: 2em;
  color: #000000;
  margin: 0;
  text-align: center; }

.fullImgContainer .content.right {
  padding-right: 20%; }

.topSlideGallery .arrow,
.fullImgContainer .arrow {
  height: 5%;
  padding-bottom: 10px; }

.startSub {
  font-size: 1.4em; }

.startButton {
  padding-bottom: 20px; }

.topSlideGallery .arrow svg,
.fullImgContainer .arrow svg {
  width: 50px;
  height: 50px; }

.screenItem {
  min-height: 90vh;
  padding: 80px;
  text-align: center;
  max-width: 100vw; }

.screenItem img {
  width: 100%; }

.screenItem.borderBox {
  margin: 100px 50px;
  max-width: 100vw;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  overflow-x: hidden; }

.screenItem.screenImage img {
  width: 100%;
  height: auto; }

.screenItem.small {
  min-height: 40vh; }

.screenItem.noPadding {
  padding: 0; }

.screenItemWhiteBox {
  background-color: #fff;
  border: 50px solid #f8f8f8; }

.screenImgRow {
  width: 100%;
  margin: 10px 0; }

.screenItem.noPadding .screenImgRow:last-child {
  margin-top: 0; }

.screenSmallImg {
  background-color: #f8f8f8; }

/******************+
* ENDE START PAGE *
*******************/
/******************+
* TEXT PAGE *
*******************/
.textPageContainer {
  flex: 1 0 auto;
  -webkit-flex: 1 0 auto;
  /* Safari 6.1+ */
  -ms-flex: 1 0 auto;
  max-width: 1000px;
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  padding: 10px; }

.textPageContainer h1,
.textPageContainer h2.head1 {
  margin-top: 10px;
  padding-left: 0; }

.textPageContainer h1:first-of-type,
.textPageContainer h2.head1:first-of-type {
  margin: 20px 0; }

/******************+
* TEXT PAGE ENDE *
*******************/
/******************+
* KASSE / WARENKORB *
*******************/
.kasseProduktbezeichnung {
  font-weight: bold;
  margin-bottom: 5px;
  text-transform: uppercase; }

.kasseKonfigurationBezeichnung {
  font-size: 0.8em;
  color: #888; }

.kasseTable {
  width: 100%; }

.kasseTable img {
  max-width: 150px;
  height: auto;
  margin-right: 20px; }

.warenkorbItem.summe {
  font-weight: bold;
  font-size: 1.1em; }

.warenkorbItem .preis {
  text-align: right;
  margin-left: 30px; }

.preisLabel svg.icon {
  width: .9em;
  height: .9em; }

.preisLabel svg:hover {
  fill: #000000;
  stroke: none; }

.kasseSummeContainer .kasseTable .warenkorbItem:not(.summe) {
  border: none; }

.preisLabel {
  text-align: right; }

.iconsColumn svg {
  margin: 10px;
  stroke: #888 !important; }

.iconsColumn svg:hover {
  stroke: #000000 !important; }

.kasseButtonsContainer {
  width: 100%; }

.kasseButtons {
  width: 50%; }

.kasseButtons.full {
  width: 100%; }

.kasseButtons.left {
  text-align: left; }

.kasseButtons.right {
  text-align: right; }

.jetztKaufenBtn,
.kasseButtons button {
  margin: 40px 0;
  min-width: 100px; }

.gutscheincode a {
  font-size: 0.8em; }

.gutscheinBtn {
  margin-top: 0;
  margin-right: 0;
  border: 1pt solid #000000; }

.gutscheinBtn:hover {
  border: 1pt solid #888; }

.gutscheinForm {
  float: right; }

#kasseLogin {
  width: 100%;
  max-width: 500px;
  margin: 0 auto; }

.kasseAlsGastBestellen {
  margin-top: 20px;
  padding-top: 20px;
  border-top: 1pt solid #000000; }

.kasseAlsGastBestellen a {
  text-transform: uppercase;
  color: #000000; }

.progressBar {
  width: 100%;
  margin: 20px 0;
  padding: 5px; }

.progressBar .progressBarIcon {
  text-align: center;
  color: #ddd;
  width: 80px; }

.progressBar .progressBarLine {
  flex: 3;
  -webkit-flex: 3;
  -ms-flex: 3;
  height: 80px; }

.progressBar .progressBarLine hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #ddd;
  margin: 1em 0;
  padding: 0; }

.progressText {
  padding-top: 7px; }

.progressText.-enabled {
  color: #000000; }

.progressBar .progressBarLine.-enabled hr {
  border-color: #888; }

#lieferanschriftForm {
  max-width: 100%; }

#kasseLieferadresseContainer {
  max-width: 100%;
  width: 100%; }

.adresseAlsStandard {
  margin-top: 10px; }

.kasseBestellenBottom {
  margin-top: 10px;
  border-top: 1pt solid #888;
  padding: 20px; }

.kasseLieferdatenEnde .kasseZahlungsmethode {
  padding-left: 50px; }

.kasseSummeBetrag {
  padding-right: 0; }

.jetztKaufenBtn {
  padding-right: 60px;
  padding-left: 60px;
  border: 1pt solid #000000; }

.jetztKaufenBtn:hover {
  border-color: #888; }

.kasseAgbs {
  margin-top: 20px; }

.kasseAgbs .checkboxContainer {
  margin-bottom: 10px; }

.agbsNotAccepted {
  color: #c21111; }

.agbsNotAccepted .checkmark {
  background-color: #c21111; }

.gutscheinEntfernen {
  font-size: 0.8em; }

.radioContainer img {
  height: 1.5em;
  vertical-align: middle;
  margin-top: 0px; }

.kasseBestellenContainer .btn {
  width: 100%; }

.lieferzeit_warenkorb {
  font-size: .8em;
  display: block;
  padding-top: 10px; }

#stripeForm {
  width: 450px; }

#stripeForm input {
  width: 100%;
  max-width: 100%; }

#stripeForm #card-button {
  width: 100%; }

.StripeElement, #stripeForm input {
  color: #000000;
  box-sizing: border-box;
  height: 40px;
  padding: 10px 12px;
  border: 1px solid #888;
  background-color: white;
  -webkit-transition: box-shadow 150ms ease;
  transition: box-shadow 150ms ease;
  margin-bottom: 10px; }

.StripeElement--focus {
  box-shadow: 0 1px 3px 0 #cfd7df; }

.StripeElement--invalid {
  border-color: #fa755a; }

.StripeElement--webkit-autofill {
  background-color: #fefde5 !important; }

/******************+
* KASSE / WARENKORB ENDE *
*******************/
/******************+
* KONTAKTFORMULAR *
*******************/
#kontaktformular textarea {
  margin-bottom: 10px; }

/******************+
* KONTAKTFORMULAR ENDE *
*******************/
/******************+
* KONFIGURATOR *
*******************/
.konfigurator_wrapper {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  height: 100vh;
  min-height: 100vh;
  margin-top: -80px;
  padding-top: 80px; }

.vorauswahl {
  display: -webkit-box;
  /* OLD - iOS 6-, Safari 3.1-6, BB7 */
  display: -ms-flexbox;
  /* TWEENER - IE 10 */
  display: -webkit-flex;
  /* NEW - Safari 6.1+. iOS 7.1+, BB10 */
  display: flex;
  /* NEW, Spec - Firefox, Chrome, Opera */
  flex-shrink: 0;
  -webkit-flex-shrink: 0;
  -ms-flex-shrink: 0;
  flex-direction: row;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  justify-content: center;
  -webkit-justify-content: center;
  -ms-justify-content: center;
  align-items: center;
  -webkit-align-items: center;
  /* Safari 6.1+ */
  -ms-align-items: center;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  /* Safari 6.1+ */
  -ms-flex-wrap: wrap;
  width: 100%; }

.vorauswahl a {
  flex-grow: 0;
  -webkit-flex-grow: 0;
  -ms-flex-grow: 0;
  width: 45%;
  margin: 20px; }

.vorauswahl .vorauswahl_element {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  flex: 1;
  -webkit-flex: 1;
  /* Safari 6.1+ */
  -ms-flex: 1;
  position: relative;
  width: 100%;
  height: 100%;
  text-align: center;
  color: #000000; }

.vorauswahl .vorauswahl_element svg {
  background-color: #f8f8f8;
  margin-bottom: 10px; }

.vorauswahl .vorauswahl_element h3 {
  color: #000000; }

.vorauswahl a:hover .vorauswahl_element svg {
  background-color: #ddd;
  cursor: pointer; }

.konfigurator {
  width: 100%;
  height: 100%; }

.konfigurator .canvas {
  width: 100%;
  height: 60%;
  background-color: #fff; }

.konfigurator .canvas .mainKonfigurator {
  flex-grow: 0;
  -webkit-flex-grow: 0;
  -ms-flex-grow: 0;
  min-width: 100%;
  height: 100%;
  position: relative;
  overflow: hidden; }

.mainKonfigurator .arrowContainer {
  margin: -10px auto 0 auto;
  position: relative;
  height: 100%;
  max-width: 100%;
  width: auto;
  z-index: 8; }

.konfigurator .canvas .mainKonfigurator canvas {
  height: 100%;
  width: auto; }

.pseudoCanvas {
  visibility: hidden;
  pointer-events: none; }

.konfigurator .canvas .mainKonfigurator canvas:not(.pseudoCanvas) {
  object-fit: contain; }

.preisboxFiller {
  display: none;
  background-color: #f8f8f8; }

.konfigurator .canvas .mainKonfigurator .preisbox {
  height: auto;
  margin: auto;
  position: absolute;
  right: 0;
  min-width: 200px;
  border: 1pt solid #888;
  background-color: #fff;
  margin-right: 5px;
  padding: 10px;
  text-align: center;
  z-index: 90;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%); }

.konfigurator .canvas .mainKonfigurator .preisbox .preis {
  color: #000000;
  font-size: 1.1em;
  padding-bottom: 5px;
  margin-top: 10px;
  margin-bottom: 5px;
  border-bottom: 1pt solid #888; }

.konfigurator .canvas .mainKonfigurator .preisbox .kaufenBtn .buttonPreis {
  display: none;
  color: #888;
  padding-left: 10px; }

.konfigurator .canvas .mainKonfigurator .preisbox .kaufenBtn {
  width: 100%;
  padding: 5px 10px;
  margin: 10px 0; }

.konfigurator .canvas .mainKonfigurator .preisbox .preisbox_buttons {
  text-align: center; }

button.preisboxBtn {
  font-size: 1em;
  border: none;
  background-color: #fff;
  margin: 5px;
  padding: 5px;
  color: #000000; }

button.preisboxBtn:hover > svg {
  stroke: #888; }

.konfigurator .konfigurator_menu {
  flex: 1;
  -webkit-flex: 1;
  /* Safari 6.1+ */
  -ms-flex: 1;
  width: 100%;
  background-color: #f8f8f8; }

.konfigurator .konfigurator_menu .konfigurator_menu_top_nav {
  width: 100%;
  background-color: #fff;
  margin: 0 auto;
  -webkit-transition: min-height 0.5s;
  -moz-transition: min-height 0.5s;
  -o-transition: min-height 0.5s;
  transition: min-height 0.5s; }

.konfigurator .konfigurator_menu .konfigurator_menu_top_nav .filler {
  flex-grow: 1;
  -webkit-flex-grow: 1;
  -ms-flex-grow: 1;
  background-color: #f8f8f8;
  margin: 1pt 0;
  align-self: stretch; }

.konfigurator .konfigurator_menu .konfigurator_menu_top_nav .konfigurator_menu_top_nav_button {
  color: #000000;
  padding: 10px 20px;
  margin: 1pt;
  margin-left: 0;
  background-color: #f8f8f8;
  align-self: stretch;
  text-transform: uppercase;
  -webkit-transition: 0.2s;
  -moz-transition: 0.2s;
  -o-transition: 0.2s;
  transition: 0.2s;
  z-index: 2;
  display: -webkit-box;
  /* OLD - iOS 6-, Safari 3.1-6, BB7 */
  display: -ms-flexbox;
  /* TWEENER - IE 10 */
  display: -webkit-flex;
  /* NEW - Safari 6.1+. iOS 7.1+, BB10 */
  display: flex;
  /* NEW, Spec - Firefox, Chrome, Opera */
  flex-direction: column;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  justify-content: center;
  -webkit-justify-content: center;
  -ms-justify-content: center; }

.konfigurator .konfigurator_menu .konfigurator_menu_top_nav .konfigurator_menu_top_nav_button:hover {
  cursor: pointer;
  text-decoration: underline; }

.konfigurator .konfigurator_menu .konfigurator_menu_top_nav .konfigurator_menu_top_nav_button.first {
  margin-left: 1pt !important; }

.konfigurator .konfigurator_menu .konfigurator_menu_top_nav .konfigurator_menu_top_nav_button.active {
  margin-top: -5px;
  margin-bottom: 0;
  font-size: 1.1em;
  color: #000000;
  text-decoration: underline; }

.konfigurator .konfigurator_menu .tab {
  align-self: center;
  min-width: 400px; }

.konfigurator .konfigurator_menu .konfigurator_main_menu {
  width: 100%;
  align-self: center;
  margin: 0 auto; }

.konfigurator .konfigurator_menu .konfigurator_main_menu .konfigurator_menus .konfigurator_menu_nav {
  width: 80px;
  height: 80px;
  margin: 10px;
  color: #000000;
  border: 1pt solid #000000;
  text-transform: uppercase;
  text-align: center;
  font-size: 1.1em;
  position: relative;
  -webkit-transition: 0.2s;
  -moz-transition: 0.2s;
  -o-transition: 0.2s;
  transition: 0.2s; }

.konfigurator .konfigurator_menu .konfigurator_main_menu .cornerBox:hover,
.konfigurator .konfigurator_menu .konfigurator_main_menu .konfigurator_menus .konfigurator_menu_nav:hover {
  background-color: #000000;
  color: #fff;
  cursor: pointer;
  border-color: #000000; }

.konfigurator .konfigurator_menu .konfigurator_main_menu .box .auswahl_boxen .auswahl_box .modulbox:hover {
  cursor: pointer; }

.konfigurator .konfigurator_menu .konfigurator_main_menu .cornerBox,
.konfigurator .konfigurator_menu .konfigurator_main_menu .selected {
  border-color: #000000 !important; }

.konfigurator .konfigurator_menu .konfigurator_main_menu .selected + span {
  text-decoration: underline; }

.konfigurator .konfigurator_menu .konfigurator_main_menu .cornerBox::before,
.konfigurator .konfigurator_menu .konfigurator_main_menu .cornerBox::after,
.konfigurator .konfigurator_menu .konfigurator_main_menu .selected::before,
.konfigurator .konfigurator_menu .konfigurator_main_menu .selected::after {
  content: '';
  position: absolute;
  bottom: 0;
  right: 0;
  border-color: transparent;
  border-style: solid; }

.konfigurator .konfigurator_menu .konfigurator_main_menu .cornerBox::before {
  border-width: 0.75em;
  border-right-color: #000000;
  border-bottom-color: #000000; }

.konfigurator .konfigurator_menu .konfigurator_main_menu .cornerBox::after {
  -moz-border-radius: 0.2em;
  -webkit-border-radius: 0.2em;
  border-radius: 0.2em;
  -khtml-border-radius: 0.2em;
  border-width: 0.675em;
  border-right-color: #000000;
  border-bottom-color: #000000; }

.konfigurator .konfigurator_menu .konfigurator_main_menu .selected::before {
  border-width: 0.375em;
  border-right-color: #000000;
  border-bottom-color: #000000; }

.konfigurator .konfigurator_menu .konfigurator_main_menu .selected::after {
  -moz-border-radius: 0.1em;
  -webkit-border-radius: 0.1em;
  border-radius: 0.1em;
  -khtml-border-radius: 0.1em;
  border-width: 0.34em;
  border-right-color: #000000;
  border-bottom-color: #000000; }

.konfigurator .konfigurator_menu .konfigurator_main_menu .cornerBox .tick {
  position: absolute;
  color: #fff;
  bottom: 0;
  right: 0;
  z-index: 99;
  font-size: 0.6em;
  padding: 0.05em 0.1em;
  font-weight: light; }

.konfigurator .konfigurator_menu .konfigurator_main_menu .box {
  width: 100%;
  margin: 5px; }

.konfigurator .konfigurator_menu .konfigurator_main_menu .box.active {
  position: relative; }

.konfigurator .konfigurator_menu .konfigurator_main_menu .box .closeBtn {
  font-size: 1.2em;
  color: #000000;
  position: absolute;
  padding: 0 5px;
  top: 0;
  right: 0;
  z-index: 9; }

.konfigurator .konfigurator_menu .konfigurator_main_menu .box .infoBtn {
  color: #cccccc;
  position: absolute;
  padding: 0 5px;
  bottom: 0;
  right: 0; }

.konfigurator .konfigurator_menu .konfigurator_main_menu .box .closeBtn:hover {
  color: #cccccc;
  cursor: pointer; }

.konfigurator .konfigurator_menu .konfigurator_main_menu .box .boxContent,
.konfigurator .konfigurator_menu .konfigurator_main_menu .box .subBoxContent {
  background-color: #fff;
  width: 100%;
  padding: 10px;
  position: relative; }

.konfigurator .konfigurator_menu .konfigurator_main_menu .box .boxContent.active,
.konfigurator .konfigurator_menu .konfigurator_main_menu .box .subBoxContent.active {
  display: block; }

.konfigurator .konfigurator_menu .konfigurator_main_menu .box h3 {
  font-size: 1em;
  padding-bottom: 5px;
  color: #000000;
  font-weight: normal; }

.konfigurator .konfigurator_menu .konfigurator_main_menu .box .auswahl_boxen_wrapper {
  display: -webkit-box;
  /* OLD - iOS 6-, Safari 3.1-6, BB7 */
  display: -ms-flexbox;
  /* TWEENER - IE 10 */
  display: -webkit-flex;
  /* NEW - Safari 6.1+. iOS 7.1+, BB10 */
  display: flex;
  /* NEW, Spec - Firefox, Chrome, Opera */
  flex-direction: row;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  justify-content: center;
  -webkit-justify-content: center;
  -ms-justify-content: center; }

.konfigurator .konfigurator_menu .konfigurator_main_menu .box .auswahl_boxen {
  color: #000000;
  margin: 0 auto;
  display: inline-flex;
  align-items: flex-start;
  -webkit-align-items: flex-start;
  /* Safari 6.1+ */
  -ms-align-items: flex-start; }

.hinweistextInputbox {
  width: 100%;
  text-align: center; }

.konfigurator .konfigurator_menu .konfigurator_main_menu .box .hinweistext {
  text-align: center;
  font-size: 0.8em;
  color: #000000; }

.konfigurator .konfigurator_menu .konfigurator_main_menu .box .auswahl_boxen input,
.konfigurator .konfigurator_menu .konfigurator_main_menu .box .auswahl_boxen .inputBoxSendingButton {
  padding: 5px 10px;
  font-size: 1em;
  color: #000000;
  margin: 10px;
  text-align: center; }

.konfigurator .konfigurator_menu .konfigurator_main_menu .box .auswahl_boxen .inputBoxSendingButton {
  background-color: #000000;
  color: #fff !important;
  border: 1pt solid #000000;
  text-transform: uppercase; }

.konfigurator .konfigurator_menu .konfigurator_main_menu .box .auswahl_boxen .inputBoxSendingButton:hover {
  cursor: pointer;
  background-color: #888; }

.konfigurator .konfigurator_menu .konfigurator_main_menu .box .auswahl_boxen .auswahl_box {
  margin: 5px;
  text-align: center;
  font-size: 0.8em; }

.konfigurator .konfigurator_menu .konfigurator_main_menu .box .auswahl_boxen .auswahl_box .auswahl_box_check {
  position: absolute;
  width: 100%;
  height: 100%;
  display: -webkit-box;
  /* OLD - iOS 6-, Safari 3.1-6, BB7 */
  display: -ms-flexbox;
  /* TWEENER - IE 10 */
  display: -webkit-flex;
  /* NEW - Safari 6.1+. iOS 7.1+, BB10 */
  display: flex;
  /* NEW, Spec - Firefox, Chrome, Opera */
  flex-direction: row;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  justify-content: center;
  -webkit-justify-content: center;
  -ms-justify-content: center;
  align-items: center;
  -webkit-align-items: center;
  /* Safari 6.1+ */
  -ms-align-items: center; }

.konfigurator .konfigurator_menu .konfigurator_main_menu .box .auswahl_boxen .auswahl_box .auswahl_box_check .auswahl_box_check_inner {
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  border-radius: 50%;
  -khtml-border-radius: 50%;
  background-color: #fff;
  width: 50%;
  height: 50%;
  display: -webkit-box;
  /* OLD - iOS 6-, Safari 3.1-6, BB7 */
  display: -ms-flexbox;
  /* TWEENER - IE 10 */
  display: -webkit-flex;
  /* NEW - Safari 6.1+. iOS 7.1+, BB10 */
  display: flex;
  /* NEW, Spec - Firefox, Chrome, Opera */
  flex-direction: column;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  justify-content: center;
  -webkit-justify-content: center;
  -ms-justify-content: center;
  align-items: center;
  -webkit-align-items: center;
  /* Safari 6.1+ */
  -ms-align-items: center; }

.konfigurator .konfigurator_menu .konfigurator_main_menu .box .auswahl_boxen .auswahl_box .auswahl_box_check .auswahl_box_check_inner svg {
  width: 70%;
  height: 70%; }

.konfigurator .konfigurator_menu .konfigurator_main_menu .box .auswahl_boxen .auswahl_box .modulbox {
  width: 40px;
  height: 40px;
  position: relative;
  border: 1pt solid #ddd;
  color: #cccccc; }

.konfigurator .konfigurator_menu .konfigurator_main_menu .box .auswahl_boxen .auswahl_box .modulbox img,
.konfigurator .konfigurator_menu .konfigurator_main_menu .box .auswahl_boxen .auswahl_box .modulbox svg {
  width: 100%;
  height: 100%; }

.konfigurator .konfigurator_menu .konfigurator_main_menu .bottom_navigation {
  margin-top: 10px;
  width: 100%; }

.konfigurator .konfigurator_menu .konfigurator_main_menu .bottom_navigation .button {
  padding: 10px;
  background-color: #fff;
  border: 1pt solid #fff; }

.konfigurator .konfigurator_menu .konfigurator_main_menu .bottom_navigation .button:hover {
  cursor: pointer;
  border: 1pt solid #000000; }

.konfigurator .konfigurator_menu .konfigurator_main_menu .bottom_navigation .button span {
  text-align: center; }

.konfigurator .konfigurator_menu .konfigurator_main_menu .bottom_navigation .filler {
  width: 10px; }

table.configsTable {
  width: 100%; }

table.configsTable td img {
  max-width: 80px; }

.konfiguratorGallery {
  position: absolute;
  left: -0vw;
  min-width: 100vw;
  height: 100%;
  -webkit-transition: left 0.5s;
  -moz-transition: left 0.5s;
  -o-transition: left 0.5s;
  transition: left 0.5s; }

.konfiguratorGallerySlider {
  flex: 1;
  -webkit-flex: 1;
  /* Safari 6.1+ */
  -ms-flex: 1;
  position: absolute;
  width: 100%;
  text-align: center;
  bottom: 10px;
  left: 0;
  transform: translate(0);
  z-index: 9; }

.konfiguratorGallerySlider .sliderElement {
  width: 10px;
  height: 10px;
  margin: 5px;
  background-color: #ddd; }

.konfiguratorGallerySlider .sliderElement.active,
.konfiguratorGallerySlider .sliderElement:hover {
  background-color: #000000;
  cursor: pointer; }

.sliderArrow svg {
  font-size: 2em;
  stroke: #888 !important; }

.canvasContainer {
  width: 100vw;
  min-width: 100vw;
  height: 100%; }

.mobileShareButtons {
  width: 100%;
  margin: 10px 0;
  text-align: center; }

.mobileShareButtons img {
  width: 50px;
  height: auto; }

/******************+
* ENDE KONFIGURATOR *
*******************/
/******************+
* PRODUKTBESCHREIBUNG *
*******************/
.produktImgBox {
  width: 100%;
  height: 100%; }

.produktImgContent {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 20px;
  text-align: center;
  margin-right: 15%;
  max-width: 100vw; }

.produktImgContent h1,
.produktImgContent h2.head1 {
  font-size: 2em; }

.produktImgContent .text {
  margin: 20px 0; }

.produktbeschreibung .produktbeschreibungBox:first-of-type {
  padding-top: 40px; }

.produktbeschreibung h1,
.produktbeschreibung h2.head1 {
  margin-top: 10px;
  text-align: center; }

.produktbeschreibungBox {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  max-width: 100%;
  width: 100%;
  padding: 30px;
  overflow-x: hidden; }

.produktbeschreibungItemFull {
  width: 100%; }

.produktbeschreibungItem {
  flex: 1;
  -webkit-flex: 1;
  /* Safari 6.1+ */
  -ms-flex: 1;
  margin: 10px;
  padding: 20px;
  text-align: center; }

.produktbeschreibungItem img {
  width: 100%;
  height: auto;
  min-height: 0; }

.imageBox {
  margin: 50px -10px;
  max-width: 100%;
  overflow-x: auto; }

.imageBoxItem {
  width: 19%;
  min-width: 300px;
  padding: 0 10px;
  margin-bottom: 10px; }

.imageBoxItem img {
  width: 100%;
  height: auto; }

.imageBoxItem a:hover .btnUnderImg {
  text-decoration: underline; }

.btnUnderImg {
  width: 100%;
  margin: 5px 0;
  padding: 10px;
  text-align: center;
  border: 1pt solid #888;
  background-color: transparent;
  text-transform: uppercase; }

/*************************
* ENDE PRODUKTBESCHREIBUNG *
**************************/
/***************
** 	   SVGs   **
***************/
.vorauswahl .vorauswahl_element:hover svg .colorChangeFillSVG {
  fill: #fff; }

.vorauswahl .vorauswahl_element svg .colorChangeFillSVG {
  fill: #000000; }

.modul_svg .colorChangeFillSVG {
  fill: #ddd; }

.modulbox.selected .modul_svg .colorChangeFillSVG,
.modul_svg:hover .colorChangeFillSVG {
  fill: #000000; }

.modul_svg .colorChangeStrokeSVG {
  stroke: #ddd; }

.modulbox.selected:hover .modul_svg .colorChangeStrokeSVG,
.modul_svg:hover .colorChangeStrokeSVG {
  stroke: #000000; }

.modulbox.selected .modul_svg .colorChangeStrokeSVG,
.vorauswahl .vorauswahl_element svg .colorChangeStrokeSVG {
  stroke: #000000; }

.vorauswahl .vorauswahl_element:hover svg .colorChangeStrokeSVG {
  stroke: #000000 !important; }

use svg {
  min-width: 0 !important; }

svg.icon {
  width: 1.1em;
  height: 1.1em; }

svg.clickable:hover,
svg.hoverStroke {
  stroke: #888; }

svg.progress,
svg.progress-enabled {
  width: 80px;
  height: 80px; }

svg.progress {
  stroke: #ddd;
  fill: #ddd; }

svg.progress-enabled {
  stroke: #fff;
  fill: #000000; }

svg.loginIcon {
  width: 1.1em;
  height: 80px;
  stroke: #000000; }

polygon.primaryStroke,
path.primaryStroke,
svg.primaryStroke,
object svg {
  stroke: #000000; }

polygon.mediumStroke,
path.mediumStroke,
svg.mediumStroke {
  stroke: #888; }

polygon.primaryFill,
path.primaryFill,
svg.primaryFill {
  fill: #000000; }

svg.hoverFill {
  fill: #888; }

polygon.mediumFill,
path.mediumFill,
svg.mediumFill {
  fill: #888; }

polygon.noFill,
path.noFill,
svg.noFill {
  fill: none !important; }

polygon.noStroke,
path.noStroke,
svg.noStroke {
  stroke: none !important; }

svg.moduleCheck {
  stroke: #fff;
  stroke-width: 2; }

svg.large {
  width: 100%;
  max-width: 200px;
  height: auto; }

svg.noMaxWidth {
  max-width: 100% !important; }

svg.iconBig {
  width: 2em;
  height: 2em; }

.iconText {
  display: -webkit-box;
  /* OLD - iOS 6-, Safari 3.1-6, BB7 */
  display: -ms-flexbox;
  /* TWEENER - IE 10 */
  display: -webkit-flex;
  /* NEW - Safari 6.1+. iOS 7.1+, BB10 */
  display: flex;
  /* NEW, Spec - Firefox, Chrome, Opera */
  flex-direction: row;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  align-items: center;
  -webkit-align-items: center;
  /* Safari 6.1+ */
  -ms-align-items: center; }

.iconText svg {
  margin-right: 5px; }

/***************
** ENDE SVGs  **
***************/
/*******************
********************
** START MOBILE   **
********************
*******************/
@media only screen and (max-width: 1050px) {
  .konfigurator .canvas {
    height: 50%; }

  .hideOnMidScreen {
    display: none !important; }

  .preisboxFiller {
    height: 8.5vh;
    display: block; }

  .konfigurator .canvas .mainKonfigurator .preisbox {
    flex-direction: row-reverse;
    -webkit-flex-direction: row-reverse;
    -ms-flex-direction: row-reverse;
    height: 8%;
    background-color: #000000;
    border: none;
    position: fixed;
    top: auto;
    left: 1vw;
    bottom: .5%;
    width: 98vw;
    margin: 0;
    padding: 0;
    -moz-border-radius: 4px;
    -webkit-border-radius: 4px;
    border-radius: 4px;
    -khtml-border-radius: 4px;
    -webkit-box-shadow: 0px 3px 10px 1px #888888;
    -moz-box-shadow: 0px 3px 10px 1px #888888;
    box-shadow: 0px 3px 10px 1px #888888;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none; }

  .konfigurator .canvas .mainKonfigurator .preisbox .kaufenBtn {
    flex: 2;
    -webkit-flex: 2;
    /* Safari 6.1+ */
    -ms-flex: 2;
    margin: 0;
    padding: 0;
    text-align: center;
    background-color: transparent; }

  button.preisboxBtn:hover,
  .konfigurator .canvas .mainKonfigurator .preisbox .kaufenBtn:hover {
    background-color: #888; }

  .konfigurator .canvas .mainKonfigurator .preisbox .kaufenBtn:hover .buttonPreis {
    color: #000000; }

  .konfigurator .canvas .mainKonfigurator .preisbox .kaufenBtn .buttonPreis {
    display: inline-block; }

  .konfigurator .canvas .mainKonfigurator .preisbox .preis {
    display: none; }

  .konfigurator .canvas .mainKonfigurator .preisbox .preisbox_buttons {
    flex: 1;
    -webkit-flex: 1;
    /* Safari 6.1+ */
    -ms-flex: 1; }

  .konfigurator .konfigurator_menu .konfigurator_main_menu .bottom_navigation .button:hover {
    border: none; }

  button.preisboxBtn {
    flex: 1;
    -webkit-flex: 1;
    /* Safari 6.1+ */
    -ms-flex: 1;
    margin: 0;
    padding: 0 10px;
    background-color: transparent;
    border-right: 1pt solid #888; }

  button.preisboxBtn svg.icon.primaryStroke {
    stroke: #fff; }

  .screenContainer {
    flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    /* Safari 6.1+ */
    -ms-flex-wrap: wrap; }

  .screenContainer.iconRight {
    flex-wrap: wrap-reverse;
    -webkit-flex-wrap: wrap-reverse;
    /* Safari 6.1+ */
    -ms-flex-wrap: wrap-reverse; }

  .screenItem {
    flex: 1 100%;
    -webkit-flex: 1 100%;
    /* Safari 6.1+ */
    -ms-flex: 1 100%;
    min-height: 50vh; }

  .screenItem.small {
    min-height: 20vh; }

  .topSlideArrowLeft,
  .topSlideArrowRight,
  .topSlideGalleryArrows,
  .topSlideGallery,
  .produktImgContainer {
    min-height: auto;
    height: auto; }

  .fullImgContainer_background {
    height: calc(60vh + 80px);
    height: -o-calc(60vh + 80px);
    /* opera */
    height: -webkit-calc(60vh + 80px);
    /* google, safari */
    height: -moz-calc(60vh + 80px);
    /* firefox */ }

  .topSlideArrowLeft,
  .topSlideArrowRight,
  .topSlideGalleryArrows,
  .topSlideGallery {
    flex: 0;
    -webkit-flex: 0;
    /* Safari 6.1+ */
    -ms-flex: 0;
    height: 60vh;
    min-height: 60vh; }

  .fullImgContainer:not(.produktImgContainer) {
    flex: 0;
    -webkit-flex: 0;
    /* Safari 6.1+ */
    -ms-flex: 0;
    min-height: 60vh;
    height: 60vh; }

  .startButton {
    padding-bottom: 0; }

  .produktImgContainer .fullImgContainer_background {
    height: 50vh;
    min-height: 50vh;
    position: relative; }

  .produktImgBox {
    justify-content: center;
    -webkit-justify-content: center;
    -ms-justify-content: center;
    width: 100%;
    height: auto;
    margin-bottom: 20px; }

  .produktImgContent {
    margin-right: 0; }

  .produktImgContent h1,
  .produktImgContent h2.head1 {
    font-size: 1.5em; }

  .buttonBox {
    flex-direction: row;
    -webkit-flex-direction: row;
    -ms-flex-direction: row; }

  .produktImgContainer .fullImgContainer_background {
    background-position: left;
    top: 0; } }
@media only screen and (max-width: 750px) {
  h1,
  h2.head1 {
    font-size: 1.3em; }

  h1.large,
  h2.head1.large {
    font-size: 2.5em; }

  .bigText {
    font-size: 1.1em; }

  .onlyMobile {
    display: block; }

  .hideOnMobile {
    display: none; }

  header .logo {
    margin-top: 3px; }

  header .logo a.svg {
    width: 120px; }

  .productListItemButton .bigBtn,
  .startButton .bigBtn {
    padding: 15px;
    font-size: .8em; }

  .canvasContainer {
    min-width: 0; }

  .defaultForm {
    max-width: 100%; }

  .defaultForm input {
    max-width: 100% !important; }

  .defaultForm .multirow {
    max-width: 100%; }

  .defaultForm .multirow .flexGap {
    display: block;
    flex: 0 0 10px !important;
    -webkit-flex: 0 0 10px !important;
    /* Safari 6.1+ */
    -ms-flex: 0 0 10px !important; }

  .textPageContainer {
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box; }

  .textPageItem {
    flex: 0 0 100%;
    -webkit-flex: 0 0 100%;
    /* Safari 6.1+ */
    -ms-flex: 0 0 100%;
    margin-bottom: 50px; }

  .flexGap {
    display: none; }

  .flexGapBig.noDisappear,
  .flexGap.noDisappear {
    display: block; }

  .kasseLieferdatenEnde {
    display: block; }

  .kasseZahlungsmethode {
    padding-left: 0 !important;
    padding-top: 20px; }

  .kasseAgbs {
    justify-content: flex-start;
    -webkit-justify-content: flex-start;
    -ms-justify-content: flex-start; }

  .footerGroup,
  .bestellungenBottomProducts {
    flex: 1 100%;
    -webkit-flex: 1 100%;
    /* Safari 6.1+ */
    -ms-flex: 1 100%; }

  .bestellungenBottomProducts {
    margin-top: 20px; }

  .formRight,
  .formLeft {
    margin-top: 20px;
    flex: 1 0 100%;
    -webkit-flex: 1 0 100%;
    /* Safari 6.1+ */
    -ms-flex: 1 0 100%; }

  .screenItem {
    padding: 40px; }

  .konfigurator .canvas {
    height: 40%; }

  .konfigurator .konfigurator_menu .tab {
    min-width: 95%;
    max-width: 95%; }

  .konfigurator .konfigurator_menu .konfigurator_main_menu .box .auswahl_boxen,
  .konfigurator_menu_top_nav,
  .konfigurator_menus {
    max-width: 100%;
    overflow-x: auto; }

  .konfigurator_menu_top_nav_button {
    flex-shrink: 0;
    -webkit-flex-shrink: 0;
    -ms-flex-shrink: 0; }

  .konfigurator .konfigurator_menu .konfigurator_main_menu .box .auswahl_boxen .auswahl_box .modulbox {
    width: 35px;
    height: 35px; }

  .progressBar .progressBarIcon {
    width: 60px; }

  .progressBar .progressBarLine {
    height: 60px !important; }

  svg.progress,
  svg.progress-enabled {
    width: 60px;
    height: 60px; }

  .warenkorbItem .imageTd,
  .warenkorbItem.itemUebersicht {
    flex-direction: column;
    -webkit-flex-direction: column;
    -ms-flex-direction: column; }

  .imageTd .iconsColumn {
    flex-direction: row;
    -webkit-flex-direction: row;
    -ms-flex-direction: row; }

  .kasseTable img {
    max-width: 100%;
    height: auto;
    margin-right: auto; }

  .warenkorbItem.summe {
    font-size: 1em; }

  .warenkorbItem .produktbezeichnungContainer {
    flex: 0 0 100%;
    -webkit-flex: 0 0 100%;
    /* Safari 6.1+ */
    -ms-flex: 0 0 100%; }

  .warenkorbItem .einzelpreis {
    flex: 0 0 100%;
    -webkit-flex: 0 0 100%;
    /* Safari 6.1+ */
    -ms-flex: 0 0 100%;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    text-align: right;
    margin-top: 20px; }

  .warenkorbItem .preis {
    flex-shrink: 0;
    -webkit-flex-shrink: 0;
    -ms-flex-shrink: 0; }

  .kasseButtonsContainer {
    flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    /* Safari 6.1+ */
    -ms-flex-wrap: wrap; }

  .kasseButtons .btn,
  .jetztKaufenBtn {
    width: 100%; }

  .kasseButtons {
    flex: 0 0 100%;
    -webkit-flex: 0 0 100%;
    /* Safari 6.1+ */
    -ms-flex: 0 0 100%; }

  .kasseBestellenContainer.borderBox {
    padding: 20px; }

  .bestelldetailsRow {
    padding: 10px; }

  .checkmark {
    width: 15px;
    height: 15px;
    top: 0; }

  .checkboxContainer {
    padding-left: 20px; }

  .checkboxContainer .checkmark:after {
    left: 5px;
    top: 0px;
    width: 5px;
    height: 9px;
    border: solid #fff;
    border-width: 0 1px 1px 0;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg); }

  .progressBar {
    font-size: 0.9em; }

  .vorauswahl {
    flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    /* Safari 6.1+ */
    -ms-flex-wrap: wrap; }

  .vorauswahl a {
    display: -webkit-box;
    /* OLD - iOS 6-, Safari 3.1-6, BB7 */
    display: -ms-flexbox;
    /* TWEENER - IE 10 */
    display: -webkit-flex;
    /* NEW - Safari 6.1+. iOS 7.1+, BB10 */
    display: flex;
    /* NEW, Spec - Firefox, Chrome, Opera */
    flex-direction: column;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    justify-content: center;
    -webkit-justify-content: center;
    -ms-justify-content: center;
    flex-grow: 1;
    -webkit-flex-grow: 1;
    -ms-flex-grow: 1;
    width: 60%;
    max-width: 60%;
    height: auto;
    max-height: 100%; }

  .vorauswahl_element {
    flex: 0 0 100%;
    -webkit-flex: 0 0 100%;
    /* Safari 6.1+ */
    -ms-flex: 0 0 100%; }

  .konfigurator .konfigurator_menu .konfigurator_main_menu .konfigurator_menus .konfigurator_menu_nav {
    max-width: 80px;
    max-height: 80px;
    margin: 10px;
    width: 20vw;
    height: 20vw; }

  .konfigurator .konfigurator_menu .konfigurator_menu_top_nav .konfigurator_menu_top_nav_button.active {
    font-size: 1em; }

  .mainKonfigurator .arrowContainer {
    justify-content: space-between;
    -webkit-justify-content: space-between;
    -ms-justify-content: space-between;
    width: 100%; }

  .mainKonfigurator .arrowContainer .pseudoCanvas {
    display: none; }

  .iconRight {
    flex-wrap: wrap-reverse;
    -webkit-flex-wrap: wrap-reverse;
    /* Safari 6.1+ */
    -ms-flex-wrap: wrap-reverse; }

  .produktbeschreibungItem {
    flex: 0 0 100%;
    -webkit-flex: 0 0 100%;
    /* Safari 6.1+ */
    -ms-flex: 0 0 100%; }

  .buttonBox {
    flex-direction: column;
    -webkit-flex-direction: column;
    -ms-flex-direction: column; }

  #geschenkgutscheinForm input[type="submit"] {
    width: 100%;
    margin: 0; }

  .borderBox {
    padding: 20px; }

  .screenItem.borderBox {
    margin: 50px 10px; }

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

  .screenItemWhiteBox {
    border-width: 20px; }

  .mainContent.transparentHeader .topSlideElement .content .text h1,
  .mainContent.transparentHeader .fullImgContainer .content .text h1,
  .mainContent.transparentHeader .topSlideElement .content .text h2.head1,
  .mainContent.transparentHeader .fullImgContainer .content .text h2.head1 {
    font-size: 1.2em; }

  .startSub {
    font-size: 1em; }

  .fullImgContainer .content.right {
    align-items: center;
    -webkit-align-items: center;
    /* Safari 6.1+ */
    -ms-align-items: center;
    padding-right: 0; }

  .registerPage {
    padding: 10px; }

  .halfWidthProduktBox {
    flex-direction: column;
    -webkit-flex-direction: column;
    -ms-flex-direction: column; }

  .halfWidthImgContainer {
    width: 100%;
    height: 50%;
    min-height: 50%; }

  .halfWidthImgContainerImage img {
    height: 100%;
    width: auto; }

  .halfWidthImgContainerButton .btn {
    font-size: .8em;
    padding: 10px !important; }

  .topSlideArrowLeft,
  .topSlideArrowRight {
    min-width: 30px; }

  .topSlideArrowLeft svg,
  .topSlideArrowRight svg {
    width: 30px;
    height: 30px; }

  #stripeForm {
    width: 100%; } }

/*# sourceMappingURL=custom.css.map */
