.wp-site-blocks{ /* Required for specificity reasons */
    #container{
        max-width: unset;
    }

    .property-search-form{
        align-items: center;
        background-color: var(--wp--preset--color--secondary);
        border-radius: 28px;
        box-sizing: border-box;
        display: flex;
        flex-wrap: wrap;
        gap: 10px 15px;
        padding: 10px;

        &::after{
            content: unset;
        }

        .control{
            flex: 1;
            flex-direction: column;
            padding: 0;

            &:not([style="display: none;"]) {
                display: flex !important;
            }
        }
    }

    .property-hive-sorting-results{
        align-items: center;
        display: flex;
        flex-wrap: wrap;
        gap: 10px 15px;
        justify-content: space-between;
        margin-top: 24px;
        padding: 0 24px;

        .propertyhive-result-count{
            margin: 0;
        }
    }

    ul.properties{
        --grid-column-gap: 0px;
        --grid-column-count: 3;
        --grid-item--min-width: 200px;

        --gap-count: calc(var(--grid-column-count) - 1);
        --total-gap-width: calc(var(--gap-count) * var(--grid-column-gap));
        --grid-item--max-width: calc((100% - var(--total-gap-width)) / var(--grid-column-count));

        display: grid;
        grid-template-columns: repeat(auto-fill, minmax(max(var(--grid-item--min-width), var(--grid-item--max-width)), 1fr));
        grid-column-gap: var(--grid-column-gap);
        margin: 30px 0 0 0 !important;

        li.property{
            border: unset;
            border-radius: 20px 20px 0 0;
            box-sizing: border-box;
            isolation: isolate;
            overflow: hidden;
            padding: 17px;
            position: relative;

            &:has(a:hover){ /* Allow hover state to kick in regardless of which <a> is hovered */
                .thumbnail img{
                    scale: 1.05;
                }

                /*.details h3 a{*/
                /*    color: var(--wp--preset--color--primary) !important;*/
                /*}*/

                /*&::before{*/
                /*    opacity: 1;*/
                /*}*/

                .details{
                    h3 a,
                    .location,
                    .property-type,
                    .price {
                        color: var(--wp--preset--color--secondary) !important;
                    }
                }
            }

            .thumbnail,
            .details{
                float: none;
                width: 100%;
            }

            .thumbnail{
                border-radius: 20px;
                overflow: hidden;

                img{
                    aspect-ratio: 16 / 9;
                    border-radius: 20px;
                    height: unset !important;
                    object-fit: cover;
                    scale: 1;
                    transition-property: scale;
                    transition-duration: 0.2s;
                    transition-timing-function: ease-in-out;
                }

                .flag{
                    border-radius: 0 100px 100px 0;
                    font-weight: 600;
                    padding-right: 20px;
                    top: 15px !important;

                    &.flag-sold-stc,
                    &.flag-let-agreed,
                    &.flag-under-offer {
                        background-color: var(--wp--preset--color--quaternary) !important;
                        color: var(--wp--preset--color--white) !important;
                    }

                    &.flag-sold,
                    &.flag-let {
                        background-color: var(--wp--preset--color--tertiary) !important;
                        color: var(--wp--preset--color--white) !important;
                    }
                }
            }

            .details{
                display: flex;
                flex-direction: column;
                gap: 10px;
                margin-top: 15px;

                > * {
                    margin: 0;
                }

                h3 a,
                .location,
                .property-type,
                .price {
                    transition-property: color;
                    transition-duration: 0.2s;
                    transition-timing-function: ease-in-out;
                }

                h3{ /* Card title */
                    a{
                        color: var(--wp--preset--color--secondary);
                        font-size: var(--wp--preset--font-size--h-4);
                        transition-property: color;
                        transition-duration: 0.2s;
                        transition-timing-function: ease-in-out;
                    }
                }

                .location{
                    font-size: var(--wp--preset--font-size--h-5);
                    font-weight: 400;
                    margin-top: 10px;
                    padding-left: 24px;
                    position: relative;
                    text-transform: uppercase;

                    &::before{
                        background-image: url("../../../images/location.svg");
                        background-repeat: no-repeat;
                        background-size: contain;
                        content: '';
                        height: 18px;
                        pointer-events: none;
                        position: absolute;
                        left: 0;
                        top: 50%;
                        translate: 0 -50% 0;
                        width: 18px;
                        z-index: 1;
                    }
                }

                .property-type{
                    font-weight: 600;
                    order: -1;
                    text-transform: uppercase;
                }

                .price{
                    font-size: var(--wp--preset--font-size--h-4);
                }
            }
        }
    }

    /* Department Toggle */
    .property-search-form {
        background-color: var(--wp--preset--color--secondary);

        .control.control-department:has(input[type="radio"]) {
            background-color: var(--wp--preset--color--white);
            border-radius: 100px;
            display: inline-flex !important;
            flex: unset;
            flex-direction: row;
            gap: 5px;
            isolation: isolate;
            justify-content: space-between;
            padding: 5px;
            position: relative;

            --highlight-width: 10px; /* Default width */
            --highlight-left: 0px; /* Default position */

            &::before {
                background-color: var(--wp--preset--color--primary);
                border-radius: 100px;
                content: '';
                height: calc(100% - 10px);
                position: absolute;
                width: var(--highlight-width);
                left: var(--highlight-left);
                transition: width 0.3s ease, left 0.3s ease;
                z-index: -1;
            }

            label {
                color: var(--wp--preset--color--secondary);
                cursor: pointer;
                font-size: 14px;
                padding: 5px;

                input {
                    left: 99999px;
                    opacity: 0;
                    position: absolute;
                    visibility: hidden;
                }
            }
        }
    }

}

.is-content-justification-space-between{
    justify-content: space-between;
}

.propertyhive-pagination {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 30px;

    span{
        background-color: var(--wp--preset--color--secondary);
        line-height: 1;
        padding: 0 5px 4px 5px;
        display: flex;
        align-items: center;
        justify-content: center;
        border-radius: 10px;
        color: var(--wp--preset--color--white);
    }
    a{
        background-color: transparent;
        line-height: 1;
        padding: 0 5px 4px 5px;
        display: flex;
        align-items: center;
        justify-content: center;
        border-radius: 10px;
        color: var(--wp--preset--color--secondary);
    }
}

/* Enquiry Form */
.fancybox-content{
    background-color: var();
    border-radius: 15px;

    a{
        color: var(--wp--preset--color--secondary);
        font-weight: 800;
    }
}

.property-enquiry-form{
    display: flex;
    flex-direction: column;

    input[type="submit"]{
        background-color: var(--wp--preset--color--primary);
        border: unset;
        border-radius: 100px;
        color: var(--wp--preset--color--secondary);
        cursor: pointer;
        font-size: var(--wp--preset--font-size--button);
        font-style: normal;
        font-weight: 600;
        letter-spacing: 0px;
        line-height: 1.5;
        margin-top: 20px;
        padding-top: 8px;
        padding-right: 20px;
        padding-bottom: 8px;
        padding-left: 20px;
        width: fit-content;
    }
}

.ms-options-wrap > .ms-options{
    z-index: 99999999 !important;
}