.page-main .hero {
    background-color: #f1f3f7;
    opacity: 1 !important;
    -webkit-transform: translateY(0) !important;
    -ms-transform: translateY(0) !important;
    transform: translateY(0) !important;
    padding-bottom: 0;
    padding-top: 30px;
}

@media (min-width: 768px) {
    .page-main .hero .hero__inner {
        min-height: 640px;
    }
}

.page-main .hero__svg {
    position: absolute;
    width: 65%;
    top: 0;
    right: 1vw;
    z-index: -1;
}

.page-main .hero__svg.wow-ready path {
    animation: none !important;
    fill-opacity: 0;
    opacity: 0;
    stroke-dasharray: var(--hero-path-length, 3000);
    stroke-dashoffset: var(--hero-path-length, 3000);
}

.page-main .hero__svg.wow-ready.wow-visible path {
    animation: hero-svg-transformation 2.7s cubic-bezier(.22, .72, .2, 1) both !important;
    animation-delay: var(--hero-path-delay, 0ms) !important;
}

.page-main .hero__svg.wow-ready.wow-complete path {
    animation: none !important;
    filter: none;
    fill-opacity: 1;
    opacity: 1;
    stroke-dashoffset: 0;
}

.page-main .hero__svg.wow-ready.wow-complete path.hero-line-glint {
    animation: hero-line-glint var(--glint-duration, 7s) var(--glint-delay, 0s) ease-in-out infinite !important;
}

@keyframes hero-svg-transformation {
    0% {
        fill-opacity: 0;
        opacity: 0;
        stroke-dashoffset: var(--hero-path-length, 3000);
    }
    9% {
        opacity: .9;
    }
    45% {
        fill-opacity: 0;
        opacity: 1;
    }
    68% {
        fill-opacity: .08;
        stroke-dashoffset: 0;
    }
    87% {
        fill-opacity: .72;
    }
    100% {
        fill-opacity: 1;
        opacity: 1;
        stroke-dashoffset: 0;
    }
}

@keyframes hero-line-glint {
    0%, 30%, 70%, 100% {
        filter: none;
        opacity: 1;
        stroke: #476da9;
        stroke-width: 2.4px;
    }
    45% {
        filter: drop-shadow(0 0 2px rgba(132, 173, 224, .28));
        opacity: 1;
        stroke: #a8c1e1;
        stroke-width: 3.7px;
    }
    55% {
        filter: drop-shadow(0 0 1px rgba(132, 173, 224, .14));
        opacity: 1;
        stroke: #7197ca;
        stroke-width: 2.9px;
    }
}

@media (max-width: 767px) {
    .page-main .hero {
        padding-top: 0;
    }

    .page-main .hero .hero__inner {
        min-height: 0;
        padding-top: 0;
    }

    .page-main .hero__svg {
        height: auto;
        left: 50%;
        max-width: 520px;
        right: auto;
        top: 12px;
        transform: translateX(-50%);
        width: 92%;
    }

    .page-main .hero__row {
        padding-top: clamp(190px, 50vw, 230px);
    }

    .page-main .hero__svg.wow-ready.wow-visible path {
        animation-duration: 2.35s !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    .page-main .hero__svg.wow-ready path,
    .page-main .hero__svg.wow-ready.wow-visible path {
        animation: none !important;
        filter: none;
        fill-opacity: 1;
        opacity: 1;
        stroke-dashoffset: 0;
    }

    .page-main .hero__svg.wow-ready.wow-complete path.hero-line-glint {
        animation: none !important;
    }
}
