.svgContainer {
    position: relative;
    width: 100%;
    height: 100%;
    overflow: hidden;
}

.svgContainer img,
.svgContainer svg {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
}

.svgContainer img {
    object-fit: cover;
    z-index: 1;
    object-position: bottom center;
}

.svgContainer svg {
    z-index: 2;
    pointer-events: all;
}

.svgContainer svg path,
.svgContainer svg polygon {
    fill: var(--site-summary-fill);
    fill-opacity: var(--site-summary-fill-opacity);
    stroke: var(--site-summary-stroke);
    stroke-width: var(--site-summary-stroke-width);
    pointer-events: all;
    transition:
        fill-opacity 0.3s ease,
        fill 0.3s ease,
        stroke 0.3s ease;
}

.svgContainer.animated-stroke svg path,
.svgContainer.animated-stroke svg polygon {
    stroke-dasharray: 4 6;
    stroke-linecap: round;
    animation: dashMove 1s linear infinite;
}

body.hasHover .svgContainer svg path:hover,
body.hasHover .svgContainer svg polygon:hover {
    fill: var(--site-summary-fill-hover);
    stroke: var(--site-summary-stroke-hover);
    fill-opacity: var(--site-summary-fill-opacity-hover);
}
@keyframes dashMove {
    from {
        stroke-dashoffset: 0;
    }
    to {
        stroke-dashoffset: -10;
    }
}
