/* anim-svg block styles */
.anim-svg__svg svg {
    display: block;
    width: 100%;
    height: auto;
}

/* ensure path strokes are visible and start hidden (stroke-dashoffset is controlled by JS) */
.anim-svg__svg svg path {
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
}

/* optional helper class when playing */
.anim-svg--playing .anim-svg__svg {
    opacity: 1;
    transition: opacity 300ms ease;
}
.anim-svg--wrap{
    display: flex;
    /* mobile defaults use CSS variables set inline on the wrapper */
    margin-top: var(--as-mt-mobile, 0);
    margin-bottom: var(--as-mb-mobile, 0);
    position: relative;
}
@media (min-width: 768px) {
    .anim-svg--wrap {
        margin-top: var(--as-mt-desktop, 0);
        margin-bottom: var(--as-mb-desktop, 0);
    }
}
.anim-svg__img{
    position: absolute;
    top: 0;
    left: 50%;
    transform: translate(-50%, -25vh);
    width: 360px;
    height: auto;
    z-index: 1;
}
@media (max-width:768px){
    .anim-svg__img{
        width: 240px;
        transform: translate(-50%, -5vh);
        display: none;
    }
}
.anim-svg__inner{
    display: flex;
    width: 100%;
    position: relative;
    justify-content: space-between;
}
@media(max-width:576px){
    .anim-svg__inner{
        flex-direction: column;
        align-items: center;
        gap: 2rem;
    }
}
.anim-svg__col{
    width: 50%;
    display: flex;
    justify-content: center;
}
@media(max-width:576px){
    .anim-svg__col{
        width: 100%;
    }
}
.anim-svg__content{
    display: flex;
    width: 250px;
    overflow: hidden;
}
.anim-svg__col.anim-svg__col--right .anim-svg__content {
    align-items: flex-end;
}
.anim-svg__col.anim-svg__col--right .anim-svg__content p{
    height: fit-content;
}