.property-location .headline {
    text-align: center;
}

.property-location {
    overflow: visible;
}

.property-location > .flexbox {
    transform-origin: center bottom;
    transition: transform 1s ease;
}

.property-location.small > .flexbox {
    transform: scale(0.75);
}

section.property-location {
    padding: var(--font-headline) var(--padding);
}

section.property-location hgroup {
    position: relative;
    display: flex;
    flex-direction: column;
    width: fit-content;
    margin: 0 auto;
    margin-bottom: var(--smallTopPadding, 5vh);
}

section.property-location hgroup span {
    text-align: center;
    padding: 1rem 2rem;
    border-bottom-right-radius: var(--border-radius);
    background-color: var(--bg);
    width: fit-content;
    max-width: calc(var(--padding) * 2);
    transform: translateX(-50%) rotate(-5deg);
    position: relative;
    z-index: -1;
}

section.property-location hgroup span:after {
    content: '';
    background-color: var(--bg);
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    z-index: -1;
    border-bottom-right-radius: var(--border-radius);
}

section.property-location hgroup:before {
    content: '';
    background-color: var(--primary);
    width: 125%;
    position: absolute;
    left: 1px;
    top: 1px;
    z-index: -1;
    opacity: 0;
    transition: all 1s ease;
    border-radius: var(--border-radius);

    left: var(--left, 1px);
    top: var(--top, 1px);

    width: var(--width, 1px);
    height: var(--height, 1px);

    max-width: 50vw;
}

section.property-location hgroup.move:before {
    opacity: 1;
    aspect-ratio: 1;
    height: var(--width, 100%);
    min-height: 5em;
    min-width: 5em;
    transform: translateX(-6rem) rotate(-5deg);
    border-radius: 0px;
    transition: all 1s ease,
                opacity .1s ease;
}


.property-location .image-wrapper img {
    max-height: 70vh;
    object-fit: contain;
}

.property-location .text-content {
    max-width: 31rem;
}

@media (max-width: 1240px) {
    section.property-location hgroup {
        width: 100%;
    }
    section.property-location hgroup span {
        max-width: none;
        transform: translateX(calc(0px - var(--padding))) rotate(-5deg);
        transform: rotate(-5deg);
        position: relative;
        z-index: -1;
        width: fit-content;
        display: block;
        margin-left: -2px;
        margin-top: -2px;
    }

    section.property-location hgroup.move:before {
        transform: rotate(-5deg);
    }
}