/* playfair-display - 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: 'Playfair Display';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/playfair-display-v37-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 700;
  src: url('../fonts/playfair-display-v37-latin-700.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}


.cpq-content {
	padding-bottom: 1rem;
}


.cpq-title {
	font-family: 'Playfair Display', Arial, sans-serif;
}

.cpq-text-color {
	color: #b5933e;
}

.cpq-content h3 {
	font-family: "Poppins", "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif;
	position: relative;
	padding-top: 12px;
    font-size: 1.1rem;
    line-height: 1.4rem;
	color: #b29562;
    font-weight: bold;
    text-align: center;
}

.cpq-content.cpq-modal h3 {
    padding-bottom: 12px;
    padding-top: 0;
    font-size: 1.5rem;
    line-height: 1.8rem;
}

.cpq-content:not(.cpq-modal) h3:before {
	content: "";
    position: absolute;
    top: 0;
    left: -5px;
    right: -5px;
    height: 5px;
    background-color: #000;
    border-bottom-left-radius: 2em;
    border-bottom-right-radius: 2em;
}

.cpq-content ul,
.cpq-content p {
	padding-left: 0;
    list-style-type: none;
    font-size: .8rem;
}

.cpq-content form {
    font-family: "Poppins", "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif;
    padding: 0 30px;
}

.cpq-content.cpq-checkout form {
	padding: 0;
}

.cpq-content .form-control {
	font-size: .8rem;
}

.cpq-autocomplete {
	/*the container must be positioned relative:*/
	position: relative;
	display: block;
}
.cpq-autocomplete-items {
	position: absolute;
	border: 1px solid #d4d4d4;
	border-bottom: none;
	border-top: none;
	z-index: 999;
	/*position the autocomplete items to be the same width as the container:*/
	top: 100%;
	left: 0;
	right: 0;
}
.cpq-autocomplete-items div {
	padding: 10px;
	cursor: pointer;
	background-color: #fff;
	border-bottom: 1px solid #d4d4d4;
}
.cpq-autocomplete-items div:hover {
	/*when hovering an item:*/
	background-color: #e9e9e9;
}
.cpq-autocomplete-active {
	/*when navigating through the items using the arrow keys:*/
	background-color: DodgerBlue !important;
	color: #ffffff;
}

.cpq-content label {
	font-weight: bold;
	font-size: .9rem;
	margin-bottom: 0;
}

.cpq-content .row>* {
	margin-top: .5rem;
}

.cpq-content button {
	margin-top: 1rem;
	margin-bottom: 1rem;
	font-weight: bold;
}

.cpq-content .input-group button {
	margin: 0;
	font-weight: normal;
}

.cpq-content a {
	color: var(--bs-body-color);
}

.cpq-content .btn-primary {
    --bs-btn-bg: #b29562;
    --bs-btn-border-color: #b29562;
    --bs-btn-hover-bg: #917c55;
    --bs-btn-hover-border-color: #917c55;
    --bs-btn-focus-shadow-rgb: 49, 132, 253;
    --bs-btn-active-bg: #917c55;
    --bs-btn-active-border-color: #917c55;
    --bs-btn-disabled-bg: #b29562;
    --bs-btn-disabled-border-color: #b29562;
}

.cpq-checkout .bg-primary {
    --bs-primary-rgb: 178, 149, 98;
}

.cpq-progress {
	display: table;
	width: 100%;
	table-layout: fixed;
	position:relative;
	margin-top: 2rem;
    margin-bottom: 4rem;
}
  
.cpq-progress .step {
	display: table-cell;
	text-align: center;
	vertical-align: top;
	overflow: visible;
	position:relative;
	font-size: 14px;
	font-size: .875rem;
	font-weight: bold;
}
    
.cpq-progress .step:not(:last-child):before {
	content: '';
	display:block;
	position: absolute;
	left: 50%;
	top: 37px;
	background-color: #e3ddd1;
	height: 6px;
	width: 100%;
}
    
.cpq-progress .step .node {
	display: inline-block;
	border: 6px solid #e3ddd1;
	background-color: #e3ddd1;
	border-radius: 27px;
	height: 27px;
	width: 27px;
	position: absolute;
	top: 26px;
	left: 50%;
	margin-left: -14px;
}
    
.cpq-progress .step.complete:before {
	background-color: #b29562;
}

.cpq-progress .step.complete .node {
	border-color: #b29562;
	background-color: #b29562;
}

.cpq-progress .step.complete .node:before {
	display: block;
	content: " ";
	width: 16px;
	height: 16px;
	background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="%23fff" d="M173.9 439.4l-166.4-166.4c-10-10-10-26.2 0-36.2l36.2-36.2c10-10 26.2-10 36.2 0L192 312.7 432.1 72.6c10-10 26.2-10 36.2 0l36.2 36.2c10 10 10 26.2 0 36.2l-294.4 294.4c-10 10-26.2 10-36.2 0z"/></svg>');
	background-repeat: no-repeat;
}
    
.cpq-progress .step.in-progress:before {
	background: #b29562;
	background: -moz-linear-gradient(left,  #b29562 0%, #e3ddd1 100%);
	background: -webkit-linear-gradient(left,  #b29562 0%, #e3ddd1 100%);
	background: linear-gradient(to right,  #b29562 0%, #e3ddd1 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(     startColorstr='#b29562', endColorstr='#e3ddd1',GradientType=1 );
}

.cpq-progress .step.in-progress .node {
	border-color: #b29562;
}

.cpq-tooltip {
	display: inline-block;
    position: relative;
    top: -1px;
    margin-left: 5px;
}

.cpq-content.cpq-checkout .form-check {
	display: inline-block;
	padding-right: 2rem;
}

.cpq-content.cpq-checkout h3 {
	text-align: left;
}

.cpq-content.cpq-checkout:not(.cpq-modal) h3:before {
	display: none;
}

.cpq-content.cpq-checkout p {
	padding-right: calc(var(--bs-gutter-x)* .5);
	padding-left: calc(var(--bs-gutter-x)* .5);
}

.cpq-content.cpq-checkout .company-field {
	display: none;
}

.cpq-content.cpq-checkout .company-field.show-company-field {
	display: block;
}

.cpq-content.cpq-checkout #map {
	height: 200px;
}

.cpq-content.cpq-checkout .order-md-last span.text-body-secondary {
	min-width: 65px;
    text-align: right;
}

#cpq-loader,
#cpq-loader {
	display: none;
}

.gm-font-headline {
	font-family: 'Playfair Display', Arial, sans-serif;
}

.gm-bg-body-img01 a,
.gm-bg-body-img02 a,
.gm-bg-body-img03 a {
	color: #fff;
}

.gm-bg-body-img01 {
	background-image: linear-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.5)), url('../images/img01.webp');
	object-fit: cover;
}

.gm-bg-body-img02 {
	background-image: linear-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.5)), url('../images/img02.webp');
	object-fit: cover;
}

.gm-bg-body-img03 {
	background-image: linear-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.5)), url('../images/img03.webp');
	object-fit: cover;
}

.gm-fs-xl {
	font-size: 4rem!important;
}

.col-md-2.gm-col-md-20 {
	width: 20%;
}

@media (min-width: 1200px) {

	.cpq-vimeo {
		width: 500px!important;
		height: 281px!important;
	}

}

.gm-logo-pos {
	position: absolute;
	right: 4rem;
	top: 4rem;
}

.gm-silent,
.gm-silent ~ .gm-check-label {
	opacity: .5;
}

.gm-silent:checked,
.gm-silent:checked ~ .gm-check-label {
	opacity: 1;
}

.gm-check-input.gm-silent:checked {
	opacity: 0;
}

.gm-check-input {
	opacity: 0;
    position: absolute;
    height: 100%;
    width: 100%;
	cursor: pointer;
}

.gm-check-label {
	cursor: pointer;
}

.gm-check-input:checked ~ .gm-check-label {
	border-color: #b5933e!important;
}

.is-invalid > .gm-check-label {
	border-color: red !important;
}

.btn-primary {
    --bs-btn-bg: #b29562;
    --bs-btn-border-color: #b29562;
    --bs-btn-hover-bg: #917c55;
    --bs-btn-hover-border-color: #917c55;
    --bs-btn-focus-shadow-rgb: 49, 132, 253;
    --bs-btn-active-bg: #917c55;
    --bs-btn-active-border-color: #917c55;
    --bs-btn-disabled-bg: #b29562;
    --bs-btn-disabled-border-color: #b29562;
}

body.page-id-27485,
body.page-template-wp-custom-template-de-konfigurator {
	background-color: #f8f9fa;
}

body.page-id-27485 h1.wp-block-post-title,
body.page-template-wp-custom-template-de-konfigurator h1.wp-block-post-title {
	display: none;
}

.bd-placeholder-img {
font-size: 1.125rem;
text-anchor: middle;
-webkit-user-select: none;
-moz-user-select: none;
user-select: none;
}

@media (min-width: 768px) {
.bd-placeholder-img-lg {
  font-size: 3.5rem;
}
}

.b-example-divider {
width: 100%;
height: 3rem;
background-color: rgba(0, 0, 0, .1);
border: solid rgba(0, 0, 0, .15);
border-width: 1px 0;
box-shadow: inset 0 .5em 1.5em rgba(0, 0, 0, .1), inset 0 .125em .5em rgba(0, 0, 0, .15);
}

.b-example-vr {
flex-shrink: 0;
width: 1.5rem;
height: 100vh;
}

.bi {
vertical-align: -.125em;
fill: currentColor;
}

.nav-scroller {
position: relative;
z-index: 2;
height: 2.75rem;
overflow-y: hidden;
}

.nav-scroller .nav {
display: flex;
flex-wrap: nowrap;
padding-bottom: 1rem;
margin-top: -1px;
overflow-x: auto;
text-align: center;
white-space: nowrap;
-webkit-overflow-scrolling: touch;
}

.btn-bd-primary {
--bd-violet-bg: #712cf9;
--bd-violet-rgb: 112.520718, 44.062154, 249.437846;

--bs-btn-font-weight: 600;
--bs-btn-color: var(--bs-white);
--bs-btn-bg: var(--bd-violet-bg);
--bs-btn-border-color: var(--bd-violet-bg);
--bs-btn-hover-color: var(--bs-white);
--bs-btn-hover-bg: #6528e0;
--bs-btn-hover-border-color: #6528e0;
--bs-btn-focus-shadow-rgb: var(--bd-violet-rgb);
--bs-btn-active-color: var(--bs-btn-hover-color);
--bs-btn-active-bg: #5a23c8;
--bs-btn-active-border-color: #5a23c8;
}

.bd-mode-toggle {
z-index: 1500;
}

.bd-mode-toggle .dropdown-menu .active .bi {
display: block !important;
}




footer.wp-block-template-part .footer-contact p a {
	color: var(--wp--preset--color--base);
}