/*
 Theme Name:   Infinite Child
 Theme URI:    http://demo.goodlayers.com/infinite
 Description:  Goodlayers Infinite Child Theme
 Author:       Goodlayers
 Author URI:   http://goodlayers.com
 Template:     infinite
 Version:      1.0.0
 License:      GNU General Public License v2 or later
 License URI:  http://www.gnu.org/licenses/gpl-2.0.html
 Tags:         light, dark, right-sidebar, responsive-layout
 Text Domain:  infinite-child
*/
:root {
    --color-white: #FFF;
    --color-black: #000;
    --menu-mobile-line-color: #000;
    --menu-desktop-bgcolor: #FFF;
}
.w-nav-arrow:before,.w-nav-control:before{font-family:fontawesome;vertical-align:top}a.w-nav-control{padding:10px}.w-nav-list{list-style:none;margin:0;display:none}.w-nav-anchor,.w-nav-item{display:block;position:relative}.w-nav-item{margin:0}.w-nav-anchor{overflow:hidden;color:inherit;border:none!important}.w-nav-arrow{display:none;position:absolute;top:0;right:0;font-weight:400;line-height:inherit;text-transform:none;text-align:center;width:2em}.w-nav.type_mobile .w-nav-anchor{line-height:1.6em;padding:.7rem;box-shadow:0 1px 0 rgba(0,0,0,.06) inset}.w-nav.type_mobile .w-nav-anchor.level_2{padding-left:2rem}.w-nav.type_mobile .w-nav-anchor.level_3{padding-left:3rem}.w-nav.type_mobile .w-nav-anchor.level_4{padding-left:4rem}.w-nav.type_mobile .btn.menu-item .w-nav-anchor.level_1{margin:.7rem}.w-nav.type_mobile .menu-item-has-children>.w-nav-anchor .w-nav-title{padding-right:2em}.w-nav.type_mobile .btn.menu-item-has-children>.w-nav-anchor .w-nav-title{padding-right:.5em}.w-nav.type_mobile .menu-item-has-children>.w-nav-anchor .w-nav-arrow{display:block;padding:.7rem 0;transition:transform .3s}.w-nav.type_mobile .btn.menu-item-has-children>.w-nav-anchor .w-nav-arrow{display:inline;vertical-align:top;position:static}.w-nav-arrow:before{content:'\f105';font-size:1.5em}.w-nav.type_desktop .hover_underline .w-nav-title{position:relative}.w-nav-control:before{content:'\f0c9';font-size:1.4rem}.w-nav.type_mobile .w-nav-arrow:before{content:'\f107'}.w-nav.type_mobile .w-nav-item.opened>.w-nav-anchor .w-nav-arrow{transform:rotate(180deg)}.header_hor .w-nav.type_mobile .w-nav-control{display:block;line-height:3.5rem;padding:0 .8rem}.w-nav.type_mobile .w-nav-list.level_1{position:absolute;z-index:1;left:-2.7rem;right:-2.7rem;padding-left:2rem;padding-right:2rem;box-shadow:0 3px 3px rgba(0,0,0,.1);overflow-y:auto;-webkit-overflow-scrolling:touch;background:#fff;top:calc(100% + 15px)}.infinite-mobile-menu-right{position:relative;right:auto;top:auto;margin-top:0;display:flex;align-items:center}#infinite-mobile-top-search i{font-size:18px;color:#545454}#infinite-mobile-top-search{margin-right:10px;margin-top:0}.infinite-mobile-header .infinite-logo{padding:0;flex-grow:1}.w-nav.type_mobile li>a{color:#999}.w-nav.type_mobile ul>li.current-menu-ancestor>a span,.w-nav.type_mobile ul>li.current-menu-item>a span,.w-nav.type_mobile ul>li>a:hover span{color:#333}@media only screen and (max-width :900px){.noscroll{overflow:hidden}}.w-nav-list .w-nav-arrow{background: rgba(0,0,0,.03);width: 2.5em;}.infinite-mobile-menu-right:first-child{float:none;}.gdlr-core-blog-full .gdlr-core-blog-title,.gdlr-core-blog-info-wrapper .gdlr-core-blog-info,.gdlr-core-blog-info.gdlr-core-blog-info-font.gdlr-core-skin-caption.gdlr-core-blog-info-date,.gdlr-core-button,.gdlr-core-recent-post-widget .gdlr-core-blog-info a,.gdlr-core-recent-post-widget .gdlr-core-blog-info a:hover,.gdlr-core-testimonial-item .gdlr-core-block-item-title-wrap .gdlr-core-block-item-title,.gdlr-core-testimonial-item .gdlr-core-testimonial-title,.infinite-body h1,.infinite-body h2,.infinite-body h3,.infinite-body h4,.infinite-body h5,.infinite-body h6,.infinite-navigation .sf-menu>.infinite-mega-menu .sf-mega-section-inner>a,.infinite-navigation .sf-menu>li>a,.infinite-top-search-wrap input.search-field,.infinite-widget-head-text,infinite-body footer .infinite-copyright-text,infinite-body footer .infinite-footer-column,ul.mm-listview li a,ul.mm-listview li span.infinite-mm-menu-blank{letter-spacing:0}
a:focus {
    /* outline: auto 2px Highlight;
    outline: auto 2px -webkit-focus-ring-color;*/
    outline: 2px dotted rgba(127, 127, 127);
}
body.infinite-body .skip-to-content-link {
    background: var(--color-white);
    color: var(--color-black);
    font-weight: 700;
    left: 50%;
    padding: 4px;
    position: absolute;
    transform: translateY(-300%);
    z-index: 9999999999;
}
body.infinite-body .skip-to-content-link:hover,
body.infinite-body .skip-to-content-link:active {
    background: var(--color-white);
    color: var(--color-black);
}
body.infinite-body .skip-to-content-link:focus {
    transform: translateY(0%);
}
/* Responsive */
@media only screen and (max-width:459px) {

}
@media only screen and (min-width: 460px) and (max-width:767px) {

}
@media only screen and (min-width: 768px) and (max-width:999px) {

}
@media only screen and (min-width: 999px) and (max-width:1199px) {

}
@media only screen and (max-width: 767px) {
    .infinite-body h1 {
        font-size: 28px;
    }
    .infinite-body h2 {
        font-size: 24px;
    }
    .infinite-body h3 {
        font-size: 20px;
    }
    .infinite-body h4 {
        font-size: 18px;
    }
    .gdlr-core-pbf-wrapper-full-no-space .gdlr-core-pbf-column-content-margin {
        padding-left: 0px !important;
        padding-right: 0px !important;
    }
}
@media only screen and (min-width: 768px) {

}
@media only screen and (max-width: 999px) {
    .desktop-hidden {
        display: none !important;
    }
}
@media only screen and (min-width: 1000px) {

}
.reihe {
    display: flex;
    justify-content: space-between;
}

.spalte-1 {
    display: table-cell;
    padding-right: 5px; 
}

.spalte-2 {
    display: table-cell;
    padding-left: 5px;
}

.checkbox-dsgvo {
    float: left;
    margin-right: 5px;
}

.checkbox-dsgvo span {
    margin-left: 0px;
}

@media only screen and (max-width: 767px) {
    .infinite-footer-column {
        margin-bottom: 0px;
    }
}

.novalidate {
    color: black;
}
.wpcf7-form-indicator { 
    display:none;
}
.wpcf7-form-control-wrap input[type="text"],
.wpcf7-form-control-wrap input[type="tel"] {
    height: 38px;
}
.wpcf7-email {
    padding:9px !important;
}
.dsgvo-text {
    line-height: 1.1;
    margin-bottom: 15px;
    margin-top: 15px;
    display: block;
    position: relative;
    z-index: 0;
}

.dsgvo-text span {
    margin-left: 0 !important;
}

.dsgvo-text {
    display: block;
}

.dsgvo-text .wpcf7-not-valid {
    display: block;
    /* padding: 2px 10px; */
    font-size: 0.95em;
}

.dsgvo-text .wpcf7-not-valid:after {
    content: '';
    /*
    background: #af0000 !important;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    position: absolute;
    z-index: -1;
    display: block;
	*/
    top: -9px;
    left: -10px;
    right: -10px;
    bottom: -10px;
    position: absolute;
    z-index: -1;
    display: block;
    border: 2px solid #af0000 !important;
}

.dsgvo-text .wpcf7-form-control-wrap {
    position: initial;
}

.dsgvo-text .wpcf7-list-item {
    margin: 0;
}

.dsgvo-hinweis {
    display: block;
    font-size: 0.8em;
}

.dsgvo-checbox .wpcf7-not-valid-tip {
    display: none !important;
}

.dsgvo-checbox input[type="checkbox"] {
    display: inline-block;
    margin-left: 0;
    padding-left: 0;
}

.wpcf7-form-control-wrap.checkbox-dsgvo>span,
.wpcf7-form-control-wrap.checkbox-dsgvo {
    display: inline-block;
    padding: 0 !important;
}

span.dsgvo-checbox {
    display: inline-block;
    margin-right: 2px;
}

.wpcf7-response-output.wpcf7-display-none.wpcf7-validation-errors {
    background: #af0000;
    border: 0 !important;
    text-align: center;
}

div.wpcf7-response-output {
    margin: 0;
}

.wpcf7-form-control-wrap.checkbox-dsgvo input,
.wpcf7-form-control-wrap.checkbox-dsgvo span {
    display: flex;
    align-items: center;
    margin: 0 !important;
}

span.dsgvo-hinweis {
    padding-top: 10px;
    color: #aaa;
}

.wpcf7 span.wpcf7-form-control-wrap.checkbox-dsgvo {
    display: flex;
    margin-bottom: 0;
}
.infinite-body input[type="submit"] {
    background-color: #69143a;
    padding-left: 40px;
    padding-right: 40px;
    text-transform:none;
}
.infinite-body input[type="submit"]:hover {
    background-color: #000000;
}
.wpcf7-form-control {
    display: block !important;
}
.dsgvo-checbox .wpcf7-list-item-label { 
    display: none;
}
/*Kontaktformualr ende*/


.villa-vicoria-logo-gap .gdlr-core-pbf-wrapper-container .gdlr-core-pbf-column-content{ 
    padding-left: 30px;
    padding-right: 30px;
    padding-top: 60px;
    padding-bottom: 60px;
}
.infinite-header-style-plain.infinite-style-menu-right .infinite-navigation {
    float: left;
}
.gdlr-core-button .gdlr-core-content { 
    text-transform: none;
    font-size:16px;
}


/* Rahmen erzeugen */

.infinite-navigation .sf-menu > li:last-child a{
    color: #A7601F;
}
.infinite-navigation .sf-menu > li:last-child a:hover{
    color: #000000;
}
.infinite-footer-container img { 
    height: 48px;
    width: fit-content;
}

.infinite-navigation .sf-menu > li:last-child {
    position: absolute;
    right: 0;
}
.villa-vicotria-border.vill-victoria-gallery .gdlr-core-pbf-wrapper-container{ 
    padding-top: 60px;
    padding-bottom: 60px;
    padding-right: 30px;
    padding-left: 30px;
}
.villa-vicotria-border .gdlr-core-pbf-wrapper-container{
  position: relative;
  padding: 2rem;
  border: 3px solid #69143a; /* lila Linie */
  border-radius: 0; /* keine normalen Rundungen */
  color: #2b2b2b;
  
  /* "Ausgeschnittene" Kreise in den Ecken */
  /* mask:
    radial-gradient(circle 20px at top left, transparent 98%, black 100%) top left,
    radial-gradient(circle 20px at top right, transparent 98%, black 100%) top right,
    radial-gradient(circle 20px at bottom right, transparent 98%, black 100%) bottom right,
    radial-gradient(circle 20px at bottom left, transparent 98%, black 100%) bottom left;
  mask-size: 50% 50%;
  mask-repeat: no-repeat;
  -webkit-mask:
    radial-gradient(circle 20px at top left, transparent 98%, black 100%) top left,
    radial-gradient(circle 20px at top right, transparent 98%, black 100%) top right,
    radial-gradient(circle 20px at bottom right, transparent 98%, black 100%) bottom right,
    radial-gradient(circle 20px at bottom left, transparent 98%, black 100%) bottom left;
  -webkit-mask-size: 50% 50%;
  -webkit-mask-repeat: no-repeat; */
}
.villa-decoration-corner-top-left {
    position: absolute;
    top: -8px;
    left: -23px;
}
.villa-decoration-corner-top-right {
    position: absolute;
    top: -22px;
    right: -9px;
    transform: rotate(90deg);
}
.villa-decoration-corner-bottom-left {
        position: absolute;
    bottom: -22px;
    left: -9px;
    transform: rotate(270deg);
}
.villa-decoration-corner-bottom-right {
    position: absolute;
    bottom: -8px;
    right: -24px;
    transform: rotate(180deg);
}
.villa-kontakt-border .gdlr-core-pbf-wrapper-container{ 
    border: 3px solid #A7601F;
    padding:0;
    max-width:1300px;
}
.villa-kontakt-border .gdlr-core-image-item { 
    padding-left:0;
}
@media only screen and (max-width:1300px) { 
.villa-kontakt-border  { 
    margin-right: 50px;
    margin-left: 50px;
}
.villa-vicotria-border{ 
    margin-right: 50px;
    margin-left: 50px;
}
}
.villa-vicotria-border .gdlr-core-pbf-wrapper-container {
    max-width:1300px;
 }
 .wpcf7-select, .wpcf7-form-control-wrap input[type="text"], .wpcf7-form-control-wrap input[type="tel"], textarea { 
    border: 2px solid #A7601F !important;
 }
 .wpcf7-form-control-wrap input[type="text"], .wpcf7-form-control-wrap input[type="tel"] {
    height: 50px;
}
.villa-kontaktformular .gdlr-core-text-box-item-content { 
    padding-right: 15px;
}
.villa-kontaktformular label { 
    color: #A7601F;
}
.villa-kontaktformular label.dsgvo-text { 
    color: black;
}
.sub-menu .menu-item { 
    text-transform: none;
}
.heading-not-bold { 
    font-family: "Playfair Display Regular ";
    font-weight: 400;
}
body .gdlr-core-pbf-column  h3,
body .gdlr-core-pbf-column  h4 { 
    font-family:"Inter Bold"; 
}
.villa-zimmerbeschreibung-container .gdlr-core-image-item{ 
    padding:0;
}
.villa-zimmerbeschreibung-container-text { 
    padding-left: 15px;
    padding-right: 15px;
}
.custom-gallery {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
/* .vill-victoria-gallery .gdlr-core-image-overlay-icon { 
    opacity:0;
    transition:.3s;
}
.vill-victoria-gallery .gdlr-core-ilightbox:hover .gdlr-core-image-overlay-icon { 
    opacity:1;
} */
.custom-gallery .row {
  display: flex;
  gap: 20px;
}

.row-1 img {
  /* width: calc((100% - 3 * 20px) / 4); */
  object-fit: cover;
  display: block;
}

.row-2 {
  display: flex;
  gap: 20px;
}

.row-2 .left {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-template-rows: repeat(2, 1fr);
  gap: 20px;
  width: 50%;
}

.row-2 .left img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.row-2 .right {
  width: 50%;
}

.row-2 .right img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.villa-top-left-image-start { 
    padding-bottom:30px;
}
.villa-top-right-image-start { 
    padding-bottom:30px;
}
.villa-bottom-right-image-start { 
     padding-bottom:30px;
}
.villa-bottom-left-image-start { 
     padding-bottom:30px;
}
#sidebar .textwidget {
    position: fixed;
    z-index: 300;
    bottom: 100px;
    right: 0px;
}
#sidebar .textwidget img {
    width: 139px;
}
ul#sidebar {
    margin-left: 0;
    margin-bottom: 0;
    display:none;
}
#open-news-pop-up:hover { 
    cursor: pointer;
}
@media only screen and (max-width:999px) { 
    .villa-vicoria-logo-gap .gdlr-core-column-15 {
        float: left;
        width: 50%;
        margin-bottom:30px;
    }
}
@media only screen and (max-width:768px) { 
    body.infinite-body-front .villa-kontakt-border .gdlr-core-pbf-wrapper-container { 
        padding-left:0;
        padding-right:0;
    }
    body.infinite-body-front .villa-kontakt-border .gdlr-core-image-item { 
        padding-left:0;
        padding-right:0;
    }
    .villa-kontaktformular .gdlr-core-text-box-item-content {
        padding-right: 15px;
        padding-left: 15px;
    }
    .infinite-footer-wrapper .textwidget{ 
        text-align: center;
        margin-bottom:30px;
    }
     .villa-vicoria-logo-gap .gdlr-core-pbf-wrapper-container .gdlr-core-pbf-column-content {
        padding-left: 15px;
        padding-right: 15px;
        padding-top: 30px;
        padding-bottom: 30px;
    }
        .villa-vicoria-logo-gap .gdlr-core-column-15 {
        float: left;
        width: 100%;
        margin-bottom: 30px;
    }
    .villa-zimmerbeschreibung-container-text { 
        padding-top:30px;
    }
      .custom-gallery .row.row-1 { 
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        grid-template-rows: repeat(2, 1fr);
        gap: 10px;
        width: 100%;
    }
   .custom-gallery .row.row-2 { 
        display: block;
       
   }
    .custom-gallery .row.row-2 .left{ 
        margin-bottom: 10px;
          gap: 10px;
    }
   .custom-gallery .row.row-2 .left,
    .custom-gallery .row.row-2 .right { 
        width: 100%;
    }
    .custom-gallery {
        display: flex;
        flex-direction: column;
        gap: 10px;
    }
    .gdlr-core-flexslider-nav, .gdlr-core-flexslider .flex-direction-nav, .gdlr-core-flexslider-custom-nav {
    display: block;
    }
    .gdlr-core-flexslider .flex-direction-nav .flex-nav-prev {
        left: 10px;
    }
    .gdlr-core-flexslider .flex-direction-nav .flex-nav-next {
        right: 10px;
    }
    .gdlr-core-flexslider .flex-direction-nav li a {
        display: block;
        padding: 5px;
        background: #000;
        background: rgba(0,0,0,0.6);
        color: #fff;
        border-radius: 50%;
        -moz-border-radius: 50%;
        -webkit-border-radius: 50%;
    }
}

@media only screen and (max-width:500px) { 
   
}