@charset "UTF-8";
/* CSS Document */

/*
Theme Name: Wittgensteiner Möbelhaus Custom
Author: Werbeagentur Hüper GmbH – Stefan Wiebel
Author URI: https://www.hueper.de/
Description: A custom template build especially for Wittgensteiner Möbelhaus.
Version: 1.4
Text Domain: custom-wittgensteiner-moebelhaus
Copyright: © 2025 by Stefan Wiebel – Werbeagentur Hüper GmbH
*/


/***** text mark colors *****/
::-moz-selection {
  color: #fff;
  background: #e50064;
}

::selection {
  color: #fff;
  background: #e50064;
}




/***** fonts *****/
/* poppins-300 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 300;
  src: url('assets/fonts/poppins-v22-latin-300.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('assets/fonts/poppins-v22-latin-300.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}

/* poppins-300italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Poppins';
  font-style: italic;
  font-weight: 300;
  src: url('assets/fonts/poppins-v22-latin-300italic.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('assets/fonts/poppins-v22-latin-300italic.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}

/* poppins-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 400;
  src: url('assets/fonts/poppins-v22-latin-regular.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('assets/fonts/poppins-v22-latin-regular.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}

/* poppins-italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Poppins';
  font-style: italic;
  font-weight: 400;
  src: url('assets/fonts/poppins-v22-latin-italic.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('assets/fonts/poppins-v22-latin-italic.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}

/* poppins-500 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 500;
  src: url('assets/fonts/poppins-v22-latin-500.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('assets/fonts/poppins-v22-latin-500.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}

/* poppins-500italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Poppins';
  font-style: italic;
  font-weight: 500;
  src: url('assets/fonts/poppins-v22-latin-500italic.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('assets/fonts/poppins-v22-latin-500italic.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}




/***** main elements *****/
html, 
body {
  margin: 0px;
  padding: 0px;
  font-family: 'Poppins', sans-serif;
  height: 100%;
  font-style: normal;
  background-color: #fff;
  color: #2b2e34;
  letter-spacing: 0.03rem;
  font-weight: 300;
  word-break: normal;
}

.underline {
  display: inline-block;
  padding-bottom: 15px;
}

.underline:after {
  content: " ";
  display: block;
  height: 8px;
  background-color: #e50064;
  border-radius: 10px;
  top: 12px;
  position: relative;
}

h1, 
h2, 
h3, 
h4, 
h5,
h6 {
  letter-spacing: 0.05rem;
}

h1 {
  font-size: 3.2rem;
  line-height: 3.6rem;
  padding-bottom: 8px;
}

h1 .underline,
.h1 .underline {
  padding-bottom: 30px;
}

h2,
.h2 {
  font-size: 2.7rem;
  line-height: 3.1rem;
  padding-bottom: 8px;
}

h2 .underline:after,
.h2 .underline:after {
  top: 9px;
}

h3,
.h3 {
  font-size: 2.4rem;
  line-height: 2.8rem;
}

h3 .underline:after,
.h3 .underline:after {
  height: 7px;
  top: 7px;
}

h4, 
.h4 {
  font-size: 1.8rem;
  line-height: 2.2rem;
}

h4 .underline:after,
.h4 .underline:after {
  height: 6px;
  top: 7px;
}

@media (max-width: 576px) {
  h1 {
    font-size: 2.6rem;
    line-height: 3.1rem;
  }
  
  h2 {
    font-size: 2.4rem;
    line-height: 2.8rem;
  }
  
  h3 {
    font-size: 2.1rem;
    line-height: 2.5rem;
  }
  
  h4,
  .h4 {
    font-size: 1.5rem;
    line-height: 1.9rem;
  }
}

a {
  color: #e50064;
  text-decoration: none;
  transition: 0.2s ease-in-out;
  font-size: 1.3rem;
  line-height: 2rem;
}

a:hover, 
a:focus {
  color: #2b2e34;
  text-decoration: none;
}

p, 
ul {
  line-height: 2rem;
  font-size: 1.3rem;
}

.small {
  font-size: 1rem;
  line-height: 1.4rem !important;
}

.light {
  font-weight: 300;
}

.wp-block-column {
  padding: 0px;
  margin: 0px;
}

b, 
strong {
  font-weight: 500;
}




/***** container *****/
/* match outer container with hamburger menu + contact plane */
@media (max-width: 576px) {
  .container {
    padding-left: calc(var(--bs-gutter-x) * .5 + 7px);
    padding-right: calc(var(--bs-gutter-x) * .5 + 7px);
  }
}

/* small container for variation */
.container-small {
  margin-left: 1.5rem;
  margin-right: 1.5rem;
}

@media (min-width: 576px) {
  .container-small {
    max-width: 420px;
    margin-left: auto;
    margin-right: auto;
  }
}

@media (min-width: 768px) {
  .container-small {
    max-width: 520px;
    margin-left: auto;
    margin-right: auto;
  }
}

@media (min-width: 992px) {
  .container-small {
    max-width: 760px;
    margin-left: auto;
    margin-right: auto;
  }
}

@media (min-width: 1200px) {
  .container-small {
    max-width: 940px;
    margin-left: auto;
    margin-right: auto;
  }
}

@media (min-width: 1400px) {
  .container-small {
    max-width: 1100px;
    margin-left: auto;
    margin-right: auto;
  }
}




/***** utilities *****/
.grow {
  transition: 0.3s ease-in-out;
  transform: scale(1.0);
  -webkit-transform: scale(1.0);
}

.grow:hover, 
.grow:focus {
  scale: 1.02;
  transform: scale(1.02);
  -webkit-transform: scale(1.02);
}

.img-rounded {
  border-radius: 35px;
}

.img-rounded-top {
  border-top-left-radius: 30px;
  border-top-right-radius: 30px;
}

.img-rounded-bottom {
  border-bottom-left-radius: 30px;
  border-bottom-right-radius: 30px;
}

.wp-block-separator {
  border-top: solid 1px #272727 !important;
  border-bottom: none !important;
}

.text-pink {
  color: #e50064;
}

.text-dark,
.text-dark a {
  color: #2b2e34;
}

.display-1 {
  font-size: 6.1rem;
  line-height: 6.8rem;
  letter-spacing: 0.02rem;
}

@media (max-width: 768px) {
  .display-1 {
    font-size: 3.5rem;
    line-height: 4.2rem;
  }
}

.bg-pink {
  background-color: #e50064;
  color: #fff;
}

.bg-white-pill {
  background-color: #fff;
  color: #2b2e34;
}




/***** navigation *****/
#menu-top-menu-right {
  margin-right: 30px;
}

#main,
#menu-top-menu-right {
  transition: 0.35s ease-in-out;
}

@media (min-width: 1200px) {
  .navbar #main {
    margin-left: 180px;
  }
}

.navbar {
  box-shadow: 3px 12px 26px -3px rgba(186,186,186,0.25);
  -webkit-box-shadow: 3px 12px 26px -3px rgba(186,186,186,0.25); 
  background: rgba(255, 255, 255, 0.8);
  margin: 22px 23px 22px 23px;
  padding: 16px 15px 15px 15px;
  border-radius: 200px;
}

@media (min-width: 1200px) {
  .navbar {
    -webkit-backdrop-filter: blur(10.7px);
    backdrop-filter: blur(10.7px);
    margin: 28px 30px 28px 30px;
  }
}

/* stacked backdropfilter bugfix für den lieben chrome */
@media (max-width: 1200px) {
  .navbar::before {
    content: '';
    position: absolute;
    width: 100%;
    top: 0;
    left: 0;
    -webkit-backdrop-filter: blur(10.7px);
    backdrop-filter: blur(10.7px);
    border-radius: 200px;
    height: 67px;
  }
}

nav li {
  display: inline;
  list-style-type: none;
  padding: 10px;
}

@media (max-width: 1200px) {
  nav li {
    display: block;
    padding: 17px;
  } 
}

nav ul {
  font-size: 1.2rem;
  display: block;
  margin-left: auto;
  margin-right: auto;
  margin-top: 0;
  margin-bottom: 0;
  padding-left: 0;
  letter-spacing: 0.05rem;
  transition: 0.5s ease-in-out;
}

li a {
  color: #2b2e34;
  transition: 0.2s ease-in-out;
  margin: 0px 8px;
  padding-bottom: 2px;
  border-bottom: solid 1px transparent;
}

@media (max-width: 1200px) {
  li a {
    padding-bottom: 0px;
    border-bottom: solid 1px transparent;
  }
}

li a:hover, li a:focus {
  text-decoration: none;
  border-bottom: solid 1px #2b2e34;
}

@media (max-width: 1200px) {
  li a:hover, li a:focus {
    border-bottom: transparent;
    color: #e50064;
  }
}

#menu-main-menu {
  text-align: center;
  font-weight: 400;
}

@media (max-width: 1200px) {
  #menu-main-menu {
    position: relative;
    top: 50vh;
    transform: translateY(-65%);
  }
}

#menu-main-menu li:nth-child(2)  {
  font-style: italic;
}

.current-menu-item a {
  text-decoration: none;
  color: #e50064 !important;
  border-bottom: none;
  font-weight: 400 !important;
}

@media (max-width: 1200px) {
  .navbar {
    display: block !important;
    padding: 8px 0px;
    height: 67px;
  }
}

/* kontakt menu-item */
#menu-top-menu-right a:hover,
#menu-top-menu-right a:focus {
  color: #e50064;
  transform: scale(.95);
  -webkit-transform: scale(.95);
  border-bottom: 1px solid transparent;
}

#menu-top-menu-right li {
  padding: 0px;
}


/* small menu */
@media (max-width: 1200px) {
  .navbar-collapse {
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    box-shadow: 3px 12px 26px -3px rgba(186,186,186,0.25);
    -webkit-box-shadow: 3px 12px 26px -3px rgba(186,186,186,0.25); 
    background: rgba(255, 255, 255, 1);
    border-radius: 30px;
  }
}

/* open button */
.navbar-open {
  font-size: 2rem;
  position: absolute;
  right: 35px;
  top: 11px;
  color: #2b2e34;
  transition: 0.3s ease-in-out;
  transform-origin: center center;
  background: none;
  border: none;
}

.navbar-open:hover, 
.navbar-open:focus {
  color: #e50064;
  cursor: pointer;
  -webkit-transform: scale(.92);
  transform: scale(.92);
}

/* close button */
.navbar-close {
  background: none;
  border: none;
}

.navbar-close i {
  font-size: 2.5rem;
  position: absolute;
  right: 35px;
  top: 14px;
  color: #2b2e34;
  float: right;
  transition: 0.2s ease-in-out;
}

.navbar-close i:hover, 
.navbar-close i:focus {
  color: #e50064;
  cursor: pointer;
  transform: rotate(90deg);
  transform-origin: center;
}

@media (max-width: 1200px) {
  #main .navigation:last-child {
    margin-bottom: 1000px;
  }
}




/***** logo *****/
#logo {
  width: 71px;
  position: absolute;
  left: 60px;
  top: 14px;
  z-index: 999;
}

@media (max-width: 1200px) {
  #logo {
    width: 65px;
    left: 35px;
    top: 16px;
  }
}

#logo-hero {
  width: 500px;
  position: absolute;
  left: 50%;
  bottom: 70px;
  transform: translateX(-50%);
  background-color: #ffffffa3;
  padding: 42px 65px 40px 70px;
  display: inline-block;
  border-radius: 30px;
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
}

@media (max-width: 768px) {
  #logo-hero {
    width: 320px;
    bottom: 40px;
    padding: 42px 50px 40px 55px;
    border-radius: 30px;
  }
}




/***** hero *****/
.hero {
  width: 100%;
  height: 100vh;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}

.hero-small {
  width: 100%;
  height: 600px;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}

@media (max-width: 992px) {
  .hero-small {
    height: 350px;
  }
}

.hero-404 {
  background-image: url("assets/images/404.jpg");
  height: 100%;
  background-position: center right;
  background-repeat: no-repeat;
  background-size: cover;
}

@media (max-width: 768px) {
  .hero-404 {
    background-image: url("assets/images/404-sm.jpg");
  }
}

#main-title {
  position: relative;
  top: 75%;
  left: 0%;
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  transform: translateY(-50%);
  color: #AD1A0F;
  background-color: #ffffffa3;
  padding: 42px 45px 40px 70px;
  display: inline-block;
  border-top-right-radius: 30px;
  border-bottom-right-radius: 30px;
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
}

@media (max-width: 1200px) {
  #main-title {
    padding: 38px 38px 36px 50px;
    font-size: 2.3rem;
    line-height: 2.5rem;
  }
}

@media (max-width: 768px) {
  #main-title {
    padding: 38px 38px 36px 38px;
    font-size: 2rem;
    line-height: 2.2rem;
  }
}




/***** tables *****/
.wp-block-table td, 
.wp-block-table th {
  min-width: 150px;
  padding: 15px 0px 15px 30px;
}

.wp-block-table th {
  background-color: #bfbfbf;
  color: #fff;
}

@media (min-width: 576px) {
  .wp-block-table {
    width: 100% !important;
  }
}

.scrollable {
  overflow: scroll;
}




/***** buttons + links *****/
/* custom button + wp-button */
.btn-custom, 
.frm_button_submit, 
.wp-block-button__link, 
.wp-block-button__link:visited, 
.post-password-form input[type=submit],
.forminator-button-submit {
  background-color: #e50064 !important;
  text-align: center;
  padding: 12px 45px 11px !important;
  color: #fff !important;
  transition: 0.2s ease-in-out !important;
  border: none !important;
  font-size: 1.2rem !important;
  border-radius: 150px !important;
  -webkit-box-shadow: 2px 2px 25px 6px rgba(0,0,0,0.1) !important; 
  box-shadow: 2px 2px 25px 6px rgba(0,0,0,0.1) !important;
}

.btn-custom:hover, 
.btn-custom:focus, 
.wp-block-button__link:hover, 
.wp-block-button__link:focus, 
.post-password-form input[type=submit]:hover, 
.post-password-form input[type=submit]:focus,
.forminator-button-submit:hover,
.forminator-button-submit:focus {
  background-color: #ffffffa3 !important;
  color: #e50064 !important;
  text-decoration: none !important;
  border: none !important;
  -webkit-box-shadow: 2px 2px 25px 6px rgba(0,0,0,0.1) !important; 
  box-shadow: 2px 2px 25px 6px rgba(0,0,0,0.1) !important;
  cursor: pointer;
  -webkit-backdrop-filter: blur(10px) !important;
  backdrop-filter: blur(10px) !important;
}

.btn-custom-secondary {
  background-color: transparent;
  text-align: center;
  padding: 12px 45px 11px;
  color: #e50064;
  transition: 0.2s ease-in-out;
  border: solid 1px #e50064 !important;
  font-size: 1.2rem;
  border-radius: 150px;
}

.btn-custom-secondary:hover, 
.btn-custom-secondary:focus {
  background-color: #e50064;
  color: #fff;
  text-decoration: none;
  border: solid 1px #e50064;
  box-shadow: none;
  cursor: pointer;
}




/***** contact form *****/
.data-link {
  font-size: 15px;
}




/***** modal *****/
.modal-content {
  border: none;
  border-radius: 30px;
  padding: 20px 50px 30px;
}

@media (max-width: 576px) {
  .modal-content {
    padding: 5px 20px 20px;
  }
}

.modal-header {
  border-bottom: none;
}

.modal-footer {
  border-top: none;
}

.modal-body a {
  color: #AD1A0F;
  text-decoration: none;
  transition: 0.2s ease-in-out;
}

.modal-body a:hover, 
.modal-body a:focus {
  color: #A8A8A8;
  text-decoration: none;
}




/***** jobs *****/
.jobs {
  background-color: #042236;
  color: #fff;
  border-radius: 35px;
} 

.badge {
  font-size: 0.8rem;
	border-radius: 100px;
}




/***** schnäppchen *****/
.schnaeppchen {
  background-color: #042236;
  color: #fff;
  border-radius: 35px;
} 

.percent {
  position: absolute;
  top: 0;
  right: 0;
  background:
rgba(255, 255, 255, 0.8);
  -webkit-backdrop-filter: blur(10.7px);
  backdrop-filter: blur(10.7px);
  border-top-right-radius: 35px;
  border-bottom-left-radius: 35px;
  padding: 30px 22px 20px 25px;
}

.percent p {
  color: #e50064;
}




/***** footer *****/
.bg-blue {
  background-color: #042236;
  color: #fff;
}

#footer-logo {
  width: 400px;
  margin-left: auto;
  margin-right: auto;
  display: block;
}

@media (max-width: 992px) {
  #footer-logo {
    width: 250px;
  }
}

@media (max-width: 768px) {
  #footer-logo {
    padding-top: 35px;
  }
}

#footer a, 
.copy-links a {
  transition: 0.2s ease-in-out;
  color: #fff;
  border-bottom: solid 1px transparent;
}

.copy-links a:hover,
.copy-links a:focus {
  border-bottom: solid 1px #fff !important;
}

.copyright p, 
.copyright a {
  font-size: 1rem !important;
  line-height: 1.4rem;
}

.copyright ul {
  list-style-type: none;
  padding-left: 0px;
  padding-top: 2px;
}

.non-underline-link a i,
.non-underline-link a img {
  transition: 0.4s ease-in-out;
}

.non-underline-link a i:hover,
.non-underline-link a i:focus,
.non-underline-link a img:hover,
.non-underline-link a img:focus {
  -webkit-transform: scale(1.2);
  transform: scale(1.2);
}

.non-underline-link a #footer-logo:hover,
.non-underline-link a #footer-logo:focus {
  -webkit-transform: scale(1.05);
  transform: scale(1.05);
}

.non-underline-link a:hover,
.non-underline-link a:focus {
  opacity: 0.8;
}

/* social links icons */
.social-links-footer a i {
  font-size: 1.9rem;
  padding: 0px 6px;
}

#menu-footer-menu li a {
  margin: 0px 6px 0px 0px;
}




/***** footer menu *****/
#menu-footer-menu li {
  display: inline-block;
  list-style-type: none;
}




/***** forminator kontaktformular styles *****/
.forminator-input,
.forminator-textarea {
  width: 100%;
  height: 60px;
  padding: 35px 30px 33px 30px;
  border-radius: 15px;
  border: none;
  background-color: #ededed;
  margin-top: 6px;
  font-size: 1.15rem;
  color: #707070;
}

.forminator-consent__label {
  display: inline-block;
}

.forminator-consent__label p {
  padding-left: 8px;
}

.forminator-consent__label p,
.forminator-consent__label a {
  font-size: 1rem;
}

/* sternchen */
.forminator-required {
  color: #e50064 !important;
}

.forminator-row {
  margin-bottom: 25px !important;
}

.forminator-label,
.forminator-checkbox__label {
  color: #2b2e34;
}

.forminator-error-message {
  background-color: #e50064;
  color: #fff;
  width: 100%;
  display: inline-block;
  padding: 10px 15px;
  font-size: 0.8rem;
}

.forminator-checkbox input {
  height: 20px;
  width: 20px;
}




/***** 404 styles *****/
.error {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}