/*
Theme Name: Frame Design
Theme URI: http://www.frame-design.de
Description: Frame Design
Author: wedebo - Michal Boger
Author URI: http://www.wedebo.de
*/

    @font-face {
      font-family: 'icons';
      src: url('./font/icons.eot?49257959');
      src: url('./font/icons.eot?49257959#iefix') format('embedded-opentype'),
           url('./font/icons.woff?49257959') format('woff'),
           url('./font/icons.ttf?49257959') format('truetype'),
           url('./font/icons.svg?49257959#icons') format('svg');
      font-weight: normal;
      font-style: normal; font-display: swap;
    }



html, body {
    margin: 0; padding: 0; background: #F8F8F5; text-align: center;
    -webkit-text-size-adjust:none; color: #000; font-family: "neue-haas-grotesk-display", sans-serif;
    font-style: normal;
font-weight: 400;
    float: left; width: 100%;
    font-size: 1.0em;-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}

#wrapper {
    float: left; width: 100%; margin: 0; padding: 0; text-align: left;overflow: hidden;
}
#header {
    float: left; width: 100%; margin:0; padding:30px 0; position: relative; z-index: 10; min-width: 320px; text-align: center; background:transparent;
    -webkit-transition: all 0.5s ease;
-moz-transition: all 0.5s ease;
transition: all 0.5s ease;
    position: fixed; top: 0; left: 0;
}
#header.sdown {
    opacity: 0;
}

#header.fixiert {
padding: 0;
}
#header.menuevis { padding: 30px 0 !important;opacity: 1 !important;    }



#logocontainer {
margin: 16px 4% 0; display:block; width: 86px; min-height: 50px;padding:0;
 position: relative; float: left; position: relative; z-index: 10;
}
#logo {
float: left;
}
#startlogocontainer {
    position: absolute; top:25%; left: 50%; width: 220px; margin: 0 0 0 -130px; z-index: 4; padding: 20px; background: #fff; border-radius: 50px; opacity: 0.8; -webkit-transition: all 0.5s;
-moz-transition: all 0.5s;
transition: all 0.5s; 
}
#startlogocontainer:hover {
     opacity: 1.0;
}

#headwidget {
 position: relative; margin: 0; float: right;
-webkit-transition: all 0.5s;
-moz-transition: all 0.5s;
transition: all 0.5s; z-index: 9; padding: 10px;
}
#headwidget p {
    margin: 0;
}
#headwidget div.widget {
float: left;
}
#headwidget a {
   display: inline-block;
}

#headwidget a.cryptmail2 {
font-size: 16px;
fill: #000000;
color: #000000;
background-color: #FFFFFF00;
border-style: solid;
border-width: 2px 2px 2px 2px;
border-color: #000000;
border-radius: 19px 19px 19px 19px;
padding: 9px 25px 8px 25px;
margin: 0 10px; box-sizing: border-box;line-height: 1em;
}
.menuevis #headwidget a.cryptmail2 {
    border-color: #707070;
}

#headwidget a.cryptmail2:hover {
 background: #000; color: #fff !important; border-color: #000;
}

#menuelink { position: relative; float: right; margin:10px 4% 10px 0; z-index: 20;
  width: 37px;
  height: 37px;
  background-color: black;
  border: solid 2px #000;
  border-radius: 50px; box-sizing: border-box;
}

#menuelink span { display: block; float: left; width: 12px; height: 2px; background: #fff; position: absolute; top: 9px; left: 11px;
-webkit-transition: all 0.3s ease;
-moz-transition: all 0.3s ease;
transition: all 0.3s ease;
transform-origin: center;
}
#menuelink span#mlm { top: 15px; }
#menuelink span#mlu { top: 21px; }
#menuelink.open span#mlo { transform: translateY(6px) rotate(45deg);  }
#menuelink.open span#mlm {   opacity: 0; }
#menuelink.open span#mlu {transform: translateY(-6px) rotate(-45deg); }

#menuelink:hover { background: transparent; }
#menuelink:hover span { background: #000; }


#main {
    float: left; width: 100%; margin: 0; padding:0 0 50px; min-height: 300px; position: relative; z-index: 9;
-webkit-transition: all 0.8s ease;
-moz-transition: all 0.8s ease;
transition: all 0.8s ease;
}
#main.bgg {
    background-color: #e3e3e3;
}

#titel {
    float: left; margin:-150px 2% 50px; width: 46%; max-width: 700px; padding: 30px; box-sizing: border-box; position: relative; z-index: 10; background: #666666; color: #fff;
    left: 50%; top: 0;
}
#titel h1, #titel h2 {
    color: #fff; margin: 10px 0;
}

#footer {
    float: left; width: 100%; margin: 0; position: relative; padding: 0;  z-index: 1;
}

#footbalken {
   float: left;  width: 100%; padding: 20px 0;  text-align: left; position: relative;
}


.zc {
    margin: 0 auto; width: 100%; max-width: 1920px;
}
#footlogo {
    margin: 20px 0 30px;
}

#content {
    margin: 0; width: 100%; position: relative; float: left; min-height: 600px;
}
.contentseite div#content {
    max-width: 1160px;
}
.content1, .content1_  {
    float: left; width: 100%; min-height: 200px; padding: 5px 0 25px; position: relative;
}
.content2  {
    float: left; width: 100%; min-height: 200px; padding: 5px 0; position: relative;
}

.pageteaser {
    float: left; width: 102%; margin: 0 0 0 -1%; display: flex; flex-wrap: wrap;
}

.content3 {
    float: left; width: 100%; background: #666666; margin:20px 0 0; padding: 20px 0 30px; position: relative;
}
.content3::after {
    background: #666666;
    content: "";
    display: block;
    height: 100%;
    position: absolute;
    right: -100%;
    top: 0;
    width: 100%;
    z-index: 1;
}

.content3::before {
    background: #666666;
    content: "";
    display: block;
    height: 100%;
    left: -100%;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 1;
}

figure {
    margin: 0; padding: 0;
}

.balken { margin: 0; padding: 50px 0; position: relative; float: left; width: 100%; color: #fff;}
.balken::after {
    background: #26252D;
    content: "";
    display: block;
    height: 100%;
    position: absolute;
    left: 50%;
    top: 0;
    width: 100vw;
    z-index: -1; background-repeat: no-repeat;
    margin: 0 0 0 -50vw; border: 10px solid #000; box-sizing: border-box;
}

.bggrau {
    float: left; width: 100%; margin: 100px 0;
}


.inhalt {
    float: left; width: 92%; padding: 30px 4%;
}


#breadcrumbs {
    float: left; width: 92%; padding: 0 4%; margin: 10px 0;
}
#breadcrumbs > span > span > a::before {
 display: inline-block; padding: 0 5px 0 0;
  font-family: 'icons';
  text-decoration: none; font-size: 1.2em;
  content: "\e817";
}
#breadcrumbs.titbc {
    margin-top: -80px;
}

#fsidebar {
    float: left; width: 100%; padding: 20px 0;  min-height:200px; margin: 50px 0 0; color: #fff; position: relative; z-index: 2; font-size: 0.9em; color: #444;
}


#sidebar {
    margin: 0 auto; width: 100%; max-width: 1360px;
}
#sidebar .fi {
    font-size: 1.3em; color: #666666; font-weight: 400; margin: 20px 0;
}
#sidebar .fi span {
    font-size: 50px; font-weight: bold;
}

.wlbutton {
    float: left; width: 100%;
}

.theading h3 {
    text-transform: uppercase; text-align: center;
}
.theading h3 span {
    background: #fff; padding: 5px 10px 2px; display: inline-block; color: #666666;
}

.blogcategory  {
    float: left; width: 102%; margin: 0 0 0 -1%; display: flex; flex-wrap: wrap;
}
.suche .inhalt {
    display: flex; flex-wrap: wrap;
}
.suche .inhalt h1 {
    float: left; width: 100%;
}

.teaserbox {
    float: left; width:31.33%; margin: 15px 1%; background:#fafafa; box-sizing: border-box; padding: 0 0 45px;
    position: relative;
overflow: hidden;
-webkit-transition: all 0.5s ease;
-moz-transition: all 0.5s ease;
transition: all 0.5s ease; text-align: center;
}

.teaserbox:hover {
    transform: scale(0.97,0.97);
}

.teaserbox h2 {
    margin: 5px 0 10px 0; padding: 0; font-size: 1.6em;font-family: "neue-haas-grotesk-display", sans-serif; font-weight: 400;
}
.teaserbox h2 a { color: #57aea3;}

.teaserbox div.postinhalt {
   float: left; width: 90%; padding: 10px 5%;
}
.teaserbox div.postinfo {
    color: #000; margin: 20px 0;
}
.teaserbox div.postinfo span {
    display: inline-block; padding: 0 0 5px; border-bottom: 1px solid #000;
}

.teaserbox .weiterlink { position: absolute; left: 0; bottom: 0; width: 100%;    }
.weiterlink a,  a.dslink {
margin: 10px 0;
padding: 10px 50px; display: inline-block; color: #fff; background: #57aea3;
border-radius: 30px;
}
.weiterlink a:hover,  a.dslink:hover {
background: #757575; color: #fff;
}
.buttonlink a {
margin: 30px 0;
padding: 10px 50px; display: inline-block; color: #fff; background: #57aea3;
border-radius: 30px;

}
.buttonlink a:hover {
background: #757575; color: #fff;
}


#content ul.wp-block-latest-posts__list {
    float: left; width: 102%; margin: 0 0 0 -1%; padding: 0;position: relative; line-height: 1.5em;
}
#content ul.wp-block-latest-posts__list li {
    float: left; width: 100%; margin: 10px 0;

}
#content ul.wp-block-latest-posts__list.is-grid li {
    float: left; width:31.33%; margin: 15px 1%; box-sizing: border-box; padding: 0 0 45px;
    position: relative;
    overflow: hidden;
-webkit-transition: all 0.5s ease;
-moz-transition: all 0.5s ease;
transition: all 0.5s ease;  text-align: center; background: #fafafa;
}

#content ul.wp-block-latest-posts__list.is-grid {
    display: flex; flex-wrap: wrap;
}
#content ul.wp-block-latest-posts__list.is-grid li {
display: flex; flex-direction: column;
}
#content ul.wp-block-latest-posts__list.is-grid li:hover {
    transform: scale(0.97,0.97);

}
#content ul.wp-block-latest-posts__list.is-grid li div.wp-block-latest-posts__featured-image  {
    float: left; width: 100%; margin: 0 0 10px; height: 220px; overflow: hidden; order: 1;
}
#content ul.wp-block-latest-posts__list.is-grid li div.wp-block-latest-posts__featured-image img {
    width: 100%; height: 100% !important; object-fit: cover;
}
.wp-block-latest-posts__featured-image a {
  display: inline !important;
}

#content ul.wp-block-latest-posts__list.is-grid li > a {
display: block; margin:5px 0 10px; padding: 0 5%; float: left; width: 90%;
overflow: hidden;
font-size: 1.6em;
line-height: 1.4em; order: 3;
font-family: "neue-haas-grotesk-display", sans-serif;
font-weight: 400;
color: #57aea3;
}
#content ul.wp-block-latest-posts__list.is-grid time {
    float: left; width: 90%; margin: 0 5%; font-size: 1.0em; color: #000;order:2;
}

#content ul.wp-block-latest-posts__list.is-grid div.wp-block-latest-posts__post-excerpt {
   float: left; width: 90%; padding: 10px 5%;order: 4; margin: 10px 0;
}
#content ul.wp-block-latest-posts__list.is-grid .weiterlink { order: 5; float: left; width: 90%; padding: 5px 5%; position: absolute; left: 0; bottom: 0;   }

#content .wp-block-latest-posts__featured-image img {
  height: auto !important;
  max-width: 100% !important;
}

.blogsingle h1.title {
    text-align: left;
    padding: 0 0 10px;
}

.blogsingle .postimage {
    float: left; width: 100%; margin: 20px 0; text-align: center;
}
.blogsingle .postimage img {
    max-width: 100%; height: auto !important;
}

.blogsingle div.postinhalt {
    float: left; width: 100%;
}

.fw {
    float: left; padding: 0 4%; width: 25.33%;
}
#footnav {
  float: left; padding: 10px 4%; width: 30.33%;
}


#footwidget2 {
    width: 20.33%;
}



#footnav ul
{
            float: left;
            margin: 15px 0;
            padding: 0; min-width: 100%;
            list-style-type: none;
}

#footnav ul li {
                         display: block;
                         float: left;
                         margin: 0; padding: 10px 0;
                         z-index: 2; position: relative;
}


#footnav ul li a {
float: left;
display: block;
font-weight: 500;
padding: 5px 0;
margin: 0; text-decoration: none;
text-align: center;
width: 100%;
}


.fzic {
    float: left; width: 100%; background: #ededed; padding: 10px 0 30px;
}
.fzic ul {
    list-style: none;
    margin: 0; padding: 40px 0;
}
.fzic ul li {
    display: inline-block;
}
.fzic ul li a {
    display: block; padding: 0 10px; color: #3b4044; text-transform: uppercase; border-left: 1px solid #3b4044;
}
.fzic ul li:first-child a {
    border-left: 0;
}
.fzic ul li a:hover {
    color: #000;
}

.fzic div.info-men {
    float: left; width: 50%;
}

.copy {
    float: right; width: 90%; margin:0; padding:40px 5%;
}


#menu {
    float: left; position: fixed; top: 0; left: 0; width:100%; margin: 0; text-align: left; padding: 0;
  display: none; height: 100%; box-sizing: border-box;

}
#menu > div#navhg {
    float: right; display: block; width: 100%; height: 100%; background:rgba(0,0,0,0.5);  padding: 0; box-shadow:none;
}
#menu > div:first-child {
  float: left;
  width: 100%;
  height: 100%;
  background: #989799;
  padding-top: 100px;
  box-sizing: border-box;
 box-shadow: 0px 0px 10px 0px #000;
-moz-box-shadow: 0px 0px 10px 0px #000;
-webkit-box-shadow: 0px 0px 10px 0px #000;
  overflow: auto;color: #fff;
  display: flex; flex-wrap: wrap; align-items: center; justify-content: center;
}



@media only screen and (min-width: 1160px) {


#menu > div { width: 100%; }

#menu ul#menu-hauptmenue {
    display: flex; flex-wrap: wrap;
}
.bild, .bild2 {

}

.wp-block-columns.schmal {
    margin: 0 10%; width: 80%;
}

}

#menu ul
{
            float: left;
            margin: 0 10%;
            padding: 0; min-width: 80%;
            list-style-type: none;

}

#menu ul li {
                         display: block;
                         float: left;
                         margin: 0; padding: 0;width: 100%;
                         z-index: 2; position: relative;
-webkit-transition: all 1.0s;
-moz-transition: all 1.0s;
transition: all 1.0s; transform: translateY(-50px); opacity: 0; transition-timing-function: ease-in-out;
}
.menuevis #menu ul li:first-child {
transition-delay: 50ms;
}
.menuevis #menu ul li:nth-child(2) {
transition-delay: 100ms;
}
.menuevis #menu ul li:nth-child(3) {
transition-delay: 150ms;
}
.menuevis #menu ul li:nth-child(4) {
transition-delay: 500ms;
}
.menuevis #menu ul li:nth-child(5) {
transition-delay: 550ms;
}
.menuevis #menu ul li {
transform: translateY(0); opacity: 1;
}

#menu ul li a {
float: left;
display: block;
font-weight: 500;
color: #1D1D1D;
padding: 10px 30px;
margin: 0;text-decoration: none;
text-align: center;
width: 100%; box-sizing: border-box;font-size: 26px;
letter-spacing: 3.5px;
word-spacing: 0px;
}
#menu ul li#menu-item-37 {
    margin-top: 80px;
}

#menu ul li#menu-item-37 a, #menu ul li#menu-item-36 a {
  font-size: 17px; letter-spacing: 0; padding: 5px 30px;
}


#menu ul li a.hakt {
    color:#000;
}
#menu ul li.current-menu-item > a, #menu ul li.current_page_parent > a, #menu ul li.current-page-ancestor > a {
  color:#000;
}

#menu ul li a:hover {
  color: #000;
}

#menu ul li a span {
    display: inline-block; padding: 5px 0; position: relative;
}
#menu ul li a:hover span {
     padding: 5px 0;
}

#menu ul > li > a span::after { content: ""; width: 0; height:2px; background: #3D3D3D; position: absolute; left: 0; bottom: 5px; -webkit-transition: all 0.3s ease;
-moz-transition: all 0.3s ease;
transition: all 0.3s ease;}

#menu ul > li  > a:hover span::after { content: ""; width:100%; height:2px; }

#menu ul > li#menu-item-37 > a span::after, #menu ul > li#menu-item-36 > a span::after  {  bottom: 3px; }


#menu ul.sub-menu {
position: relative; margin: 0;
padding: 0 0 10px;
width: 100%;
display: none;
}

#menu ul.sub-menu li a {
padding: 8px 30px;
margin: 0;
font-size: 18px;
border: none;
width:100%;
text-align: left;
height: auto;
text-transform: none;
box-sizing: border-box;
transition-timing-function: ease-in-out;
}
#menu ul.sub-menu li a::before {
content: '\b7'; display: inline-block; margin: 0 10px 0 0;
}

#menu .current-menu-item ul.sub-menu, #menu .current-menu-parent ul.sub-menu {
  display: block;
}


#menu ul.sub-menu li a:hover { color: #aaa;}

#menu ul li ul.sub-menu li.current-menu-item a {
background:  #353535; color: #fff;
}

#menu ul.sub-menu li ul.sub-menu {
    float: left; width: 100%; padding: 5px 0;
}

#menu ul.sub-menu li ul.sub-menu li {
    float: left; width: 100%; min-height: 5px; border-right: none;
}


#menu ul.sub-menu li ul.sub-menu li a{
   font-weight: 300; font-size: 0.95em;text-transform: none; padding: 15px 5%;
}
#menu ul li ul.sub-menu li.current-menu-item ul.sub-menu li a {
background: transparent; font-weight: 300;
}
#menu ul li ul.sub-menu li.current-menu-item ul.sub-menu li a:hover {
 font-weight: 300;
}
#menu ul li ul.sub-menu li ul.sub-menu li.current-menu-item a {
background: transparent; font-weight: bold;
}

span.qn {display: block; font-family: icons; font-size: 23px;position: absolute; top: 5px; right: 5px; z-index: 4; width: 20px; height: 26px; cursor: pointer; padding: 13px; color: #fff; }


#footer ul
{
            float: left;
            margin: 0;
            padding: 0;
            list-style-type: none; width: 100%;
}

#footer ul li {
                         display: block;
                         float: left;
                         margin: 0 50px 0 0; padding: 0;
                         }
#footer ul li a {
    display: block; float: left; padding:5px 0; font-size: 1.0em;  width: 100%; color: #A3A3A2; text-transform: uppercase;
}

#footer a:hover {
   color: #000;
}

a {
  color: #000; text-decoration: none; -webkit-transition: all 0.5s;
-moz-transition: all 0.5s;
transition: all 0.5s;
}
a:hover {
  color: #3D3B39;

}
p > a {
    position: relative;
}
p > a::after {
  content:""; width: 0; height: 2px; -webkit-transition: all 0.5s ease-out;
-moz-transition: all 0.5s ease-out;
transition: all 0.5s ease-out;
position: absolute; bottom: -1px; left: 0;
}
p > a:hover::after {
    width: 100%; background: #666;
}



button:hover {

}

.bild {
    float: left; width: 100%; min-height:800px; height: 90vh;
    background-position: center center;
-webkit-background-size: cover;
-moz-background-size: cover;
-o-background-size: cover;
background-size: cover;  background-repeat: no-repeat; position: relative;

}
.bild2 {
    float: left; width: 100%;
  background-repeat: no-repeat; position: relative;

}
.bildtitle { position: absolute; bottom: 0; left: 0; float: left; width: 25%; margin: 0 10% -100px 10%; }


#bildad {
    float: left; width: 92%; padding: 15px 4% 10px; color: #fff;
}
.bildbalken {
    float: left; width: 100%; min-height:10px; height: 200px;
}

.projektbild  {
    float: left; width: 100%; margin: 20px 0 0;
}

a.totop {
    position: fixed; bottom: 0; right: 5%; font-family: icons; font-size: 1.2em; color: #fff;background: #000; background: rgba(0,0,0,0.8);
    padding: 8px 0; text-align: center; width:50px; z-index: 50;
}
a.totop:hover {
 background:#fff; color: #353535;
}


input {
    border: 1px solid #999; padding: 10px; background: #fff; font-size: 1.05em; box-sizing: border-box;font-family: "neue-haas-grotesk-display", sans-serif;
}
select {
    border: 1px solid #999; padding: 10px; background: #fff; font-size: 1.05em; font-family: "neue-haas-grotesk-display", sans-serif;
     }
input:focus {
 border: 1px solid #fff; color: #000;
}
textarea {
    border: 1px solid #999; padding: 10px; background: #fff; font-size: 1.05em; font-family: "neue-haas-grotesk-display", sans-serif;
}
textarea:focus {
 border: 1px solid #000; color: #000;
}
#searchform input {
    width: 60%;
}
.select2-container .select2-selection--single .select2-selection__rendered { padding-top: 10px; padding-bottom: 10px;}
.select2-container .select2-selection--single {    height: 45px !important; }

#add_payment_method .wc-proceed-to-checkout a.checkout-button, .woocommerce-cart .wc-proceed-to-checkout a.checkout-button, .woocommerce-checkout .wc-proceed-to-checkout a.checkout-button {
    padding: 15px 10px 10px !important;
}

input[type=submit] {
    background: #666666; color: #fff; cursor: pointer; width: 100px; border: 1px solid #878787;
    -webkit-appearance:none;-moz-appearance:none; appearance:none; padding: 10px 30px;
}
input[type=submit]:hover {
    background:#e8e8e8; color: #666666;
}
#searchform [type=submit] {
    width: 35%; box-sizing: border-box;
}

img {
    max-width: 100%; height: auto !important;
}
.teaserbox img {
    height: auto !important;
}

iframe {
    max-width: 100%;
}

h1 {
    font-weight:400; color:#000; font-size: 2.8em; margin: 30px 0 40px; line-height: 1.3em; font-family: "neue-haas-grotesk-display", sans-serif;

}

h1.iconhl span {
    position: relative;
}
h2 {
    font-weight: 400; font-size: 1.6em; margin: 20px 0 40px; line-height: 1.6em; color: #3b3a3c;
}



h3 {
    font-weight: 400; font-size: 1.3em; margin: 20px 0 10px;
}

h4 {
    font-size: 1.1em;  margin: 25px 0 10px; color: #3b3a3c;
}
h4 strong {
    display: inline-block; padding: 0 0 3px; border-bottom: 1px solid #333;  font-weight: bold;
}

p {
    margin: 15px 0; line-height: 1.4em; font-weight: 500;
}
#content ul li {
    line-height: 1.5em;
}


ul.check {
            margin: 0 0 10px 0;
			padding: 0;
			list-style-type: none;
}
ul.check li {
    position: relative; padding: 5px 0 5px 35px;
}
ul.check li:before {
   position: absolute; top: 5px; left: 5px;
  display: block; padding:0;
  font-family: 'icons';
  text-decoration: none; float: left;
  speak: none; font-size: 1.0em;
  content: "\e801"; color: #57aea3;
}

hr {
}
.wp-block-separator:not(.is-style-wide):not(.is-style-dots) {
  width: 180px !important; margin-top: 50px; margin-bottom: 50px;
  border-top: 0 !important;
border-bottom: 1px solid #353535 !important;

}

strong, b {
    font-weight: 700;
}

@media only screen and (min-width: 680px) {
div.zs {-webkit-columns: 2; -moz-columns: 2; columns: 2; float: left; width: 100%; margin: 0;
-webkit-column-gap: 30px; -moz-column-gap: 30px; column-gap: 30px;
    }
div.zs p {margin: 0 0 20px;}
}

/* == WordPress WYSIWYG Editor Styles == */

.wp-block-columns {
    float: left; width: 100%; gap: 4em !important;
}
@media only screen and (min-width: 1160px) {
.wp-block-columns.schmal {
    margin: 0 10%; width: 80%;
}
}

#footer .wp-block-columns {
  gap: 2em !important;
}
 .wp-block-group {
    float: left; width: 100%;
}
.entry-content img {
    margin: 0 0 1.5em 0;
    }
.alignleft, img.alignleft {
    margin-right: 1.5em;
    display: inline;
    float: left;
    margin-top: 0;
    text-align: left;
    }
.alignright, img.alignright {
    margin-left: 1.5em;
    display: inline;
    float: right;
    text-align: right;
    }
.aligncenter, img.aligncenter {
    margin-right: auto;
    margin-left: auto;
    display: block;
    clear: both;
    text-align: center;
    }
.alignnone, img.alignnone {
    /* not sure about this one */
    }
.wp-caption {
    margin-bottom: 1.5em;
    text-align: center;
    padding-top: 5px;
    }
.wp-caption img {
    border: 0 none;
    padding: 0;
    margin: 0;
    }
.wp-caption p.wp-caption-text {
    line-height: 1.5;
    font-size: 0.9em;
    margin: 0;
    }
.wp-smiley {
    margin: 0 !important;
    max-height: 1em;
    }
blockquote.left {
    margin-right: 20px;
    text-align: right;
    margin-left: 0;
    width: 33%;
    float: left;
    }
blockquote.right {
    margin-left: 20px;
    text-align: left;
    margin-right: 0;
    width: 33%;
    float: right;
    }
.gallery dl {}
.gallery dt {}
.gallery dd {}
.gallery dl a {}
.gallery dl img {}
.gallery-caption {}

.size-full {}
.size-large {}
.size-medium {}
.size-thumbnail {}

.content1 > ul {
    margin: 20px 0; padding: 0 0 0 30px;
}
.content1 > ul li {
    padding: 5px 0;
}

.content1 > ul.wp-block-gallery {
    margin: 0; padding: 0;
}
.wp-block-gallery .blocks-gallery-item figcaption { box-sizing: border-box;}
.content1 > ul.wp-block-gallery  li {
    padding: 0;
}
.content1.am {
    margin-bottom: 0; padding-bottom: 0;
}

#anmeldung {
    float: left; width: 100%; margin: 0; padding: 0;
}
.anmeldelink {
    display: inline-block; padding: 10px 20px; background: #666666; color: #fff; font-weight: bold;
    border: 1px solid #878787; margin: 10px 0 0;
}
.anmeldelink:hover {
   background: #878787; color: #fff;
}

#main div.wpcf7 {
    float: left; width: 100%; background: #fff; padding: 10px 0; margin: 10px 0;
}
#main #anmeldung div.wpcf7 {
    margin: 0 0 20px;
}
.amltop {
    position: absolute; top: -15px; right: 2%;
}

.formfeld {
    float: left; width: 100%;
}
.zeitraum {
    float: left; width: 100%;
}
.zimmerauswahl {
    float: left; width: 100%; box-sizing: border-box; padding: 10px; background: #e3e3e3;margin: 0 0 10px;
}
.zimmerauswahl .wpcf7-list-item {
    float: left; width: 50%; margin: 10px 0;
}
.zimmerauswahl .wpcf7-list-item input { float: left; width: auto; }

.zimmerauswahl .wpcf7-list-item label {
    margin: 0; padding: 3px 0; position: relative;
}
.zimmerauswahl .wpcf7-list-item input[type="radio"] {
margin: 5px;
border-radius: 50%;
-moz-border-radius: 50%;
-webkit-border-radius: 50%; box-sizing:border-box;
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
width: 20px; height: 20px; border: 2px solid #fff;
position: relative; padding: 0; cursor: pointer;
}
.zimmerauswahl .wpcf7-list-item input[type="radio"]:checked {
border: 2px solid #000;
}

.zimmerauswahl .wpcf7-list-item input[type="radio"]:checked::after {
position: absolute; top: 2px; left: 2px; width: 12px; height: 12px; background: #000; border-radius: 50%;
-moz-border-radius: 50%;
-webkit-border-radius: 50%; content: "";
}

.wpcf7 input[type=checkbox] {
    float: left; margin: 0 5px 0 0;-webkit-appearance:none;-moz-appearance:none; appearance:none; width: 15px; height: 15px; display: inline-block; position: relative;
    border: 1px solid #999;
}
.wpcf7 input[type=checkbox]:checked {
    background:#e3e3e3;
}
.wpcf7 input[type=checkbox]:checked::after {
content: '';
position: absolute;
background-color: #000;
left: 5px;
top: 9px;
width: 2px;
height: 2px;
box-shadow: 2px 0 0 #000, 4px 0 0 #000, 4px -2px 0 #000, 4px -4px 0 #000, 4px -6px 0 #000, 4px -8px 0 #000;
transform: rotate(45deg);
}

@media only screen and (min-width: 780px) {
.formfeld { box-sizing: border-box; padding: 0 10px 0 0; }
.zeitraum .formfeld {
width: 50%;
}
.zimmerauswahl .wpcf7-list-item { width: 33.33%; }
}

.wpcf7 form > p {
    float: left; width: 100%; margin: 2px 0;
}

.wpcf7 label {
    float: left; width: 100%; padding: 5px 0;
}

.wpcf7 input {
   box-sizing: border-box; width: 100%; border-top: 1px solid #fff; border-left: 1px solid #fff;border-right: 1px solid #fff;
}
.wpcf7 textarea {
   box-sizing: border-box; width: 100%; height:150px;
}
.wpcf7 input[type=submit] {
 background: #353535; color: #fff; border: 0; width: auto;
}
.wpcf7 input[type=submit]:hover { background: #000; }

div.wpcf7-validation-errors, div.wpcf7-mail-sent-ok  {
    float: left;
}

.datenschutzfeld {
    float: left; width: 100%; margin: 10px 0; line-height: 1.5em;
}
.datenschutzfeld span.wpcf7-list-item-label {
    display: none;
}
.datenschutzfeld  span.wpcf7-list-item {
    display: inline-block;
    margin: 0 1em 0 0;
}

.datenschutzfeld .dsfw {
    float: left; width: 100%; background: #f9f9df; padding: 50px 20px; box-sizing: border-box; text-align: center;
}

div.wpcf7-validation-errors, div.wpcf7-mail-sent-ok, .wpcf7-response-output  {
    float: left;
}

.wpcf7 form.invalid .wpcf7-response-output::before {
  display: inline-block; padding: 0 10px 0 0;
  font-family: 'icons';
  text-decoration: none; font-size: 1.2em;
  content: "\2757"; color: #ffb900;
}
.wpcf7 form.sent .wpcf7-response-output::before {
  display: inline-block; padding: 0 10px 0 0;
  font-family: 'icons';
  text-decoration: none; font-size: 1.2em;
  content: "\2714"; color: #46b450;
}

div.social {
    float: left; width: 100%; text-transform: uppercase; margin: 5px 0; text-align: right;
}
div.social a {
border-style: solid; display: inline-block; line-height: 1em; width: 37px; height: 37px; box-sizing: border-box;
border-width: 2px 2px 2px 2px;
border-color: #707070; font-family: icons;  border-radius: 50px 50px 50px 50px;
background: transparent;  border-radius: 50px 50px 50px 50px; text-align: center;
padding: 8px; margin: 0 0 0 10px; }

div.social a:hover {
 background: #000; color: #fff !important; border-color: #000;
}
 #menu .social {
     width: auto; position: absolute; top: 10px; left: 50%; margin: 0 0 0 450px;-webkit-transition: all 0.5s;
-moz-transition: all 0.5s;
transition: all 0.5s;
 }
 .menuevis #menu .social, #header:not(.fixiert) #menu .social { top: 40px; }

a.extern::before {
 display: inline-block; padding: 0 10px 0 0;
  font-family: 'icons';
  text-decoration: none; font-size: 1.2em;
  content: "\e8a1";
}

.details {
    float: left; width: 100%; margin: 20px 0 50px; border-top: 2px solid #353535; border-bottom: 2px solid #353535; padding: 10px 0 20px;
}
#detaillink {
    display: inline-block; padding: 10px 20px 7px; background: #666666; color: #fff; font-weight: bold;
    border: 1px solid #878787; margin: 10px 0;text-transform: uppercase;
}
#detaillink:hover {
   background: #878787; color: #fff;
}


a#nulink {  position: absolute;
padding:10px 0; bottom: 5%; left: 50%; margin: 0 0 0 -20px;
width: 50px;  box-sizing: border-box; text-align: center;
opacity:0.7;-webkit-transition: all 0.3s;
-moz-transition: all 0.3s;
transition: all 0.3s; z-index: 6;
}
.bild:hover a#nulink {
bottom:3%;
}
a#nulink:hover {opacity:1.0; }


.wp-block-cover {
    min-height: 500px;
}

.alignfull {
    width: 100vw !important;
    margin: 0 0 0 -50vw;
    left: 50%;
}
.wp-block-cover img {
    height: 100% !important;
}



.sliderelement  {
    float: left; width: 100%; margin: 50px 0;
}
.sliderelement h2 {
    float: left; width: 100%; margin: 25px 0 0; font-weight: 500;
}
.sliderelement p {
    float: left; width: 100%; margin: 12px 0 0; font-weight: 500;
}

.sliderwrap {
    float: left; width: 100%; background: #ffffff; padding: 10px;
}
.sliderelement h2, .sliderelement .sliderz, .sliderelement .eedee-gutenslider-pagination span {
    color: #a3a3a2;
}

.sliderelement.colorblau .sliderwrap {
    background-color: var(--frame-color-blau);
}
.sliderelement.colorblau h2, .sliderelement.colorblau .sliderz, .sliderelement.colorblau .eedee-gutenslider-pagination span {
    color: var(--frame-color-blau);
}
.sliderelement.colororange .sliderwrap {
    background-color: var(--frame-color-orange);
}
.sliderelement.colororange h2, .sliderelement.colororange .sliderz, .sliderelement.colororange .eedee-gutenslider-pagination span {
    color: var(--frame-color-orange);
}
.sliderelement.colorlila .sliderwrap {
    background-color: var(--frame-color-lila);
}
.sliderelement.colorlila h2, .sliderelement.colorlila .sliderz, .sliderelement.colorlila .eedee-gutenslider-pagination span {
    color: var(--frame-color-lila);
}
.sliderelement.colorgelb .sliderwrap {
    background-color: var(--frame-color-gelb);
}
.sliderelement.colorgelb h2, .sliderelement.colorgelb .sliderz, .sliderelement.colorgelb .eedee-gutenslider-pagination span {
    color: var(--frame-color-gelb);
}
.sliderelement.colorschwarz .sliderwrap {
    background-color: var(--frame-color-schwarz);
}
.sliderelement.colorschwarz h2, .sliderelement.colorschwarz .sliderz, .sliderelement.colorschwarz .eedee-gutenslider-pagination span {
    color: var(--frame-color-schwarz);
}
.sliderelement.colorgraublau .sliderwrap {
    background-color: var(--frame-color-graublau);
}
.sliderelement.colorgraublau h2, .sliderelement.colorgraublau .sliderz, .sliderelement.colorgraublau .eedee-gutenslider-pagination span {
    color: var(--frame-color-graublau);
}
.sliderelement.colorgold .sliderwrap {
    background-color: var(--frame-color-gold);
}
.sliderelement.colorgold h2, .sliderelement.colorgold .sliderz, .sliderelement.colorgold .eedee-gutenslider-pagination span {
    color: var(--frame-color-gold);
}
.sliderelement.colorrot .sliderwrap {
    background-color: var(--frame-color-rot);
}
.sliderelement.colorrot h2, .sliderelement.colorrot .sliderz, .sliderelement.colorrot .eedee-gutenslider-pagination span {
    color: var(--frame-color-rot);
}
.sliderelement.colorz1 .sliderwrap {
    background-color: var(--frame-color-z1);
}
.sliderelement.colorz1 h2, .sliderelement.colorz1 .sliderz, .sliderelement.colorz1 .eedee-gutenslider-pagination span {
    color: var(--frame-color-z1);
}
.sliderelement.colorz2 .sliderwrap {
    background-color: var(--frame-color-z2);
}
.sliderelement.colorz2 h2, .sliderelement.colorz2 .sliderz, .sliderelement.colorz2 .eedee-gutenslider-pagination span {
    color: var(--frame-color-z2);
}
.sliderelement.colorz3 .sliderwrap {
    background-color: var(--frame-color-z3);
}
.sliderelement.colorz3 h2, .sliderelement.colorz3 .sliderz, .sliderelement.colorz3 .eedee-gutenslider-pagination span {
    color: var(--frame-color-z3);
}
.sliderelement.colorz4 .sliderwrap {
    background-color: var(--frame-color-z4);
}
.sliderelement.colorz4 h2, .sliderelement.colorz4 .sliderz, .sliderelement.colorz4 .eedee-gutenslider-pagination span {
    color: var(--frame-color-z4);
}
.sliderelement.colorz5 .sliderwrap {
    background-color: var(--frame-color-z5);
}
.sliderelement.colorz5 h2, .sliderelement.colorz5 .sliderz, .sliderelement.colorz5 .eedee-gutenslider-pagination span {
    color: var(--frame-color-z5);
}
.sliderelement.colorz6 .sliderwrap {
    background-color: var(--frame-color-z6);
}
.sliderelement.colorz6 h2, .sliderelement.colorz6 .sliderz, .sliderelement.colorz6 .eedee-gutenslider-pagination span {
    color: var(--frame-color-z6);
}
.sliderelement.colorz7 .sliderwrap {
    background-color: var(--frame-color-z7);
}
.sliderelement.colorz7 h2, .sliderelement.colorz7 .sliderz, .sliderelement.colorz7 .eedee-gutenslider-pagination span {
    color: var(--frame-color-z7);
}
.sliderelement.colorz8 .sliderwrap {
    background-color: var(--frame-color-z8);
}
.sliderelement.colorz8 h2, .sliderelement.colorz8 .sliderz, .sliderelement.colorz8 .eedee-gutenslider-pagination span {
    color: var(--frame-color-z8);
}
.sliderelement.colorz9 .sliderwrap {
    background-color: var(--frame-color-z9);
}
.sliderelement.colorz9 h2, .sliderelement.colorz9 .sliderz, .sliderelement.colorz9 .eedee-gutenslider-pagination span {
    color: var(--frame-color-z9);
}
.sliderelement.colorz10 .sliderwrap {
    background-color: var(--frame-color-z10);
}
.sliderelement.colorz10 h2, .sliderelement.colorz10 .sliderz, .sliderelement.colorz10 .eedee-gutenslider-pagination span {
    color: var(--frame-color-z10);
}


.frameslider {
    box-sizing: border-box;

}
.frameslider .swiper {
    clip-path: polygon(50% 50%, 50% 50%, 50% 50%, 50% 50%); -webkit-transition: all 0.5s ease;
-moz-transition: all 0.5s ease;
transition: all 0.5s ease;
}

.frameslider.offen .swiper {
    clip-path: polygon(10px 10px, calc(100% - 10px) 10px, calc(100% - 10px) calc(100% - 10px), 10px calc(100% - 10px));
}

.frameslider:hover .swiper {
 clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%);
}

.sliderz {
    position: absolute; right: 0 !important; bottom: -68px !important; font-size: 28px; width: 45px; text-align: left;white-space: nowrap; font-family:"neue-haas-unica";
}
.uz .sliderz {
    width: 30px;
}

.frameslider .eedee-gutenslider-pagination {
  position: absolute; top: auto !important; bottom: -68px !important; right:48px !important; padding: 0 !important; display: block;  width: 40px; height: auto; display: block;
  float: left; text-align: right !important; font-size: 28px; white-space: nowrap; font-family:"neue-haas-unica";  }
.frameslider .eedee-gutenslider-pagination .swiper-pagination-bullet {
 position: relative; margin: 0 !important; height: auto !important; display: none; width: auto !important; background: transparent !important; text-align: right;
}
.frameslider.uz .eedee-gutenslider-pagination { right:32px !important; }
.frameslider .eedee-gutenslider-pagination .swiper-pagination-bullet-active {
  display: inline !important;
}
.frameslider button svg {
    opacity: 0; visibility: hidden;
}

.contactinfos strong {
   color: #A3A3A2; font-weight: 500;
}

@media (min-width: 960px) {

.frameslider button.eedee-gutenslider-prev {
    left: 0 !important; top: 0 !important; width: 50% !important; height: 100% !important; transform: none !important;
}
.frameslider button.eedee-gutenslider-next {
    right: 0 !important; top: 0 !important; width: 50% !important; height: 100% !important; transform: none !important;
}

}

@media only screen and (max-width: 1560px) {
#menu .social { left: auto; margin: 0; right: 220px; }
}

@media only screen and (max-width: 1260px) {

#contactfeld > .wp-block-column:first-child {
    display: none;
}
#about > .wp-block-column {
    flex-grow: 1 !important;
}

#about > .wp-block-column:last-child {
    display: none;
}
#footwidget {width: 290px;}
#footwidget2 { width: 100px; float: right; }

.frameslider.offen .swiper {
    clip-path: polygon(7px 7px, calc(100% - 7px) 7px, calc(100% - 7px) calc(100% - 7px), 7px calc(100% - 7px));
}
.frameslider:hover .swiper {
  clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%);
}
.wp-block-columns { margin-bottom: 0 !important; }

#footsidebar p {
    margin-bottom: 0;
}
#contactfeld { margin-bottom: 50px !important; }
}

@media only screen and (max-width: 1160px) {

#main { padding: 0 0 20px 0;}
.bild { min-height: 500px; }
.bildbalken {height: 200px;}

.mobilenav {
    display: none;
}


#menu { margin: 0;  height:100%;   }
#menu ul li {
 font-size: 0.9em;
}


#menu ul li { width:100%; position: relative; margin: 0;}
span.qn {display: block; }

#menu ul.sub-menu ul { display: block; position: relative; left: 0; background: transparent; margin: 0; padding: 0 !important;}

.copy {width: 92%; margin: 10px 4%;}

#footnav ul { flex-wrap: wrap; }


.sliderz { bottom: -59px !important;}
.frameslider .eedee-gutenslider-pagination { bottom: -59px !important;  }


.sliderelement h2 { margin: 22px 0 0; }
.sliderelement p { margin: 8px 0 0; }

#about { margin-top: 15px; }

}
@media only screen and (max-width: 960px) {


#startlogocontainer { width: 180px; margin: 0 0 0 -110px; }

#breadcrumbs.titbc {  margin-top: 0;}
.fzic div.info-men {width: 92%; margin: 10px 4%;}

.home #main {  }
h1 { font-size:1.8em;}
h2 { font-size: 1.5em;}
#footer h3, #footer h2 { font-size: 1.7em;}
.bildtitle { margin: 0 10% -40px 5%; }

#content ul.wp-block-latest-posts__list.is-grid li { width: 48%;}

.sliderwrap { padding: 5px;}
.frameslider.offen .swiper {
    clip-path: polygon(5px 5px, calc(100% - 5px) 5px, calc(100% - 5px) calc(100% - 5px), 5px calc(100% - 5px));
}
.frameslider:hover .swiper {
 clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%);
}

.sliderz { bottom: -54px !important;}
.frameslider .eedee-gutenslider-pagination { bottom: -54px !important;  }


.fw, #footwidget, #footwidget2 {width: 92%; padding: 0 4%;}
#footnav {width: 92%; padding: 0 4% 10px; }

#footbalken .zc {
     display: flex; flex-wrap: wrap;
}
.fw { order: 2; }
#footwidget2 { order: 1; }
#footwidget2 div.social { text-align: left; }
div.social a:first-child { margin: 0;}
#contactfeld { margin-bottom: 0 !important; }
#contactfeld .wp-block-columns { margin-bottom: 50px !important; }

}
@media only screen and (max-width: 780px) {
.wp-block-columns { gap: 1em !important;
}
#footer::after {  height: 1300px; }
.sliderz { bottom: -50px !important; width: 35px;}
.uz .sliderz { width: 25px; }
.frameslider .eedee-gutenslider-pagination { bottom: -50px !important; right:37px !important;  }
 .frameslider.uz .eedee-gutenslider-pagination { right:27px !important; }

.wp-block-columns { margin-bottom: 0 !important; }
.sliderelement  { margin: 30px 0; }
.wp-block-spacer { max-height: 50px; }


#contactfeld .wp-block-columns p { margin-top: 0;}

.wp-block-column.leer {
    display: none !important;
}

}

@media only screen and (max-width: 680px) {

#header, #header.menuevis {
    padding-top: 10px !important;
}

#menu .social,  #header:not(.fixiert) #menu .social  { top: 20px !important; }
.bildbalken {height: 180px;}
.fw, #footwidget, #footwidget2 { width: 92%;}
.teaserbox {width:97%; margin: 10px 1.5%; height:auto;}
.amltop {  display: none; }
.bild { min-height: 300px; }

#hauptsidebar .widget { width: 100%;}

.mtphr-dnt-nav {
    display: none;
}
.bildtitle { margin: 0 10% -40px 5%; }
#menu .social { left: auto; margin: 0; right:190px; }
#footnav { padding: 0 4%; }


}

@media only screen and (max-width: 460px) {
#header, #header.menuevis {
    padding-top: 5px !important;
}
.bildbalken {height: 175px;}
.bild { min-height: 200px; }
#titel { margin:-50px 2% 30px; width: 96%; left:0;}
#searchform input {  font-size: 0.9em;  }
#searchform [type=submit] { font-size: 0.9em;  }
.alignleft, img.alignleft {
    margin-right: 0;max-width: 100%; width: 100% !important;
    }
.alignright, img.alignright {
    margin-left: 0;max-width: 100%; width: 100% !important;
    }


#content ul.wp-block-latest-posts__list.is-grid li { width: 98%;}
#menu .social {
    display: none;
}
}


.uagb-tabs__wrap {
     margin: 20px 0 !important;
}
.uagb-tabs__wrap ul.uagb-tabs__panel li.uagb-tab a {
  position: relative;
  padding: 6px 20px 6px 0 !important;
  display: inline-flex;
}
.uagb-tabs__body-wrap {
    padding-top: 5px !important;
}

.uagb-tabs__wrap .uagb-tabs__body-container {
  padding: 10px 15px 10px 0 !important;
}
@media (max-width: 767px) {

.uagb-tabs__wrap.uagb-tabs__stack1-mobile ul.uagb-tabs__panel { flex-direction: row !important; }
.uagb-tabs__wrap.uagb-tabs__stack1-mobile ul.uagb-tabs__panel .uagb-tab, .uagb-tabs__wrap.uagb-tabs__stack2-mobile ul.uagb-tabs__panel .uagb-tab, .uagb-tabs__wrap.uagb-tabs__stack3-mobile ul.uagb-tabs__panel .uagb-tab, .uagb-tabs__wrap.uagb-tabs__stack4-mobile ul.uagb-tabs__panel .uagb-tab {
  width: auto !important;
}
}

.wp-block-uagb-tabs { flex-direction: column !important;}
 ul.uagb-tabs__panel { flex-direction: row !important; flex-wrap: nowrap !important; width: 100% !important; min-width: 100% !important; max-width: 100% !important; }
.uagb-tabs__body-wrap {
    max-width: 100% !important;
}

.uagb-tabs__panel a {
    position: relative;
}
.uagb-tabs__panel a::after {
  content:""; width: 0; height: 2px; -webkit-transition: all 0.5s ease-out;
-moz-transition: all 0.5s ease-out;
transition: all 0.5s ease-out;
position: absolute; bottom: 3px; left: 0;
}
.uagb-tabs__panel a:hover::after {
    width: calc(100% - 20px); background: #666;
}
.uagb-tabs__panel .uagb-tabs__active a::after {
    width: calc(100% - 20px); background: #000;
}

 .cursor{
   position: fixed;
   width: 20px;
   height: 20px;
   border-radius: 50%;
   background-color: #000;
   pointer-events: none;
   z-index: 999;
   border: 2px solid #fff;
   transition: width 0.2s ease, height 0.2s ease;
 }
 .cursor.chover {
     width: 35px; height: 35px;
 }
  .cursor.cdown {
     transform: scale(0.8);
 }