/*!******************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[2].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[2].use[2]!./src/homes-grid/style.css ***!
  \******************************************************************************************************************************************************************************/
.wp-block-p7-homes-grid{
    width: 100%;
    max-width: 100% !important;
}
.p7-homes-grid-block {
    width: 100%;
    max-width: 100%;
    margin: 0 auto;
}
.p7-homes-grid-container{
    position: relative;
}
.p7-homes-filters {
    display: flex;
    flex-wrap: wrap;
    gap: 25px;
    margin-bottom: 30px;
    align-items: flex-end;
    justify-content: space-between;
}
.p7-reset-filters {
    padding: 0px;
    background-color: transparent;
    border: none;
    border-radius: 0px;
    cursor: pointer;
    font-size: 20px;
    color: #236d9f;
    text-transform: uppercase;
}
#type-home-filter {
    width: 100%;
    min-width: 100%;
}
#type-home-filter label{
    display: flex;
    justify-content: flex-start;
    align-items: center;
    grid-gap: 7px;
}
.p7-filter-group fieldset {
    padding: 0px;
    border: none;
    margin: 0px 0px;
    display: flex;
    flex-wrap: wrap;
    grid-gap: 25px;
}
@media screen and (max-width: 767px) {
    .p7-filter-group fieldset{
        flex-direction: column;
        grid-gap: 10px;
    }
}
.p7-filter-group fieldset input[type="radio"]{
    width: 20px;
    height: 20px;
    margin: 0px;
}
.p7-filter-group {
    /* min-width: 100%; */
    grid-column: span 1;
}

.p7-filter-group label {
    display: block;
    margin-bottom: 5px;
    text-transform: uppercase;
    font-size: 16px;
    line-height: 1;
    color: #000;
    margin-bottom: 10px;
    letter-spacing: 1px;
}

.p7-filter-group select,.p7-filter-group input[type="text"] {
    border: 1px solid #323232;
    font-size: 13px;
    background-color: #FFF;
    padding: 13px 10px;
    width: 100%;
    font-weight: 300;
    box-sizing: border-box;
    height: 45px;
}
.p7-homes-grid{
    width: 100%;
    max-width: 100% !important;
    display: grid;
    gap: 30px;
    grid-template-columns: repeat(var(--p7-grid-columns), 1fr);
}
@media screen and (max-width: 1024px) and (min-width:767px) {
    .p7-homes-grid{
        grid-template-columns: repeat(2, 1fr);
    }
}
@media screen and (max-width: 767px) {
    .p7-homes-grid{
        grid-template-columns: 1fr;
    }
}
.p7-homes-grid .p7-home-card .p7-home-details {
    padding: 30px 30px 50px 30px;
    background-color: var(--p7-background-home-color);
    position: relative;
    flex-grow: 1;
}
.p7-homes-grid .p7-home-card .p7-home-details p{
    color: var(--p7-text-home-color);
}
.p7-homes-grid .p7-home-card .p7-home-photo{
    padding-bottom: 71%;
    background-size: cover;
    background-position: 50% 50%;
    width: 100%;
    position: relative;
}
.p7-homes-grid .p7-home-photo .p7-photo-link,.p7-homes-grid .p7-home-details .p7-home-link {
    position: absolute;
    width: 100%;
    height: 100%;
    cursor: pointer;
    background: transparent;
    left: 0;
    top: 0;
}
.p7-homes-grid h3.p7-home-title{
    color: var(--p7-highlight-home-color);
    font-size: 30px;
    line-height: 35px;
    letter-spacing: 1px;
    text-decoration: underline;
    text-transform: capitalize;
}
.p7-homes-grid .p7-home-meta{
    margin: 0px;
    line-height: 30px;
}
.p7-homes-grid .p7-home-meta strong{
    font-weight: bold;
    color: var(--p7-highlight-home-color);
}
.p7-homes-grid .p7-home-divider{
    width: 100%;
    height: 1px;
    background-color: var(--p7-divider-home-color);
    margin-top: 20px;
    margin-bottom: 20px; 
}
.p7-homes-grid .p7-home-price{
    text-align: right;
    background-color: var(--p7-price-highlight-home-color);
    padding: 10px 30px 10px 30px;
    font-size: 18px;
}
.p7-homes-grid .p7-home-price p{
    color: var(--p7-price-text-home-color);
}
.p7-homes-grid .p7-home-price .price{
    font-size: 30px;
    line-height: 35px;
    letter-spacing: 1px;
    margin-left: 10px;
}
.p7-homes-grid{
    width: 100%;
    max-width: 100% !important;
}

.p7-loading{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    /* background-color: rgba(255, 255, 255, 0.8); */
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 100;
    font-size: 1.5em;
    color: #333;
    /* backdrop-filter: blur(3px); */
}

.p7-loading::before {
    content: "";
    width: 40px;
    height: 40px;
    border: 4px solid #ccc;
    border-top-color: var(--p7-highlight-home-color, #236d9f);
    border-radius: 50%;
    animation: spin 0.8s linear infinite;
}

@keyframes spin {
    to {
        transform: rotate(360deg);
    }
}

.p7-home-count{
    color: #236d9f;
}

.p7-homes-pagination {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 20px;
    margin-top: 50px;
}

button.p7-load-more {
    font-size: 20px;
    padding: 15px 60px;
    border-radius: 0px;
    text-transform: uppercase;
    background-color: transparent;
    color: #236d9f;
    border: 2px solid #236d9f;
    letter-spacing: 1.5px;
    cursor: pointer;
}
button.p7-load-more:hover{
    background-color: #236d9f;
    color: #ffffff;
}
.p7-home-community, .p7-home-location{
    margin: 0px;
}
.p7-row {
    width: 100%;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    align-items: flex-end;
    gap: 40px;
}
@media screen and (max-width: 1024px) and (min-width:767px) {
    .p7-row {
        grid-template-columns: repeat(2, 1fr);
        grid-gap: 20px;
    } 
}
@media screen and (max-width: 767px) {
    .p7-row {
        grid-template-columns: repeat(1, 1fr);
         grid-gap: 20px;
    }
}
.p7-filter-rest {
    width: 100%;
    display: flex;
    justify-content: flex-end;
    align-items: flex-end;
    margin-top: 20px;
    grid-column: span 2;
}
@media screen and (max-width: 1024px) {
    .p7-filter-rest {
        grid-column: unset;
    }
}
.p7-homes-grid:has(.p7-no-results) {
    grid-template-columns: 1fr;
}
.p7-no-results {
    padding: 30px;
    text-align: center;
    border: 1px solid #ddd;
    min-height: 300px;
    display: flex;
    justify-content: center;
    flex-direction: column;
    align-items: center;
}
.p7-no-results svg{
    width: 80px;
    height: 80px;
    fill: #ddd;
}

.p7-filter-group:has(.p7-disable-filter){
    cursor: not-allowed;
}
.p7-disable-filter {
    pointer-events: none;
    background-repeat: no-repeat;
    background-size: 14px;
    background-position: 95% center;
}
.p7-home-card{
    position: relative;
    display: flex;
    flex-direction: column;
}
.p7-home-card .p7-summer-flag {
    position: absolute;
    z-index: 4;
    max-width: 100px;
    max-height: 100px;
    left: 20px;
    top: 0px;
}

/*# sourceMappingURL=style-index.css.map*/