/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 1.0.1
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/


/*
    Add your custom styles here
*/

@media(min-width: 1024px){
.mobile
{
display:none;
}
.desktop{
display:block;
}
}
@media(max-width: 1024px){
.mobile
{
display:block;
}
.desktop{
display:none;
}
}

.s-multiple {
    max-height:none!important;
    height:130px;
    background: #F0F0F0!important;
}

.formblock {
    line-height: 1.7rem !important;
}

.formblock input[type=gender],
.formblock input[type=date],
.formblock input[type=email],
.formblock input[type=number],
.formblock input[type=password],
.formblock input[type=search],
.formblock input[type=tel],
.formblock input[type=text],
.formblock input[type=url],
.formblock select {
    min-height: 42px;
    background-color: #F0F0F0;
    border: 0px;
    border-radius: 0px;
    max-height: 42px;
}

.formblock select {
    overflow: hidden;
    overflow: -moz-hidden-unscrollable;
    background: url(assets/images/select_arrow.png) no-repeat right bottom #F0F0F0;
    display: inline-block;
    position: relative;
}

.formblock ::-webkit-input-placeholder {
    /* Chrome/Opera/Safari */
    color: #A7A7A7;
    font-size: 1.1rem;
}

.formblock ::-moz-placeholder {
    /* Firefox 19+ */
    color: #A7A7A7;
    font-size: 1.1rem;
}

.formblock :-ms-input-placeholder {
    /* IE 10+ */
    color: #A7A7A7;
    font-size: 1.1rem;
}

.formblock :-moz-placeholder {
    /* Firefox 18- */
    color: #A7A7A7;
    font-size: 1.1rem;
}

.formblock label,
.formblock .wpcf7-list-item-label {
    font-size: 1.3rem;
}

.formblock select {
    -moz-appearance: none;
    /* Firefox */
    -webkit-appearance: none;
    /* Safari and Chrome */
    appearance: none;
}


/*.formblock select option { color: black; }*/

.formblock .empty {
    color: #A7A7A7;
    font-size: 1.1rem;
}

.form-row {
    margin-left: -1rem;
    margin-right: -1rem;
}

.form-group {}

.datenerhebung .wpcf7-list-item {
    display: block;
    margin-bottom: 10px;
}

.datenerhebung .wpcf7-checkbox input[type=checkbox] {
    position: relative;
    visibility: hidden;
    width: 0px;
}

.datenerhebung .wpcf7-checkbox input[type=checkbox]+span {
    /*   border: 3px solid red;  */
}

.datenerhebung .wpcf7-checkbox input[type=checkbox]+span:before {
    display: block;
    position: absolute;
    content: '';
    border-radius: 0px;
    height: 18px;
    width: 18px;
    top: 0px;
    border: 2px solid #222;
    left: 0px;
}

.datenerhebung .wpcf7-checkbox input[type=checkbox]+span:after {
    display: block;
    position: absolute;
    content: '\2713';
    border-radius: 100%;
    height: 10px;
    width: 10px;
    top: -12px;
    left: 5px;
    visibility: hidden;
    font-size: 16px;
}

.datenerhebung .wpcf7-checkbox input[type=checkbox]:checked+span:before {
    background: transparent;
    /*     border-color: red; */
}

.datenerhebung .wpcf7-checkbox input[type=checkbox]:checked+span:after {
    /*    background: #222; */
    visibility: visible;
}

.datenerhebung .wpfc7-list-item {
    margin: 0px;
}

.formblock .wpcf7-submit {
    width: 100%;
}

.formblock select:focus {
    border-color: gray;
    outline: none;
}

.w-1,
.w-2,
.w-3,
.w-4,
.w-5,
.w-6,
.w-7,
.w-8,
.w-9,
.w-10,
.w-11,
.w-12 {
    float: left;
    padding: 1rem;
}

.w-1 {
    width: 8.333333333333333%;
}

.w-2 {
    width: 16.66666666666667%;
}

.w-3 {
    width: 25%;
}

.w-4 {
    width: 33.33333333333333%;
}

.w-5 {
    width: 41.66666666666667%;
}

.w-6 {
    width: 50%;
}

.w-7 {
    width: 58.33333333333333%;
}

.w-8 {
    width: 66.66666666666666%;
}

.w-9 {
    width: 75%;
}

.w-10 {
    width: 83.33333333333333%;
}

.w-11 {
    width: 91.66666666666667%;
}

.w-12 {
    width: 100%;
}

.grid-display-block {
    transition: background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;
    margin-top: 60px;
    margin-bottom: 0px;
    padding: 0px 0px 47px 0px;
}

.grid-display-block>.elementor-container .elementor-widget-wrap {}

.grid-display-block .elementor-row {
    display: grid;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    grid-template-columns: repeat(2, 1fr);
    display: grid;
    grid-column-gap: 20px;
    grid-row-gap: 53px;
}

.grid-display-block .elementor-row>.widget_block_display {
    display: block;
    height: 130%;
    overflow: hidden;
    width: 100%;
}

.grid-display-block .widget_block_display {
    /*height: 130%;*/
}

.grid-display-block .widget_block_display:first-child {
    /*margin-right:20px;*/
}

.grid-display-block .elementor-row>.widget_block_display:last-child .elementor-post__text {
    position: absolute;
    bottom: -100px;
    left: 50%;
    transform: translate(-50%, 0px);
    margin: 0px;
    height: 108px;
    max-height: 120px;
}

.grid-display-block .elementor-row>.widget_block_display:last-child .elementor-post__text h2 {
    margin-top: .5rem;
    margin-bottom: -10px;
}

@media (max-width: 767px) {
    .grid-display-block .elementor-row {
        grid-template-columns: repeat(1, 1fr);
        display: grid;
    }
    .grid-display-block .elementor-row>.widget_block_display:last-child {
        margin-bottom: 100px;
    }
}

@media (max-width: 800px) {
    /* Breite beträgt höchstens 1024px */
    .w-1,
    .w-2,
    .w-3,
    .w-4,
    .w-5,
    .w-6,
    .w-7,
    .w-8,
    .w-9,
    .w-10,
    .w-11,
    .w-12 {
        width: 100%;
    }
}

div.wpcf7-response-output,
div.wpcf7-validation-errors,
div.wpcf7-acceptance-missing {
    border: 0px;
}

span.wpcf7-not-valid-tip {
    font-size: 14px;
}

.plzsearch .found_petz_marked {
    display: none;
}

.plzsearch .petzmap {
    width: 100%;
}

.mymarket_show {
    display: none;
}

.mymarket_notshow {
    display: none;
}

.ismymarketpage .mymarket_show {
    display: inherit;
}

.ismymarketpage .mymarket_hide {
    display: none !important;
}

.isnotmymarketpage .showme {
    /*display:none !important;*/
}

.isnotmymarketpage .notmymarket_hide {
    display: none !important;
}




/* PETZ search popup
   Matches the REWE red palette, system font stack from Elementor kit. */
.petz-search-popup {
    position: fixed;
    inset: 0;
    z-index: 100000; /* above WP admin bar (99999) and most plugins */
    display: none;
    align-items: flex-start;
    justify-content: center;
    padding: 8vh 20px 20px;
    opacity: 0;
    transition: opacity 0.25s ease;
}

.petz-search-popup.is-open {
    display: flex;
    opacity: 1;
}

.petz-search-popup__backdrop {
    position: absolute;
    inset: 0;
    background: rgba(20, 20, 20, 0.72);
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
    cursor: pointer;
}

.petz-search-popup__panel {
    position: relative;
    width: 100%;
    max-width: 720px;
    background: #fff;
    border-radius: 10px;
    box-shadow: 0 30px 80px rgba(0, 0, 0, 0.35);
    padding: 56px 40px 40px;
    transform: translateY(-20px);
    transition: transform 0.25s ease;
}

.petz-search-popup.is-open .petz-search-popup__panel {
    transform: translateY(0);
}

.petz-search-popup__close {
    position: absolute;
    top: 14px;
    right: 14px;
    width: 40px;
    height: 40px;
    border: 0;
    background: transparent;
    color: #555;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    transition: background 0.15s ease, color 0.15s ease;
}

.petz-search-popup__close:hover,
.petz-search-popup__close:focus-visible {
    background: #cc071e;
    color: #fff;
    outline: none;
}

.petz-search-popup__form {
    margin-top: 70px;
}

.petz-search-popup__field {
    display: flex;
    align-items: center;
    gap: 10px;
    border-bottom: 2px solid #cc071e;
    padding: 8px 0;
}

.petz-search-popup__icon {
    color: #cc071e;
    flex-shrink: 0;
}

.petz-search-popup__field input[type="search"] {
    flex: 1;
    border: 0;
    background: transparent;
    font-size: 22px;
    line-height: 1.4;
    padding: 10px 4px;
    outline: none;
    color: #222;
    font-family: inherit;
    -webkit-appearance: none;
    appearance: none;
}

.petz-search-popup__field input[type="search"]::-webkit-search-cancel-button {
    -webkit-appearance: none;
    appearance: none;
}

.petz-search-popup__field input[type="search"]::placeholder {
    color: #999;
}

.petz-search-popup__submit {
    border: 0;
    background: #cc071e;
    color: #fff;
    font-family: inherit;
    font-size: 15px;
    font-weight: 600;
    letter-spacing: 0.5px;
    text-transform: uppercase;
    padding: 12px 26px;
    border-radius: 4px;
    cursor: pointer;
    transition: background 0.15s ease, transform 0.05s ease;
    flex-shrink: 0;
}

.petz-search-popup__submit:hover,
.petz-search-popup__submit:focus-visible {
    background: #a30518;
    outline: none;
}

.petz-search-popup__submit:active {
    transform: translateY(1px);
}


/* Lock body scroll while open */
body.petz-search-open {
    overflow: hidden;
}

/* Mobile */
@media (max-width: 600px) {
    .petz-search-popup {
        padding: 4vh 12px 12px;
    }
    .petz-search-popup__panel {
        padding: 56px 20px 24px;
        border-radius: 8px;
    }
    .petz-search-popup__field {
        flex-wrap: wrap;
    }
    .petz-search-popup__field input[type="search"] {
        font-size: 18px;
        width: 100%;
        min-width: 0;
    }
    .petz-search-popup__submit {
        width: 100%;
        padding: 14px;
    }
}