/*
Theme Name: Sparkasse Bielefeld Immobilien
Theme URI: http://www.marketport.de
Author: market port
Author URI: http://www.marketport.de
Description: Made for Sparkasse Bielefeld
Version: 1.0
Text Domain: lighty
*/


/*! minireset.css v0.0.3 | MIT License | github.com/jgthms/minireset.css */
html, body, p, ol, ul, li, dl, dt, dd, blockquote, figure, fieldset, legend, textarea, pre, iframe, hr, h1, h2, h3, h4, h5, h6 {
    margin: 0;
    padding: 0
}

input[type="search"]::-webkit-search-decoration,
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-results-button,
input[type="search"]::-webkit-search-results-decoration {
    display: none;
}

h1, h2, h3, h4, h5, h6 {
    font-size: 100%;
    font-weight: normal
}

ul {
    list-style: none
}

button, input, select, textarea {
    margin: 0
}

html {
    box-sizing: border-box;
    scroll-behavior: smooth;
}

*, *:before, *:after {
    box-sizing: inherit
}

img, embed, iframe, object, audio, video {
    height: auto;
    max-width: 100%
}

iframe {
    border: 0
}

table {
    border-collapse: collapse;
    border-spacing: 0
}

td, th {
    padding: 0;
    text-align: left
}

/* General
----------------------------------------------- */

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

.no-margin-bottom {
    margin-bottom: 0 !important;
}

.no-margin-top {
    margin-top: 0 !important;
}

/* Chrome hack: SVG is rendered more smooth in Windozze. 100% magic, uncomment if you need it. */
/* Note, that will break hinting! In other OS-es font will be not as sharp as it could be */
/*
@media screen and (-webkit-min-device-pixel-ratio:0) {
  @font-face {
    font-family: 'fontello';
    src: url('../font/fontello.svg?38917338#fontello') format('svg');
  }
}
*/
[class^="icon-"]:before, [class*=" icon-"]:before {
    font-family: "fontello";
    font-style: normal;
    font-weight: normal;
    speak: never;

    display: inline-block;
    text-decoration: inherit;
    width: 1em;
    margin-right: .2em;
    text-align: center;
    /* opacity: .8; */

    /* For safety - reset parent styles, that can break glyph codes*/
    font-variant: normal;
    text-transform: none;

    /* fix buttons height, for twitter bootstrap */
    line-height: 1em;

    /* Animation center compensation - margins should be symmetric */
    /* remove if not needed */
    margin-left: .2em;

    /* you can be more comfortable with increased icons size */
    /* font-size: 120%; */

    /* Font smoothing. That was taken from TWBS */
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;

    /* Uncomment for 3D effect */
    /* text-shadow: 1px 1px 1px rgba(127, 127, 127, 0.3); */
}

.icon-check:before {
    content: '\e800';
}

/* '' */

html {
    scroll-behavior: smooth;
}

body {
    display: flex;
    min-height: 100vh;
    flex-direction: column;
    font-family: "Sparkasse Web";
    font-size: 14px;
    background: #f0f0f0;
}

footer {
    margin-top: auto;
}

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

a:hover {
    text-decoration: underline;
}

img {
    vertical-align: middle;
}

hr {
    margin: 30px 0;
    border-top: 1px solid #ddd;
    border-bottom: 0;
}

.wrapper {
    position: relative;
    margin: 0 auto;
    padding: 0 20px;
    max-width: 1010px;
}

.wrapper-wide {
    margin: 0 auto;
    padding: 0 20px;
}

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


/* Notices
----------------------------------------------- */

.ie-check {
    display: none;
    position: fixed;
    top: 10%;
    left: 0;
    right: 0;
    max-width: 500px;
    width: 300px;
    margin: 20px auto;
    padding: 60px 15px;
    text-align: center;
    font-size: 26px;
    color: #fff;
    background: #333;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    z-index: 99999999999;
    -webkit-box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.75);
    -moz-box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.75);
    box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.75);
}

.ie-check-close {
    margin: 0 auto 30px auto;
    cursor: pointer;
}

.ie-check-close img {
    max-width: 30px;
    height: auto;
}

.ie-check a {
    display: block;
    margin-top: 30px;
    font-size: 16px;
    text-transform: unset;
}


/* Accordion
----------------------------------------------- */

.accordion {
    font-size: 18px;
}

.accordion dt {
    margin-top: 10px;
    padding: 10px 20px;
    color: #fff;
    background: #666;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    cursor: pointer;
}

.accordion dt.active {
    background: #ee0000;
}

.accordion dd {
    display: none;
    padding: 20px;
    background: #fff;
}

/* Buttons
----------------------------------------------- */

.btn {
    display: inline-block;
    padding: 12px 15px;
    color: #ee0000;
}

.btn-red {
    color: #fff;
    background: #ee0000;
}

.btn-red:hover {
    background: #333;
}


/* Financing
----------------------------------------------- */

.financing {
    margin: 20px 0;
}

.financing .grid {
    display: grid;
    grid-gap: 10px;
}

.financing .grid .left .top {
    position: relative;
    margin: 0 0 20px 0;
}

.financing .grid .left .top div {
    position: absolute;
    right: 0;
    bottom: 10px;
    padding: 20px;
    color: #fff;
    font-size: 16px;
    background-color: rgba(255, 0, 0, 0.9);
}

.financing .grid .left .top span {
    margin-top: 5px;
    font-size: 22px;
}

.financing .grid .left .bottom ul {
    display: grid;
    grid-gap: 10px;
    grid-template-columns: 1fr;
}

.financing .grid .left .bottom ul li {
    position: relative;
    font-size: 18px;
    text-align: center;
    background: #fff;
}

.financing .grid .left .bottom ul li a {
    display: block;
    padding: 20px;
}

.financing .grid .left .bottom ul li a:hover {
    text-decoration: none;
    color: #ee0000;
}

.financing .grid .left .bottom ul li img {
    display: block;
    width: auto;
    max-height: 60px;
    margin: 0 auto 20px auto;
}

.financing .grid .left .more-financing {
    display: block;
    margin: 20px 0 0 0;
    padding: 12px 20px;
    color: #fff;
    font-size: 18px;
    text-decoration: none;
    background: #ee0000;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
}

.financing .grid .left .more-financing:hover {
    background: #666;
}

.financing .grid .left .more-financing img {
    margin-top: -4px;
    margin-right: 20px;
    max-width: 16px;
    height: auto;
}

.financing .grid .right .top a.btn-red {
    display: block;
    margin-bottom: 20px;
    text-align: center;
    background: #ee0000;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
}

.financing .grid .right .top a.btn-red:hover {
    text-decoration: none;
    background: #333;
}

.financing .grid .right .bottom {
    background: #fff;
}

.financing .grid .right .bottom .content {
    padding: 20px;
    line-height: 1.4;
    border-bottom: 1px solid #ddd;
}

.financing .grid .right .bottom .content h6 {
    margin-bottom: 10px;
    color: #ee0000;
    font-size: 20px;
}

.financing .grid .right .bottom .baufilead_zinstableau {
    padding: 10px;
}

/* Header
----------------------------------------------- */
.header-top {
    padding: 10px 0;
    color: #fff;
    background: #ee0000;
}

.header-top .wrapper-wide {
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    max-width: 1600px;
}

.header-top .navigation-wrapper {
    justify-self: end;
}

.header-top .navigation-wrapper.hide {
    z-index: -1;
    opacity: 0;
    position: absolute;
    max-width: 0;
}

.header-top .vcard .grid {
    display: grid;
    grid-gap: 10px;
    grid-template-columns: 1fr 1fr;
    max-width: 400px;
}

.header-top .vcard .grid span {
    justify-self: start;
    align-self: center;
    font-style: italic;
}

.header-middle {
    position: relative;
    padding: 0;
}

.header-middle section {
    position: relative;
}

.header-middle .content-wrapper {
    display: none;
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    background: red;
}

.header-middle .content {
    position: absolute;
    left: 0;
    bottom: 100px;
    padding: 20px;
    max-width: 390px;
    background: #fff;
}

.header-middle .content h6 {
    margin: 0 0 10px 0;
    color: #ee0000;
    font-size: 24px;
    font-weight: bold;
}

.header-middle .content p {
    margin-bottom: 10px;
    line-height: 1.4;
}

.header-middle .content a {
    display: inline-block;
    padding: 10px 20px;
    color: #fff;
    font-weight: bold;
    background: #ee0000;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
}


/* Navigation
----------------------------------------------- */
/*new mobile */
.active-mobile {
    display: flex !important;
}

.active-sub {
    display: block !important;
}

#new-mobile-nav {
    display: none;
    position: fixed;
    width: 100%;
    background: #ffffff;
    color: #ee0000;
    top: 0;
    left: 0;
    z-index: 9999;
    height: 100vh;
}

.nav-close {
    cursor: pointer;
    position: relative;
    top: 50px;
    left: 270px;
    scale: .8;
}

#new-mobile-nav #menu-hauptmenue-1 {
    position: relative;
    top: 15%;
    font-size: 16px;
    width: 170px;
    margin: 0 auto;
}

#new-mobile-nav #menu-hauptmenue-1 > li {
    border-bottom: .5px solid #ddd;
    padding: 5px 0;
}

#new-mobile-nav #menu-hauptmenue-1 .sub-menu li {
}

#new-mobile-nav li {
    font-weight: bold;
    padding-bottom: 5px;
}

#new-mobile-nav .current-menu-item {
    font-weight: bold;
    padding-bottom: 5px
}

#new-mobile-nav .menu-item-has-children {
    font-weight: bold;
    padding-bottom: 5px;
    cursor: pointer;
}

#new-mobile-nav .menu-item-has-children a {
    z-index: -1;
    position: relative;
}

#new-mobile-nav .sub-menu {
    display: none;
    padding: 5px;
}

#new-mobile-nav .sub-menu a {
    z-index: 0 !important;
}

#new-mobile-nav .sub-menu li {
    padding: 3px
}

#new-mobile-nav .menu-item-has-children li {
    font-weight: normal;
}


/*
----------------------------------*/
.navigation {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: auto;
    background-color: rgba(0, 0, 0, 0.4);
    z-index: 9;
}

.navigation.hidden {
    display: none;
}

.navigation.show {
    display: block;
}

.nav-toggle {
    position: absolute;
    top: 5px;
    right: 0;
    display: inline-block;
    padding: 20px;
    font-size: 26px;
    cursor: pointer;
}

.navigation .nav-close {
    position: absolute;
    top: 10px;
    left: 15px;
    color: #999;
    cursor: pointer;
    z-index: 9999999999;
    -webkit-transition: all 200ms ease-in;
    -o-transition: all 200ms ease-in;
    -moz-transition: all 200ms ease-in;
}

.navigation .nav-close:hover {
    color: #333;
}

.navigation ul {
    position: absolute;
    top: 0;
    left: 0;
    padding-top: 40px;
    width: 290px;
    height: 100%;
    text-align: left;
    display: table;
    background: #fff;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    overflow-y: auto;
    -webkit-box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.45);
    -moz-box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.45);
    box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.45);
    z-index: 99999999;
}

.navigation ul li {
    position: relative;
    border-bottom: 1px solid #f0f0f0;
}

.navigation ul li a {
    display: block;
    padding: 10px 20px;
    color: #000;
    text-decoration: none;
    -webkit-transition: all 200ms ease-in;
    -o-transition: all 200ms ease-in;
    -moz-transition: all 200ms ease-in;
}

.navigation ul li a:hover {
    color: #fff;
    background: #333;
}

.navigation ul li ul {
    padding-top: 0;
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;
}

.navigation ul li ul li {
    border-bottom: 1px solid #ddd;
}

.navigation ul li ul li a {
    font-size: 16px;
    background: #f6f6f6;
}


/* Header-notice
----------------------------------------------- */
.header-notice {
    width: 100%;
    height: 50px;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    padding: 10px;
    color: #fff;
    background: #ee0000;
}

/* Frontpage Content Top
-------------------------------------------------*/
.content-frontpage {
    margin: 20px auto 0 auto;
    max-width: 840px;
}

.content-frontpage .content-wrapper .content {
    padding: 20px;
    max-width: 840px;
    background: #fff;
    margin: 0 auto;
    width: 100%;
}

.content-frontpage .content-wrapper .content h6 {
    margin: 0 0 10px 0;
    color: #ee0000;
    font-size: 24px;
    font-weight: bold;
}

.content-frontpage .content-wrapper .content p {
    margin-bottom: 10px;
    line-height: 1.4;
}

.content-frontpage .content-wrapper .content a {
    display: inline-block;
    padding: 10px 20px;
    color: #fff;
    font-weight: bold;
    background: #ee0000;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
}

.content-1, .content-2 {
    display: none;
}

.show {
    display: block !important;
}

.video-container.landingpage {
    padding: 15px;
    background: #fff;
}

/* Main
----------------------------------------------- */

main {
    padding: 20px 0;
}


/* Breadcrumbs
----------------------------------------------- */

.breadcrumbs {
    padding: 20px 0 0 0;
    font-size: 12px;
}

.breadcrumbs .arrow {
    width: 12px;
    height: 12px;
    background: url(data:image/svg+xml;utf8;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iaXNvLTg4NTktMSI/Pgo8IS0tIEdlbmVyYXRvcjogQWRvYmUgSWxsdXN0cmF0b3IgMTYuMC4wLCBTVkcgRXhwb3J0IFBsdWctSW4gLiBTVkcgVmVyc2lvbjogNi4wMCBCdWlsZCAwKSAgLS0+CjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+CjxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgdmVyc2lvbj0iMS4xIiBpZD0iQ2FwYV8xIiB4PSIwcHgiIHk9IjBweCIgd2lkdGg9IjUxMnB4IiBoZWlnaHQ9IjUxMnB4IiB2aWV3Qm94PSIwIDAgNDUxLjg0NiA0NTEuODQ3IiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCA0NTEuODQ2IDQ1MS44NDc7IiB4bWw6c3BhY2U9InByZXNlcnZlIj4KPGc+Cgk8cGF0aCBkPSJNMzQ1LjQ0MSwyNDguMjkyTDE1MS4xNTQsNDQyLjU3M2MtMTIuMzU5LDEyLjM2NS0zMi4zOTcsMTIuMzY1LTQ0Ljc1LDBjLTEyLjM1NC0xMi4zNTQtMTIuMzU0LTMyLjM5MSwwLTQ0Ljc0NCAgIEwyNzguMzE4LDIyNS45MkwxMDYuNDA5LDU0LjAxN2MtMTIuMzU0LTEyLjM1OS0xMi4zNTQtMzIuMzk0LDAtNDQuNzQ4YzEyLjM1NC0xMi4zNTksMzIuMzkxLTEyLjM1OSw0NC43NSwwbDE5NC4yODcsMTk0LjI4NCAgIGM2LjE3Nyw2LjE4LDkuMjYyLDE0LjI3MSw5LjI2MiwyMi4zNjZDMzU0LjcwOCwyMzQuMDE4LDM1MS42MTcsMjQyLjExNSwzNDUuNDQxLDI0OC4yOTJ6IiBmaWxsPSIjZmYwMDAwIi8+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPC9zdmc+Cg==);
}

/* Page-Template: selling.php
----------------------------------------------- */

.selling-widgets {
    display: grid;
    grid-gap: 10px;
    grid-template-columns: 1fr;
}

.selling-widgets aside {
    color: #333;
    font-size: 18px;
    text-align: center;
    background: #fff;
}

.selling-widgets aside:hover {
    -webkit-box-shadow: inset 0 0 0 5px rgba(0, 0, 0, 0.15);
    box-shadow: inset 0 0 0 5px rgba(0, 0, 0, 0.15);
}

.selling-widgets aside a {
    padding: 20px;
    display: block;
}

.selling-widgets aside a:hover {
    text-decoration: none;
}

.selling-widgets aside img {
    margin-bottom: 20px;
    width: auto;
    max-height: 60px;
}


/* Page-Template: employees.php
----------------------------------------------- */

.employees-widgets {
    display: grid;
    grid-gap: 10px;
    grid-template-columns: 1fr;
}

.employees-widgets aside {
    color: #333;
    font-size: 18px;
    text-align: center;
    background: #fff;
}

.employees-widgets aside:hover {
    -webkit-box-shadow: inset 0 0 0 5px rgba(0, 0, 0, 0.15);
    box-shadow: inset 0 0 0 5px rgba(0, 0, 0, 0.15);
}

.employees-widgets aside a {
    padding: 20px;
    display: block;
}

.employees-widgets aside a:hover {
    text-decoration: none;
}

.employees-widgets aside img {
    margin-bottom: 20px;
    width: auto;
    max-height: 60px;
}


/* Page-Template: selling-form.php
----------------------------------------------- */

.selling-form .grid {
    display: grid;
    grid-gap: 10px;
    grid-template-columns: 1fr;
}

.selling-form .grid .short-description,
.selling-form .grid .entry-content,
.selling-form .grid .form {
    padding: 20px;
    background: #fff;
}

.selling-form .grid .short-description,
.selling-form .grid .entry-content {
    margin-bottom: 20px;
}

.selling-form .grid .short-description img {
    margin-bottom: 20px;
    max-width: 120px;
    height: auto;
}

.selling-form .grid .entry-content h2 {
    margin-top: 0;
}

.selling-form .grid .form input[type="text"],
.selling-form .grid .form input[type="email"],
.selling-form .grid .form input[type="tel"],
.selling-form .grid .form select,
.selling-form .grid .form textarea {
    margin-bottom: 5px;
    padding: 5px 10px;
    color: inherit;
    font-family: inherit;
    font-size: inherit;
    width: 100%;
    box-sizing: border-box;
    background: #f0f0f0;
    border: none;
}

.selling-form .grid .form input[type="submit"] {
    margin-top: 10px;
    margin-bottom: 5px;
    padding: 10px 20px;
    color: #fff;
    font-size: inherit;
    box-sizing: border-box;
    background: #ee0000;
    border: none;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    cursor: pointer;
}

.selling-form .grid .form input[type="submit"]:hover {
    background: #333;
}

.selling-form .grid .form .wpcf7-acceptance {
    font-size: 80%;
}

.selling-form .grid .form .wpcf7-acceptance input[type="checkbox"] {
    margin-right: 10px;
}

/* Stores
----------------------------------------------- */

.stores-list .grid {
    display: grid;
    grid-gap: 20px;
    grid-template-columns: 1fr;
}

.stores-list address {
    font-size: 18px;
    font-style: normal;
    line-height: 1.4;
    background: #fff;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

.stores-list address h2 {
    padding: 10px 20px;
    color: #fff;
    background: #ee0000;
}

.stores-list address .inner {
    padding: 20px;
}

.stores-list address figure {
    margin: 20px -20px -20px -20px;
}


/* Tabs
----------------------------------------------- */

ul.tabs {
    display: flex;
    margin: 0;
    padding: 0;
}

ul.tabs li {
    margin: 0 10px 10px 0;
    padding: 10px 20px;
    background: #fff;
    cursor: pointer;
}

ul.tabs li.active {
    color: #fff;
    background: #ee0000;
}

.tab-content {
    display: none;
    animation: fadeEffect 1s;
}

.tab-content.active {
    display: block;
}


/* Toolbox
----------------------------------------------- */

.toolbox-overlay {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.6);
    z-index: 9999;
}

.toolbox {
    display: none;
    position: fixed;
    top: 20%;
    right: 0;
    -webkit-box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.15);
    -moz-box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.15);
    box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.15);
    z-index: 9999;
}

.toolbox > ul {
    position: relative;
}

.toolbox > ul > li {
    padding: 7px 12px;
    color: #fff;
    background: #ee0000;
    cursor: pointer;
}

.toolbox > ul > li:hover {
    background: #333;
}

.toolbox ul > li img {
    max-width: 22px;
    height: auto;
}

.toolbox > ul > li > .content {
    display: none;
    position: absolute;
    top: 0;
    right: 80px;
    padding: 20px;
    width: 300px;
    color: #000;
    background: #fff;
    -webkit-box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.15);
    -moz-box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.15);
    box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.15);
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
}

.toolbox > ul > li > .content .inner {
    position: relative;
}

.toolbox > ul > li > .content .inner h6 {
    font-size: 18px;
    margin-bottom: 10px;
}

.toolbox > ul > li > .content .close {
    position: absolute;
    top: -60px;
    right: -20px;
    padding: 4px 6px 6px 6px;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
    background: #fff;
}

.toolbox > ul li > .content .close:hover {
    background: #333;
}

.toolbox > ul li > .content .close img {
    max-width: 14px;
    height: auto;
}

.toolbox > ul > li > .content input[type="text"],
.toolbox > ul > li > .content input[type="email"],
.toolbox > ul > li > .content input[type="tel"],
.toolbox > ul > li > .content select,
.toolbox > ul > li > .content textarea {
    margin-bottom: 5px;
    padding: 8px 12px;
    font-family: inherit;
    font-size: inherit;
    width: 100%;
    background: #f0f0f0;
    border: 1px solid #f0f0f0;
}

.toolbox > ul > li .content .checkbox {
    margin: 10px 0;
}

.toolbox > ul > li .content .checkbox input[type="checkbox"] {
    margin-right: 10px;
}

.toolbox > ul > li > .content input[type="submit"] {
    display: block;
    padding: 8px 12px;
    font-family: inherit;
    font-size: inherit;
    color: #fff;
    width: 100%;
    background: #ee0000;
    border: 1px solid #ee0000;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
    cursor: pointer;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

.toolbox > ul > li > .content input[type="submit"]:hover {
    background: #333;
    border: 1px solid #333;
}


/* Contact Form
----------------------------------------------- */

.contact-form {
    margin-top: 30px;
}

.contact-form h2 {
    padding: 10px 20px;
    color: #fff;
    font-size: 18px;
    background: #ee0000;
}

.contact-form .wpcf7 {
    padding: 20px;
    background: #fff;
}

.contact-form .wpcf7 input[type="text"],
.contact-form .wpcf7 input[type="email"],
.contact-form .wpcf7 input[type="tel"],
.contact-form .wpcf7 select,
.contact-form .wpcf7 textarea {
    margin-bottom: 10px;
    padding: 10px;
    background: #f0f0f0;
    border: none;
    width: 100%;
    font-family: inherit;
    font-size: inherit;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

.contact-form .wpcf7 .wpcf7-acceptance input[type="checkbox"] {
    margin-right: 10px;
}

.contact-form .wpcf7 input[type="submit"] {
    margin-top: 20px;
    padding: 10px;
    color: #fff;
    background: #ee0000;
    border: none;
    font-family: inherit;
    font-size: inherit;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    cursor: pointer;
}

.contact-form .wpcf7 input[type="submit"]:hover {
    background: #333;
}


/* Article
----------------------------------------------- */

article.hentry h1 {
    margin: 0 0 20px 0;
    color: #ee0000;
    font-size: 28px;
}

article.hentry h2,
article.hentry h3,
article.hentry h4 {
    margin: 30px 0 15px 0;
    color: #ee0000;
    font-size: 24px;
}

article.hentry h4 {
    margin-top: 0;
    color: #000;
    font-size: 22px;
}

article.hentry p {
    margin-bottom: 20px;
    font-size: 18px;
    line-height: 1.4;
}

article.hentry ul {
    margin: 20px 0;
    font-size: 18px;
    line-height: 1.4;
}

article.hentry ul li ul {
    margin: 0;
}

article.hentry ul li {
    margin: 0 0 0 30px;
    list-style-type: square;
}

article.hentry hr {
    margin: 40px 0;
    border-top: 0;
    border-bottom: 1px solid #ddd;
}


/* Page-Template: front-page.php
----------------------------------------------- */

.front-page-widgets {
    display: grid;
    grid-gap: 20px;
    grid-template-columns: 1fr 1fr;
    margin: 0 auto 30px auto;
    max-width: 800px;
}

.front-page-widgets aside {
    text-align: center;
    color: #666;
    background: #fff;
    border-bottom: 2px solid #e3e3e3;
}

.front-page-widgets aside::after {
    margin: 0 0 -2px 0;
    content: '';
    display: block;
    width: 0;
    height: 2px;
    background: #bcbcbc;
    transition: width .5s;
}

.front-page-widgets aside:hover::after {
    width: 100%;
}

.front-page-widgets aside img {
    margin-bottom: 15px;
    width: auto;
    max-height: 60px;
}

.front-page-widgets aside a {
    padding: 20px;
    display: block;
}

.front-page-widgets a:hover {
    opacity: 0.6;
    text-decoration: none;
}

.home article {
    margin-bottom: 20px;
}

.home article h1 {
    color: #ee0000;
    font-size: 40px;
}

.home article p {
    font-size: 18px;
    line-height: 1.4;
}

/* Counter
----------------------------------------------- */

.counter {
    padding: 20px 0;
    color: #ee0000;
}

.counter .grid {
    display: grid;
    grid-gap: 10px;
    grid-template-columns: 1fr;
}

.counter .grid section {
    position: relative;
    text-align: center;
    justify-self: center;
}

.counter .grid section:before {
    position: absolute;
    top: 50%;
    left: -80px;
    content: ' ';
    width: 60px;
    border-bottom: 1px solid #ee0000;
}

.counter .grid section:after {
    position: absolute;
    top: 50%;
    right: -80px;
    content: ' ';
    width: 60px;
    border-bottom: 1px solid #ee0000;
}

.counter .grid section span {
    display: block;
    font-size: 30px;
}


/* Real Estates Overview
----------------------------------------------- */

.real-estates .grid {
    display: grid;
    grid-gap: 10px;
    grid-template-columns: 1fr;
}

.real-estates .grid article {
    background: #fff;
}

.real-estates .grid article a:hover {
    text-decoration: none;
}

.real-estates .grid article .content {
    padding: 20px;
    color: #666;
}

.real-estates .grid article .content h2,
.real-estates .grid article .content h3,
.real-estates .grid article .content h4 {
    margin: 0 0 10px 0;
    color: #ee0000;
    font-size: 20px;
    font-weight: bold;
}

.real-estates .grid article hr {
    margin: 10px 0;
    border-top: 0;
    border-bottom: 1px solid #ddd;
}

.real-estates figure {
    max-height: 210px;
    overflow: hidden;
}

.real-estates h2 {
    margin-bottom: 20px;
    color: #333;
    font-size: 22px;
}

.real-estates a.more-estates {
    display: block;
    margin: 20px 0 0 0;
    padding: 12px 20px;
    color: #333;
    font-size: 18px;
    text-decoration: none;
    background: #fff;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
}

.real-estates a.more-estates:hover {
    background: #ddd;
}

.real-estates a.more-estates img {
    margin-top: -4px;
    margin-right: 20px;
    max-width: 16px;
    height: auto;
}


/* Cookie Notice
-------------------------------------------------------------- */

.cookie-notice {
    position: fixed;
    left: 0;
    bottom: 0;
    padding: 20px;
    max-width: 400px;
    color: #000;
    font-size: 14px;
    line-height: 1.4;
    background: #fff;
    z-index: 9;
    -webkit-box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.2);
    box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.2);
}

.cookie-notice h6 {
    margin-bottom: 10px;
    font-size: 18px;
}

.cookie-notice .cn-content {
    margin: 0 0 10px 0;
    font-size: 14px;
}

.cookie-notice .cn-buttons {
    display: grid;
    grid-gap: 20px;
    grid-template-columns: 1fr 3fr;
    margin-top: 10px;
    padding-top: 10px;
    border-top: 1px dotted #ddd;
}

.cookie-notice .cn-btn {
    cursor: pointer;
}

.cookie-notice .cn-btn:hover {
    text-decoration: none;
}

.cookie-notice .cn-allow {
    display: block;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding: 6px 20px;
    color: #fff;
    font-size: 16px;
    text-align: center;
    text-decoration: none;
    background: #ee0000;
    border: 3px solid #ee0000;
    -webkit-border-radius: 40px;
    -moz-border-radius: 40px;
    border-radius: 40px;
}

.cookie-notice .cn-allow:hover {
    color: #fff;
    background: #666666;
    border-color: #666666;
}

.cookie-notice .cn-deny {
    padding: 10px 5px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    display: inline-block;
    color: #999;
    text-decoration: none;
}

.cookie-notice .cn-deny:hover {
    color: inherit;
    opacity: 0.8;
}


/* Employees
----------------------------------------------- */

.employees-list {
    display: grid;
    grid-gap: 10px;
    grid-template-columns: 1fr;
}

.employees-list article,
.employees-single article {
    display: grid;
    grid-gap: 10px;
    padding: 20px;
    line-height: 1.4;
    background: #fff;
}

.employees-list article img.icon,
.employees-single article img.icon {
    margin-right: 10px;
    width: auto;
    max-height: 16px;
}

.employees-list article .fn,
.employees-single article .fn {
    margin: 0 0 10px 0;
    color: #ee0000;
    font-size: 20px;
}

.employees-list article .position,
.employees-single article .position {
    margin-bottom: 10px;
    color: #999;
}


/* Footer
----------------------------------------------- */

.footer-widgets {
    padding: 10px 0;
    color: #fff;
    background: #666666;
}

.footer-widgets .widget-area {
    display: grid;
    grid-gap: 10px;
    grid-template-columns: 1fr;
}

.footer-widgets aside {
    line-height: 1.4;
}

.footer-widgets aside h6 {
    margin-bottom: 10px;
    font-size: 14px;
    font-weight: bold;
}

.footer-widgets aside p {
    margin-bottom: 15px;
}

.footer-widgets aside p:last-child {
    margin-bottom: 0;
}

.footer-widgets address {
    font-style: normal;
}

.footer-legal {
    padding: 10px 0;
    color: #fff;
    background: #ee0000;
}

.footer-legal .grid {
    display: grid;
    grid-gap: 10px;
    grid-template-columns: auto auto auto;
}

.footer-legal .grid ul.socialmedia {
    align-self: center;
}

.footer-legal .grid ul.socialmedia li {
    display: inline-block;
}

.footer-legal .grid ul.socialmedia li img {
    margin-right: 5px;
    width: 20px;
    max-height: 20px;
}

.footer-legal .grid ul.menu {
    align-self: center;
    justify-self: end;
}

.footer-legal .grid ul.menu li {
    display: inline-block;
    margin-left: 10px;
}


/* Override Gutenberg Stylesheets
----------------------------------------------- */

.wp-block-media-text__content {
    padding: 0 !important;
}


/* Plugin: Rich Snippet Reviews
----------------------------------------------- */

.rsr-aggregate-seal {
    padding: 0;
    color: #fff;
    background: none;
    border: none;
}

.rsr-aggregate-seal .photo {
    display: none;
}

.rsr-aggregate-seal .rsr-rating-txt,
.rsr-aggregate-seal .vcard,
.rsr-aggregate-seal .rsr-review-us,
.rsr-aggregate-seal .review-top .left {
    color: #fff !important;
}


/* Pagination
----------------------------------------------- */

.pagination,
.page-numbers {
    margin: 10px 0 0 0;
}

.page-numbers li {
    display: inline-block;
}

.pagination span,
.pagination a,
.page-numbers li span,
.page-numbers li a {
    display: inline-block;
    padding: 7px 12px;
    background: #fff;
}

.pagination a:hover,
.page-numbers li a:hover,
.pagination span.current,
.page-numbers span.current {
    color: #fff;
    background: #ee0000;
    text-decoration: none;
}


/* Category, Archive
----------------------------------------------- */

.archive-title {
    margin: 0 0 20px 0;
    color: #ee0000;
    font-size: 28px;
}

.posts {
    display: flex;
    grid-gap: 20px;
    flex-wrap: wrap;
}

.posts article {
    color: #666;
    background: #fff;
}

.posts article time {
    margin-bottom: 10px;
    display: block;
}

.posts article figure img {
    max-width: 100%;
    height: auto;
}

.posts article h2 {
    margin: 10px 0;
    color: #ee0000;
    font-size: 20px;
    font-weight: bold;
}

.posts article .content {
    padding: 10px 20px 20px 20px;
}

.posts article .entry-summary {
    line-height: 1.4;
}


/* Plugin: WP immoport => Search
----------------------------------------------- */

.immoport-search {
    margin-bottom: 20px;
    padding: 20px;
    background: #fff;
}

.immoport-search h1 {
    margin-bottom: 10px;
    color: #ee0000;
    font-size: 20px;
    font-weight: bold;
}

.immoport-search .grid {
    display: grid;
    margin-bottom: 10px;
    grid-gap: 10px;
    grid-template-columns: 1fr;
}

.immoport-search input[type="text"],
.immoport-search input[type="text"],
.immoport-search input[type="text"],
.immoport-search select {
    padding: 10px;
    background: #f0f0f0;
    border: none;
}

.immoport-search input[type="submit"] {
    padding: 10px 20px;
    color: #fff;
    font-weight: bold;
    background: #ee0000;
    border: none;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    cursor: pointer;
}


/* Plugin: WP immoport => Archive
----------------------------------------------- */

.immoport-archive .grid {
    display: grid;
    grid-gap: 10px;
    grid-template-columns: 1fr;
}

.immoport-archive .grid article {
    background: #fff;
}

.immoport-archive .grid article .content {
    padding: 20px;
}

.immoport-archive .grid article .content h2 {
    margin-bottom: 15px;
    font-size: 20px;
    color: #ee0000;
}

.immoport-archive .grid article hr {
    margin: 10px 0;
}


/* Plugin: WP immoport => Pagination
----------------------------------------------- */

.immoport-pagination {
    margin-bottom: 20px;
}


/* Plugin: WP immoport Single
----------------------------------------------- */

.im-single-grid > div {
    margin-bottom: 20px;
}

.im-box {
    padding: 20px;
    background: #fff;
}

.im-box h2 {
    margin: -20px -20px 20px -20px;
    padding: 10px 20px;
    color: #000;
    font-size: 18px;
    font-weight: 600;
    background: #ddd;
}

.im-box table {
    width: 100%;
}

.im-box table tr th,
.im-box table tr td {
    padding: 10px;
}

.im-box table tr th {
    font-weight: 600;
}

.im-box table tr:nth-child(2n) {
    background: #f6f6f6;
}

.im-box table tr.dev-value th,
.im-box table tr.dev-value td {
    background: #fcffe2;
}

.im-box table tr.dev-value:nth-child(2n) th,
.im-box table tr.dev-value:nth-child(2n) td {
    background: #eaedd0;
}


.im-title {
    grid-area: title;
    margin-top: 20px;
}

.im-title .grid {
    display: grid;
    grid-gap: 10px;
    grid-template-columns: 1fr;
}

.im-title h1 {
    color: #ee0000;
    font-size: 22px;
}

.im-title .btn {
    background: #ee0000;
}

.im-property-data {
    grid-area: propertydata;
    align-self: start;
    color: #fff;
    background: #333;
}

.im-property-data .grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
}

.im-property-data .grid > div {
    padding: 20px;
    line-height: 1.6;
    text-align: center;
    border-right: 1px dotted #777;
    border-bottom: 1px dotted #777;
}

.im-property-data .grid > div:last-child {
    border-right: 0;
}

.im-property-data .grid > div img {
    margin-bottom: 15px;
    width: auto;
    max-height: 30px;
}

.im-property-data .grid > div strong {
    display: block;
}

.im-person-of-contact {
    grid-area: personofcontact;
    align-self: start;
}

.im-person-of-contact .icon {
    margin-right: 10px;
    max-width: 16px;
    height: auto;
}

.im-person-of-contact h2 span {
    font-weight: 300;
}

.im-person-of-contact .seller {
    display: grid;
    grid-gap: 20px;
    grid-template-columns: auto auto;
    line-height: 1.8;
}

.im-person-of-contact .seller a {
    text-decoration: none;
}

.im-person-of-contact .seller a:hover {
    color: #ee0000;
}

.im-person-of-contact .seller i {
    margin-right: 10px;
    color: #ee0000;
}

.im-facilities {
    grid-area: facilities;
    align-self: start;
}

.im-facilities ul li {
    position: relative;
}

.im-facilities ul li:before {
    margin-right: 10px;
    content: '\e800';
    color: green;
    font-family: 'fontello';
}

.im-property-description {
    grid-area: description;
    align-self: start;
}

.im-property-description p {
    margin-bottom: 15px;
    line-height: 1.6;
}

.im-property-description p:last-child {
    margin-bottom: 0;
}

.im-map {
    grid-area: map;
    align-self: start;
}

.im-contact {
    grid-area: contact;
    align-self: start;
}

.im-contact h2 {
    color: #fff;
    background: #ee0000;
}

.im-contact h2 img {
    margin-right: 15px;
}

.im-contact .im-contact-form input[type="text"],
.im-contact .im-contact-form input[type="email"],
.im-contact .im-contact-form input[type="tel"],
.im-contact .im-contact-form textarea {
    margin-bottom: 10px;
    padding: 10px;
    width: 100%;
    color: inherit;
    font-size: inherit;
    font-family: inherit;
    background: #f0f0f0;
    border: 1px solid #f0f0f0;
}

.im-contact .im-checkbox {
    margin: 10px 0;
}

.im-contact .im-contact-form input[type="submit"] {
    padding: 10px 20px;
    color: #fff;
    font-weight: 600;
    font-size: inherit;
    font-family: inherit;
    cursor: pointer;
    background: #ee0000;
    border: none;
}

.im-contact .im-contact-form input[type="submit"]:hover {
    background: #333;
}

.im-gallery {
    grid-area: gallery;
    align-self: start;
    max-width: 100%;
}

.im-energypass {
    grid-area: energypass;
}


/* Search Agent
----------------------------------------------- */

.searchagent {
    margin-bottom: 20px;
    padding: 20px;
    display: grid;
    grid-gap: 10px;
    grid-template-columns: 1fr;
    background: #fff;
}

.searchagent input[type="tel"],
.searchagent input[type="email"],
.searchagent select {
    padding: 7px 10px;
    font-size: inherit;
    background: #f0f0f0;
    border: 1px solid #f0f0f0;
}

.searchagent input[type="submit"] {
    padding: 10px 20px;
    color: #fff;
    font-family: inherit;
    font-size: inherit;
    background: #ee0000;
    border: 1px solid #ee0000;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
    cursor: pointer;
}

.searchagent input[type="submit"]:hover {
    background: #333;
    border: 1px solid #333;
}


/* Search Agent Interferer
----------------------------------------------- */

.search-agent-interferer {
    margin: 30px 0 0 0;
    font-size: 18px;
    font-weight: 300;
    line-height: 1.3;
}

.search-agent-interferer > a {
    display: block;
    padding: 20px;
    color: #333;
    background: #fff;
}

.search-agent-container {
    padding: 20px 20px 0 20px;
    color: #333;
    background: #fff;

    p:first-of-type {
        margin-bottom: 0;
    }
}

.search-agent-interferer > a:hover {
    text-decoration: none;
    -webkit-box-shadow: inset 0px 0px 0px 5px rgba(221, 221, 221, 1);
    -moz-box-shadow: inset 0px 0px 0px 5px rgba(221, 221, 221, 1);
    box-shadow: inset 0px 0px 0px 5px rgba(221, 221, 221, 1);
}

.search-agent-interferer .grid {
    display: grid;
    grid-gap: 10px;
    grid-template-columns: 1fr;
}

.search-agent-interferer .grid p {
    justify-self: center;
    align-self: center;
}

.search-agent-interferer .grid img {
    width: 100%;
    max-width: 100px;
    height: auto;
    justify-self: center;
    align-self: center;
}


/* Whatsapp Service */
.whatsapp-service {
    margin-top: 30px;
    padding: 20px;
    font-size: 18px;
    font-weight: 300;
    line-height: 1.4;
    background: #fff;
}

.whatsapp-service .grid {
    display: grid;
    grid-gap: 20px;
    grid-template-columns: 1fr;
}

.whatsapp-service .grid figure {
    justify-self: center;
    align-self: center;
}

.whatsapp-service .grid figure img {
    max-width: 100px;
    height: auto;
}

.whatsapp-service .grid .content p {
    margin-bottom: 20px;
}

.whatsapp-service .grid content p:last-child {
    margin-bottom: 0;
}

.whatsapp-service .grid .more {
    justify-self: center;
    align-self: center;
}

.whatsapp-service .grid .more a {
    display: inline-block;
    padding: 10px 20px;
    color: #fff;
    background: #ee0000;
}


article.hentry .sip_preisfinder ul li {
    list-style-type: none;
}


/* Table of Contents
----------------------------------------------- */

.table-of-contents {
    margin: 0 0 20px 0;
    padding: 20px;
    background: #fff;
}

.table-of-contents h6 {
    margin: 0;
    color: #ee0000;
    font-size: 20px;
    cursor: pointer;
}

.table-of-contents h6 img {
    margin-left: 15px;
}

.table-of-contents figure {
    margin-bottom: 20px;
}

.table-of-contents ul {
    display: none;
    margin-bottom: 0 !important;
    padding-bottom: 0;
}

/* Shortcode [box][/box]
----------------------------------------------- */

.box {
    margin: 20px 0;
    padding: 30px;
    background: #fff;
}

.box h3:first-child {
    margin-top: 0;
}


/* Media Queries
----------------------------------------------- */

/* Minimum width of 400 pixels. */
@media screen and (min-width: 400px) {

    /* Page-Template: front-page.php */
    .front-page-widgets {
        grid-template-columns: 1fr 1fr;
    }

    /* Page-Template: selling.php */
    .selling-widgets {
        margin-bottom: 20px;
        grid-gap: 20px;
        grid-template-columns: 1fr 1fr;
    }

    /* Page-Template: employees.php */
    .employees-widgets {
        margin-bottom: 20px;
        grid-gap: 20px;
        grid-template-columns: 1fr 1fr;
    }

    /* Plugin: WP immoport => Archive */
    .immoport-archive {
        grid-gap: 20px;
        grid-template-columns: 1fr 1fr;
    }

    .posts article {
        flex-grow: 1;
        width: 33%;
    }

}

/* Minimum width of 500 pixels. */
@media screen and (min-width: 500px) {

    /* Navigation */
    .nav-toggle,
    .nav-close {
        display: none;
    }

    .navigation {
        display: block;
        position: relative;
        background: none;
        overflow: visible;
    }

    .navigation ul {
        display: flex;
        flex-wrap: wrap;
        position: relative;
        margin: 0;
        padding: 0;
        width: 100%;
        background: none;
        -webkit-box-shadow: none;
        -moz-box-shadow: none;
        box-shadow: none;
        overflow: visible;
    }

    .navigation ul li {
        margin-left: 30px;
        border-bottom: 0;
    }

    .navigation ul li a {
        padding: 17px 0;
        color: #fff;
    }

    .navigation ul li a:hover {
        color: inherit;
        opacity: 0.7;
        background: none;
    }

    .navigation ul li ul {
        display: none;
        -webkit-box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.45);
        -moz-box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.45);
        box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.45);
    }

    .navigation {
        .nav-menu {
            .sub-menu {
                display: none !important;
            }

            & > .menu-item-has-children {
                &:hover {
                    & > .sub-menu {
                        display: block !important;
                        position: absolute;
                        top: 100%;
                        left: 0;
                        width: 220px;
                        height: auto;
                        background: #fff;

                        & > .menu-item-has-children {
                            position: relative;

                            &:hover {
                                & > .sub-menu {
                                    display: block !important;
                                    position: absolute;
                                    top: 50%;
                                    left: 100%;
                                    width: 220px;
                                    height: auto;

                                    li {
                                        background: #747474;

                                        a {
                                            color: #fff;
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }

    .navigation ul li ul li {
        display: block;
        margin: 0;
    }

    .navigation ul li ul li a {
        display: block;
        padding: 10px 15px;
        color: #333;
        font-size: 14px;
        background: none;
    }

    .navigation ul li ul li a:hover {
        color: #fff;
        background: #333;
    }

    /* Plugin: WP immoport Single */
    .im-contact .im-name-container {
        display: grid;
        grid-gap: 10px;
        grid-template-columns: 2fr 3fr;
    }

    .im-contact .im-contact-container {
        display: grid;
        grid-gap: 10px;
        grid-template-columns: 1fr 1fr;
    }

    .im-contact .im-street-container {
        display: grid;
        grid-gap: 10px;
        grid-template-columns: 4fr 1fr;
    }

    .im-contact .im-address-container {
        display: grid;
        grid-gap: 10px;
        grid-template-columns: 1fr 4fr;
    }

    /* Notices */
    .ie-check {
        max-width: 500px;
        width: 500px;
    }

}


/* Minimum width of 600 pixels. */
@media screen and (min-width: 600px) {

    /* Plugin: WP immoport => Search */
    .immoport-search .grid {
        grid-template-columns: repeat(2, 1fr);
    }

    /* Footer */
    .footer-widgets {
        padding: 20px 0;
    }

    .footer-widgets .widget-area {
        grid-gap: 20px;
        grid-template-columns: repeat(2, 1fr)
    }

    /* Page-Template: front-page.php */
    .front-page-widgets {
        grid-template-columns: repeat(4, 1fr);
    }

    .counter .grid {
        display: grid;
        grid-gap: 20px;
        grid-template-columns: repeat(3, 1fr);
    }

    /* Real Estates Overview */
    .real-estates .grid {
        grid-gap: 20px;
        grid-template-columns: 1fr 1fr;
    }

    /* Employees */
    .employees-list {
        grid-gap: 20px;
        grid-template-columns: 1fr 1fr;
    }

    .employees-list article,
    .employees-single article {
        grid-gap: 20px;
        padding: 20px;
        grid-template-columns: 1fr 2fr;
    }

    /* Page-Template: selling.php */
    .selling-widgets {
        margin-bottom: 30px;
        grid-gap: 20px;
        grid-template-columns: repeat(4, 1fr);
    }

    /* Page-Template: employees.php */
    .employees-widgets {
        margin-bottom: 30px;
        grid-gap: 20px;
        grid-template-columns: repeat(5, 1fr);
    }

    .employees-widgets aside {
        font-size: 15px;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .employees-widgets aside a {
        padding: 10px;
    }

    /* Page-Template: selling-form.php */
    .selling-form .grid {
        display: grid;
        grid-gap: 20px;
        grid-template-columns: 1fr 1fr;
    }

    /* Financing */
    .financing .grid {
        grid-gap: 40px;
        grid-template-columns: 5fr 2fr;
    }

    .financing .grid .left .top div {
        bottom: 30px;
    }

    .financing .grid .left .bottom ul {
        grid-gap: 20px;
        grid-template-columns: repeat(2, 1fr);
    }

    /* Stores */
    .stores-list .grid {
        grid-gap: 30px;
        grid-template-columns: 1fr 1fr;
    }


    /* Whatsapp Service */
    .whatsapp-service {
        padding: 30px 20px;
    }

    .whatsapp-service .grid {
        grid-gap: 30px;
        grid-template-columns: 1fr 3fr 2fr;
    }

    /* Cookie Notice */
    .cookie-notice {
        left: 20px;
        bottom: 20px;
    }


    /* Table of Contents */
    .table-of-contents {
        float: right;
        margin: 0 0 30px 40px;
        padding: 30px;
        width: 400px;
    }

    .table-of-contents ul {
        display: block;
    }

}


/* Minimum width of 800 pixels. */
@media screen and (min-width: 800px) {

    /* Plugin: WP immoport => Search */
    .immoport-search .grid {
        grid-template-columns: repeat(3, 1fr);
    }

    /* Plugin: WP immoport => Archive */
    .immoport-archive .grid {
        grid-gap: 20px;
        grid-template-columns: repeat(3, 1fr);
    }

    /* Plugin: WP immoport => Single */
    .im-title .grid {
        grid-gap: 20px;
        grid-template-columns: auto auto;
    }

    .im-title .grid a {
        justify-self: end;
    }

    .single-real-estate-header {
        margin-bottom: 40px;
    }

    .im-single-grid {
        display: grid;
        grid-gap: 40px;
        grid-template-columns: 4fr 3fr 3fr;
        grid-template-areas:
                "title title title"
                "gallery gallery gallery"
                "propertydata propertydata propertydata"
                "personofcontact description description"
                "map description description"
                "map contact contact"
                "energypass contact contact";
    }

    .im-single-grid > div {
        margin-bottom: 0;
    }

    .im-property-data .grid {
        grid-template-columns: repeat(6, 1fr);
    }

    /* Toolbox */
    .toolbox {
        display: block;
    }

}


/* Minimum width of 800 pixels. */
@media screen and (min-width: 800px) {

    /* Real Estates Overview */
    .real-estates .grid {
        grid-gap: 20px;
        grid-template-columns: repeat(3, 1fr);
    }

    /* WP immoport Search */
    .search-form .grid {
        grid-gap: 20px;
        grid-template-columns: repeat(4, 1fr);
    }

    /* Header */
    .header-middle .content {
        padding: 25px 35px;
    }

    /* Search Agent Interferer */
    .search-agent-interferer a {
        padding: 20px 30px;
    }

    .search-agent-interferer .grid {
        grid-gap: 20px;
        grid-template-columns: 4fr 1fr;
    }

    /* Search Agent */
    .searchagent {
        padding: 30px;
        display: grid;
        grid-gap: 15px;
        grid-template-columns: 1fr 1fr;
    }

}


/* Minimum width of 1000 pixels. */
@media screen and (min-width: 1000px) {


    /* Frontpage-Content-Top */
    .content-frontpage {
        display: none;
    }

    /* Header */
    .header-middle .content-wrapper {
        display: block;
    }

    /* Footer */
    .footer-widgets .widget-area {
        grid-gap: 40px;
        grid-template-columns: repeat(3, 1fr)
    }

    /* Real Estates Overview */
    .real-estates {
        padding: 30px 0;
        grid-template-columns: repeat(3, 1fr)
    }

    /* Financing */
    .financing .grid .left .bottom ul {
        grid-template-columns: repeat(4, 1fr);
    }

}


/* Minimum width of 1300 pixels. */
@media screen and (min-width: 1300px) {

    /* Plugin: WP immoport Single */
    .im-box {
        padding: 30px;
    }

    .im-box h2 {
        margin: -30px -30px 30px -30px;
        padding: 15px 30px;
    }

}


/* Maximum width of 500 pixels. */
@media screen and (max-width: 500px) {

    /* Plugin: WP immoport Single */
    .im-box table tr th,
    .im-box table tr td {
        display: block;
        width: 100%;
    }

    .im-box table tr td {
        padding-top: 0;
    }
}


/* Print */
@media print {

    body {
        background: none !important;
        color: #000;
        font-size: 10pt;
    }

}


.imagesection-middle {
    position: relative;
    padding: 0;
    margin: 50px 0 75px 0;
}

.imagesection-middle section {
    position: relative;
}

.imagesection-middle .content-wrapper {
    display: none;
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    background: red;
}

.imagesection-middle .content {
    position: absolute;
    left: 0;
    bottom: 100px;
    padding: 20px;
    max-width: 450px;
    background: #fff;
}

.imagesection-middle .content h6 {
    margin: 0 0 10px 0;
    color: #ee0000;
    font-size: 24px;
    font-weight: bold;
}

.imagesection-middle .content p {
    margin-bottom: 10px;
    line-height: 1.4;
}

.imagesection-middle .content a {
    display: inline-block;
    padding: 10px 20px;
    color: #fff;
    font-weight: bold;
    background: #ee0000;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
}

/* Minimum width of 800 pixels. */
@media screen and (min-width: 800px) {
    /* Header */
    .imagesection-middle .content {
        padding: 25px 35px;
    }
}

@media screen and (min-width: 1100px) {
    /* Header */
    .imagesection-middle .content-wrapper {
        display: block;
    }
}

.page-template-page-age h3, .page-template-page-living h3, .page-template-page-heritage h3 {
    margin: 0 0 20px 0;
    color: #ee0000;
    font-size: 28px;
}

.page-template-page-age h4, .page-template-page-living h4, .page-template-page-heritage h4 {
    margin: 0 0 20px 0;
    color: #ee0000;
    font-size: 22px;
}

.page-template-page-age p, .page-template-page-living p, .page-template-page-heritage p {
    font-size: 18px;
    line-height: 1.4;
}

.tworow {
    display: flex;
    justify-content: space-between;
    gap: 20px;
    flex-wrap: wrap;
}

.tworow .left, .tworow .right {
    width: 100%;
}

.tworow ul li {
    position: relative;
    font-size: 18px;
    line-height: 1.4;
}

.tworow ul li:before {
    margin-right: 10px;
    content: '\e800';
    color: green;
    font-family: 'fontello';
}

.immo-info {
    margin: 50px 0;
}

/* Minimum width of 800 pixels. */
@media screen and (min-width: 800px) {
    .tworow .left, .tworow .right {
        width: calc(50% - 10px);
    }
}

.blogposts {
    display: flex;
    justify-content: flex-start;
    gap: 20px;
    flex-wrap: wrap;
}

.blogposts .blockpost {
    display: flex;
    flex-direction: column;
    width: 100%;
    min-height: 450px;
    background: white;
}

.blogposts .blockpost:hover {
    text-decoration: none;
    cursor: pointer;
}

.blogposts .blockpost h4 {
    background: white;
    padding: 20px 20px 20px 20px;
}

.blogposts .blockpost p {
    background: white;
    padding: 0px 20px 20px 20px;
    margin: unset;
}

/* Minimum width of 800 pixels. */
@media screen and (min-width: 700px) {

    .blogposts .blockpost {
        width: calc(50% - 10px);
    }
}

/* Minimum width of 800 pixels. */
@media screen and (min-width: 800px) {

    .blogposts .blockpost {
        width: calc(33.3333% - 13.3333px);
    }
}

.numberone {
    background: white;
    padding: 30px;
    display: flex;
    gap: 50px;
    justify-content: space-between;
    flex-wrap: wrap;
    margin: 50px 0;
}

.numberone img {
    width: 100%;
}

.numberone div {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 20px;
    justify-content: center;
}

/* Minimum width of 800 pixels. */
@media screen and (min-width: 600px) {
    .numberone img {
        max-width: 250px;
    }

    .numberone div {
        width: calc(100% - 300px);
        display: flex;
        flex-direction: column;
        gap: 20px;
        justify-content: center;
    }
}

.page-template-page-age .employees-list, .page-template-page-living .employees-list, .page-template-page-heritage .employees-list {
    margin-bottom: 30px;
}

.contact_block {
    margin-bottom: 50px;
}

.contact_block .red {
    padding: 10px 20px;
    background: #ee0000;
}

.contact_block .red p {
    color: white !important;
}

.contact_block .contact_block_form {
    background: white;
    padding: 20px;
}

.contact_block input[type="text"],
.contact_block input[type="email"],
.contact_block input[type="tel"],
.contact_block select,
.contact_block textarea {
    margin-bottom: 5px;
    padding: 8px 12px;
    font-family: inherit;
    font-size: inherit;
    width: 100%;
    background: #f0f0f0;
    border: 1px solid #f0f0f0;
}

.contact_block .checkbox {
    margin: 10px 0;
}

.contact_block .checkbox input[type="checkbox"] {
    margin-right: 10px;
}

.contact_block input[type="submit"] {
    display: block;
    padding: 8px 12px;
    font-family: inherit;
    font-size: inherit;
    color: #fff;
    width: max-content;
    background: #ee0000;
    border: 1px solid #ee0000;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
    cursor: pointer;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

.contact_block input[type="submit"]:hover {
    background: #333;
    border: 1px solid #333;
}

.page-template-page-age .stores-list, .page-template-page-living .stores-list, .page-template-page-heritage .stores-list {
    margin-bottom: 50px;
}

.slider {
    background: white;
}

.slider_background {
    background: white;
    padding: 30px;
    margin-bottom: 60px;
}

.slider_background .lSSlideOuter {
    overflow: unset !important;
}

.slider_background .lSPager {
    bottom: -55px !important;
}

.slider_single {
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
}

.slider_single .slider_left {
    width: 100%;
}

.slider_single .slider_right {
    width: 100%;
}

@media screen and (min-width: 800px) {
    .slider_single .slider_left {
        width: calc(100% - 180px);
    }

    .slider_single .slider_right {
        width: 150px;
    }
}

.lslide img {
    width: 100%;
}

#datenschutz-bottom,
#accept-bottom {
    background: #ee0000 !important;
    border: 1px solid #ee0000 !important;
    color: white;
    transition: 0s !important;
    border-radius: 0 !important;
}

#datenschutz-bottom:hover,
#accept-bottom:hover {
    background: #333 !important;
    border: 1px solid #333 !important;
    text-decoration: none;
}

.search-results .page-content {
    display: flex;
    flex-direction: column;
    gap: 20px;
    font-size: 17px;
    line-height: 1.5;
}

.search-results .page-content h2, .search-no-results .page-content h2 {
    font-size: 28px;
    color: #EE0000;
}

.nav-left {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 20px;
}

#search-input {
    color: #000;
    border: none;
    padding: 10px 10px 10px 20px;
    width: 100%;
    border-radius: 20px;
    outline: none;
    font-family: "Sparkasse Web";
}

.search-bar-content {
    opacity: 0;
    z-index: -1;
    width: 100%;
    max-width: 0;
    position: absolute;
}

.search-bar-content:after {
    content: "";
    position: absolute;
    display: inline-block;
    width: 18px;
    height: 18px;
    background-size: 18px 18px !important;
    background: url("./images/search/search-action.svg") no-repeat center;
    right: 20px;
    top: 50%;
    transform: translateY(-50%);
}

.hidden-input {
    opacity: 0;
    z-index: 10;
    position: absolute;
    width: 18px;
    height: 18px;
    right: 20px;
    top: 50%;
    transform: translateY(-50%);
    cursor: pointer;
}

.search-bar-content.active {
    opacity: 1;
    z-index: 1;
    max-width: 600px;
    position: relative;
    transition: .3s ease-in-out;
}

.search-bar-trigger {
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 10px;
}

.search-bar-trigger:hover {
    text-decoration: underline;
}

.search-bar-trigger:before {
    content: "";
    height: 15px;
    width: 15px;
    background: url("./images/search/search-trigger.svg") center;
    background-size: 15px 15px;
    display: inline-block;
}

.search-bar-trigger.active:before {
    content: "";
    height: 15px;
    width: 15px;
    background: url("./images/search/search-close.svg") center;
    background-size: 15px 15px;
    display: inline-block;
}

.search-bar-trigger span {
    transition: .3s ease-in-out;
    height: 49px;
    display: flex;
    align-items: center;
}

.search-bar-trigger.active span {
    transition: .3s ease-in-out;
    opacity: 0;
}

@media screen and (min-width: 900px) {
    .nav-left {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        gap: 150px;
    }

    .header-top .wrapper-wide {
        flex-direction: row;
    }
}

@media screen and (min-width: 1600px) {
    .search-bar-content.active {
        right: 400px;
    }


    .home .video-container.landingpage {
        margin: 0 auto;
    }
}

.section-headline {
    color: #ee0000;
    font-size: 30px;
    margin-top: 50px;
    margin-bottom: 20px;
}

.frontpage-ul {
    list-style: square !important;
    font-size: 18px;
    margin-left: 50px;
}

.color-red {
    color: #ee0000;
}

.section-headline-small {
    margin-top: 25px;
    font-size: 25px;
}

.grid-teaser {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 40px;
}

.grid-teaser a {
    display: inline-block;
    width: 100%;
    max-width: 296px;
    text-decoration: none;
}

.grid-teaser a:hover {
    cursor: pointer;
    background: #ddd;
}

.grid-teaser a img {
    width: 100%;
    height: auto;
}

.grid-teaser a h3 {
    margin: 20px 0;
    color: #ee0000;
    font-size: 20px;
}

.home .stores-list .grid {
    grid-template-columns: 1fr;
    max-width: max-content;
    margin: 0 auto;
}

.post-type-archive-im_real_estate main h1 {
    margin: 0 0 20px 0;
    color: #ee0000;
    font-size: 40px;
}

.post-type-archive-im_real_estate main h2 {
    margin: 0 0 20px 0;
    color: #ee0000;
    font-size: 28px;
}

.post-type-archive-im_real_estate main h3 {
    margin: 20px 0;
    color: #ee0000;
    font-size: 20px;
}

.post-type-archive-im_real_estate main p {
    margin-bottom: 20px;
    font-size: 18px;
    line-height: 1.4;
}

.page-template-page-template-object-filter main h1, .page-template-page-template-object-house main h1, .page-template-page-template-object-property main h1, .page-template-page-template-object-business main h1, .page-template-page-template-object-flat main h1 {
    margin: 0 0 20px 0;
    color: #ee0000;
    font-size: 40px;
}

.page-template-page-template-object-filter main h2, .page-template-page-template-object-house main h2, .page-template-page-template-object-property main h2, .page-template-page-template-object-business main h2, .page-template-page-template-object-flat main h2 {
    margin: 0 0 20px 0;
    color: #ee0000;
    font-size: 28px;
}

.page-template-page-template-object-filter main h3, .page-template-page-template-object-house main h3, .page-template-page-template-object-property main h3, .page-template-page-template-object-business main h3, .page-template-page-template-object-flat main h3 {
    margin: 0 0 20px 0;
    color: #ee0000;
    font-size: 20px;
}

.page-template-page-template-object-filter main p, .page-template-page-template-object-house main p, .page-template-page-template-object-property main p, .page-template-page-template-object-business main p, .page-template-page-template-object-flat main p {
    margin-bottom: 20px;
    font-size: 18px;
    line-height: 1.4;
}

.page-template-page-template-object-filter main .cta, .page-template-page-template-object-house main .cta, .page-template-page-template-object-property main .cta, .page-template-page-template-object-business main .cta, .page-template-page-template-object-flat main .cta {
    display: block;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding: 6px 20px;
    color: #fff;
    font-size: 16px;
    text-align: center;
    text-decoration: none;
    background: #ee0000;
    border: 3px solid #ee0000;
    -webkit-border-radius: 40px;
    -moz-border-radius: 40px;
    border-radius: 40px;
    width: max-content;
    margin-bottom: 20px;
}

.page-template-page-template-object-filter main .cta:hover, .page-template-page-template-object-house main .cta:hover, .page-template-page-template-object-property main .cta:hover, .page-template-page-template-object-business main .cta:hover, .page-template-page-template-object-flat main .cta:hover {
    color: #fff;
    background: #666666;
    border-color: #666666;
}

.home .stores-list .grid {
    display: grid;
    grid-gap: 20px;
    grid-template-columns: 1fr;
}

@media screen and (min-width: 700px) {
    .home .stores-list .grid {
        grid-template-columns: 1fr 1fr;
    }
}

.stores-list .grid .siegel img {
    margin: auto;
    max-width: 300px;
    display: block;
}

.cta {
    margin: 20px 0;
    display: block;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding: 6px 20px;
    color: #fff;
    font-size: 16px;
    text-align: center;
    text-decoration: none !important;
    background: #ee0000;
    border: 3px solid #ee0000;
    -webkit-border-radius: 40px;
    -moz-border-radius: 40px;
    border-radius: 40px;
    width: max-content;
    margin-bottom: 20px;

    &:hover {
        text-decoration: none !important;
        color: #fff;
        background: #666666;
        border-color: #666666;
    }
}


/* frontpage added styles **/

a.to-blog-page-link {
    display: flex;
    justify-content: center;
    background: #ee0000;
    font-weight: bold;
    margin: 20px 0 0 0;
    padding: 12px 20px;
    color: #fff;
    font-size: 18px;
    text-decoration: none;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
}
a.to-blog-page-link:hover {
    text-decoration: underline;
}
.page-template-page-senne, .page-template-page-heepen, .page-template-page-heepen-eigentum, .page-template-page-senne-eigentum{
    .lslide.active{
        .content-wrapper{
            .content{
                h6{
                    font-size: 22px;
                    margin-bottom: 20px;
                }
                .place{
                    img{
                       height: 15px;
                        width: auto;
                    }
                    background: unset !important;
                    padding: unset !important;
                    color: black;
                    text-decoration: underline;
                    text-decoration-color: #000;
                    font-weight: 400;
                    margin-bottom: 20px;
                }
                .btn-red{
                    border-radius: 30px;
                }
            }
        }
        .absolute_notice{
            position: absolute;
            bottom: 30px;
            right: 20px;
            color: white;
            font-weight: 400;
        }
    }
    .white{
        background: white;
        padding: 50px 0;
    }
    .no-padding{
        padding: 0 !important;
    }
    .grey{
        background: #f0f0f0;
        padding: 50px 0;
        h2{
            font-weight: 700;
            font-size: 25px;
            color: #ee0000;
            margin-bottom: 30px;
        }
    }
    .wrapper{
        width: 100%;
        .btn-red{
            padding: 10px 20px;
            font-size: 16px;
            text-decoration: none;
            display: block;
            width: max-content;
            margin: 20px 0;
        }
        .headline{
            font-weight: 700;
            font-size: 20px;
            color: #ee0000;
        }
        h2.headline{
            padding-bottom: 20px;
        }
        .list-content{
            display: flex;
            justify-content: flex-start;
            gap: 20px;
            flex-wrap: wrap;
            margin-bottom: 20px;
            ul{
                width: calc(50% - 10px);
                font-size: 17px;
                line-height: 1.5;
                padding-left: 20px;
                list-style: square;
            }
        }
        .image_gallery, .image_flex{
            display: flex;
            justify-content: space-between;
            gap: 20px;
            flex-wrap: wrap;
            img{
                width: 100%;
                @media screen and (min-width: 700px) {
                    width: calc(50% - 10px);
                }
            }
        }
        .planimage{
            position: relative;
            img{
                width: 100%;
                height: auto;
            }
            a{
                border-radius: 30px;
                position: absolute;
                left: 50%;
                top: 50%;
                transform: translate(-50%,-50%);
                display: inline-block;
                padding: 10px 20px;
                color: #fff;
                font-weight: bold;
                background: #ee0000;
            }
        }
        h2,h3,h4{
            font-weight: 700;
            font-size: 25px;
            color: #ee0000;
            margin-bottom: 30px;
        }
        h5{
            font-weight: 700;
            font-size: 22px;
            color: #ee0000;
            margin-bottom: 30px;
        }
        p{
            font-size: 18px;
            line-height: 1.4;
            padding-bottom: 20px;
            margin-bottom: unset;
        }
        .advantages{
            display: flex;
            justify-content: flex-start;
            gap: 20px;
            flex-wrap: wrap;
            margin-bottom: 20px;
            ul{
                font-size: 17px;
                line-height: 1.5;
                padding-left: 20px;
                width: 100%;
                @media screen and (min-width: 700px) {
                    width: calc(50% - 10px);
                }
                li{
                    position: relative;
                    &:before{
                        display: inline-block;
                        content: "";
                        background: url("./images/advisor/checkmark-green.svg") no-repeat center;
                        height: 20px;
                        width: 20px;
                        position: absolute;
                        left: -25px;
                        top: 3px;
                    }
                }
            }
        }
        .map_tabs{
            display: flex;
            gap: 5px;
            flex-wrap: wrap;
            justify-content: center;
            margin-bottom: 20px;
            .tab{
                width: max-content;
                display: flex;
                gap: 10px;
                justify-content: center;
                align-items: center;
                padding: 10px 20px;
                background: white;
                border: 1px solid #ee0000;
                &:hover{
                    cursor: pointer;
                }
                &.active{
                    border: 3px solid #ff7f7f;
                    background: #ee0000;
                    img{
                        filter: invert(100%) sepia(0%) saturate(0%) hue-rotate(265deg) brightness(140%) contrast(104%);
                    }
                    span{
                        color: white;
                    }
                }
                img{
                    height: 16px;
                    width: auto;
                }
                span{
                    color: red;
                    font-size: 16px;
                    font-weight: normal;
                }
            }
        }
        h1{
            font-weight: 700;
        }
        h2{
            font-size: 22px;
            font-weight: 700;
        }
        .black-four-flex {
            margin: 30px 0;
            width: 100%;
            display: flex;
            flex-wrap: wrap;
            .black{
                background: #333333;
                border-right: 1px solid #4b4b4b;
                display: flex;
                justify-content: center;
                align-items: center;
                height: 200px;
                width: 100%;
                flex-direction: column;
                gap: 10px;
                &:last-child{
                    border-right: unset !important;
                }
                @media screen and (min-width: 600px) {
                    width: 50%;
                }
                @media screen and (min-width: 900px) {
                    width: 33.3333%;
                }
                @media screen and (min-width: 1200px) {
                    width: 25%;
                }
                img{
                    height: 40px;
                    width: auto;
                }
                span{
                    color: white;
                    mso-font-width: 16px;
                    text-align: center;
                }
            }
        }
        .flex{
            display: flex;
            gap: 20px;
            .extra-button{
                width: 100%;
                @media screen and (min-width: 900px) {
                    width: calc(50% - 10px);
                }
            }
        }
        .extra-button{
            margin: 0 0 30px 0;
            display: block;
            padding: 12px 20px;
            color: #333;
            font-size: 18px;
            text-decoration: none;
            background: #fff;
            -webkit-border-radius: 3px;
            -moz-border-radius: 3px;
            border-radius: 3px;
            &:hover {
                background: #ddd;
            }
            img {
                margin-top: -4px;
                margin-right: 20px;
                max-width: 16px;
                height: auto;
            }
        }
        .contact-form{
            .top{
                height: 45px;
                background: #ee0000;
                width: 100%;
                display: flex;
                padding: 10px 20px;
                align-items: center;
                gap: 10px;
                img{
                    max-height: 22px;
                }
                span{
                    color: white;
                    font-size: 22px;
                    font-weight: 700;
                }
            }
        }
    }
    .maps-widget{
        background-image: url("./images/maps.png");
        height: 400px;
        width: 100%;
        background-size: cover;
        background-repeat: no-repeat;
        background-position: center;
        display: flex;
        .mapshide-on-accept{
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: center;
            width: 100%;
            .disclaimer{
                p{
                    text-align: center;
                }
            }
            .buttons{
                display: flex;
                flex-wrap: wrap;
                justify-content: center;
                gap: 10px;
                .btn-outline{
                    border-radius: 30px;
                    padding: 15px 20px;
                    text-decoration: none;
                    background: transparent;
                    color: red;
                    border: 1px solid #ee0000;
                    &:hover{
                        background: #ee0000;
                        color: white;
                    }
                }
                #mapsaccept-dsgvo{
                    border-radius: 30px;
                    padding: 15px 20px;
                    text-decoration: none;
                    margin: unset;
                    &:hover{
                        cursor: pointer;
                    }
                }
            }
        }
    }
    #map{
        height: 450px;
        width: 100%;
        display: none;
    }
}

.page-template-new-build {
    .flex{
        display: flex;
        gap: 20px;
        .extra-button{
            width: 100%;
            @media screen and (min-width: 900px) {
                width: calc(50% - 10px);
            }
        }
    }
    .extra-button{
        display: block;
        padding: 12px 20px;
        color: #333;
        font-size: 18px;
        text-decoration: none;
        background: #fff;
        -webkit-border-radius: 3px;
        -moz-border-radius: 3px;
        border-radius: 3px;
        &:hover {
            background: #ddd;
        }
        img {
            margin-top: -4px;
            margin-right: 20px;
            max-width: 16px;
            height: auto;
        }
    }
}