.layout-shape {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%) scale(1);
    height: 80%;
    width: -webkit-max-content;
    width: max-content;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    opacity: 0;
    animation-name: shape-animation;
    animation-duration: 0.6s;
    animation-delay: 0.3s;
    animation-fill-mode: forwards;
    -webkit-animation-name: shape-animation;
    -webkit-animation-duration: 0.6s;
    -webkit-animation-delay: 0.3s;
    -webkit-animation-fill-mode: forwards
}

@media (min-width: 769px) {
    .layout-shape.shape-left {
        left: 25%
    }

    .layout-shape.shape-right {
        left: 75%
    }
}

.layout-shape .shape-content {
    margin: auto;
    text-align: center;
    gap: 30px
}

@media (max-width: 991.96px) {
    .layout-shape .shape-content {
        gap: 10px
    }
}

.layout-shape .shape-content h1,
.layout-shape .shape-content span,
.layout-shape .shape-content p,
.layout-shape .shape-content a {
    opacity: 0
}

.layout-shape .shape-content .headline {
    opacity: 0;
    animation: fade-in 0.4s linear 0.6s forwards
}

.layout-shape .shape-content h1 {
    animation: fade-in 0.3s linear 0.6s forwards
}

.layout-shape .shape-content h1:not(:first-child) {
    margin-top: -30px
}

@media (max-width: 991.96px) {
    .layout-shape .shape-content h1:not(:first-child) {
        margin-top: -10px
    }
}

.layout-shape .shape-content p {
    animation: fade-in 0.4s linear 0.8s forwards;
    font-size: 17px;
}

.layout-shape .shape-content a {
    animation: fade-in 0.4s linear 1s forwards
}

.layout-shape.shape-ovals {
    width: 529px
}

.layout-shape.shape-ovals .shape-content {
    width: 326px
}

@media (max-width: 991.96px) {
    .layout-shape.shape-ovals .shape-content {
        width: 291px
    }

    .layout-shape.shape-ovals .shape-content p {
        width: 216px
    }

    .layout-shape.shape-ovals .shape-content a {
        margin-top: 10px
    }
}

.layout-shape.shape-spark-1 {
    width: 622.524px
}

.layout-shape.shape-spark-1 .shape-content {
    width: 442px
}

.layout-shape.shape-spark-1 .shape-content .layout-shape__text {
    font-size: 15.75px;
    max-width: 90%
}

@media (max-width: 991.96px) {
    .layout-shape.shape-spark-1 .shape-content {
        width: 220px
    }
}

.layout-shape.shape-spark-2 {
    width: 671px
}

.layout-shape.shape-spark-2 .shape-content {
    width: 442px
}

@media (max-width: 991.96px) {
    .layout-shape.shape-spark-2 .shape-content {
        width: 220px
    }
}

.layout-shape.shape-flower-2 {
    width: 633px
}

.layout-shape.shape-flower-2 .shape-content {
    width: 442px
}

@media (max-width: 991.96px) {
    .layout-shape.shape-flower-2 .shape-content {
        width: 220px
    }

    .layout-shape.shape-flower-2 .shape-content p {
        margin: auto
    }
}

.layout-shape.shape-flower-1 {
    width: 633px
}

.layout-shape.shape-flower-1 .shape-content {
    width: 442px
}

@media (max-width: 991.96px) {
    .layout-shape.shape-flower-1 .shape-content {
        width: 220px
    }

    .layout-shape.shape-flower-1 .shape-content p {
        margin: auto
    }
}

.layout-shape.shape-clover-1 {
    width: 633px
}

.layout-shape.shape-clover-1 .shape-content {
    width: 442px
}

@media (max-width: 991.96px) {
    .layout-shape.shape-clover-1 .shape-content {
        width: 220px
    }

    .layout-shape.shape-clover-1 .shape-content p {
        margin: auto
    }
}

.layout-shape.shape-clover-2 {
    width: 633px
}

.layout-shape.shape-clover-2 .shape-content {
    width: 442px
}

@media (max-width: 991.96px) {
    .layout-shape.shape-clover-2 .shape-content {
        width: 220px
    }

    .layout-shape.shape-clover-2 .shape-content p {
        margin: auto
    }
}

.layout-shape.shape-star {
    width: 633px
}

.layout-shape.shape-star .shape-content {
    width: 442px
}

@media (max-width: 991.96px) {
    .layout-shape.shape-star .shape-content {
        width: 220px
    }

    .layout-shape.shape-star .shape-content p {
        margin: auto
    }
}

.layout-shape.shape-heart-1 {
    width: 633px
}

.layout-shape.shape-heart-1 .shape-content {
    width: 442px
}

@media (max-width: 991.96px) {
    .layout-shape.shape-heart-1 .shape-content {
        width: 220px
    }

    .layout-shape.shape-heart-1 .shape-content p {
        margin: auto
    }
}

.layout-shape.shape-heart-2 {
    width: 633px
}

.layout-shape.shape-heart-2 .shape-content {
    width: 442px
}

@media (max-width: 991.96px) {
    .layout-shape.shape-heart-2 .shape-content {
        width: 220px
    }

    .layout-shape.shape-heart-2 .shape-content p {
        margin: auto
    }
}

.layout-shape h1 {
    font-size: 55px;
    line-height: 53px;
    margin-bottom: 0
}

.layout-shape p {
    margin-bottom: 0
}

@media (max-width: 991.96px) {
    .layout-shape {
        height: 420px
    }

    .layout-shape.shape-ovals,
    .layout-shape.shape-spark-1,
    .layout-shape.shape-spark-2,
    .layout-shape.shape-flower-2,
    .layout-shape.shape-flower-1 {
        width: calc(100% - 40px)
    }

    .layout-shape h1 {
        font-size: 2em;
        line-height: 38px;
        margin-bottom: 0
    }

    .layout-shape p {
        margin-bottom: 0;
        line-height: 18px
    }
}

@media (max-width: 768.98px) {

    .layout-shape.shape-ovals,
    .layout-shape.shape-spark-1,
    .layout-shape.shape-spark-2,
    .layout-shape.shape-flower-2 {
        height: 420px
    }
}

.highContrast .layout-shape.shape-maroon .header p,
.highContrast .layout-shape.shape-maroon .subheader,
.highContrast .layout-shape.shape-maroon .text p,
.highContrast .layout-shape.shape-maroon .headline p,
.highContrast .layout-shape.shape-maroon .layout-shape__text,
.highContrast .layout-shape.shape-navy .header p,
.highContrast .layout-shape.shape-navy .subheader,
.highContrast .layout-shape.shape-navy .text p,
.highContrast .layout-shape.shape-navy .headline p,
.highContrast .layout-shape.shape-navy .layout-shape__text {
    color: #fff
}

.layout-shape.shape-black .header p,
.layout-shape.shape-black .subheader,
.layout-shape.shape-black .text p,
.layout-shape.shape-black .headline p,
.layout-shape.shape-black .layout-shape__text {
    color: #fff
}

.layout-shape.shape-black .btn {
    background-color: #fff;
    color: #000
}

.layout-shape.shape-black .btn:hover {
    background-color: #fff;
    color: #000
}

@keyframes fade-in {
    0% {
        transform: translateY(20px)
    }

    100% {
        opacity: 1;
        transform: translateY(0)
    }
}

@keyframes shape-animation {
    from {
        opacity: 0;
        transform: translate(-50%, -50%) scale(0.9)
    }

    to {
        opacity: 1;
        transform: translate(-50%, -50%) scale(1)
    }
}