.md-typeset {
    color: var(--md-typeset-color)
}

.md-typeset h2 {
    font-weight: 700;
    margin-top: .175em
}

.md-typeset h2+h3 {
    font-size: 1em;
    margin-top: -.8em
}

.md-typeset :target {
    --md-scroll-margin: 5.2rem
}

.md-main__inner {
    margin: 0
}

.md-main__inner>.md-content,.md-main__inner>.md-sidebar--secondary {
    display: none
}

.md-content__inner {
    margin-bottom: 0;
    padding: 5.2rem 0
}

.md-content__inner:before {
    display: none
}

.md-content header {
    display: block;
    transition: opacity .75s
}

.js .md-content header[hidden] {
    opacity: 0
}

.md-typeset .md-button {
    background-color: #dd2e57;
    border-width: 0;
    color: var(--md-primary-bg-color);
    margin-right: .5rem;
    margin-top: .5rem
}

.md-typeset .md-button--secondary {
    background-color: initial
}

.md-header:not(.md-header--shadow) {
    background-color: initial;
    transition: background-color 125ms,transform 125ms cubic-bezier(.1,.7,.1,1),box-shadow 0ms
}

.md-header--shadow {
    transition: background-color .25s,transform .25s cubic-bezier(.1,.7,.1,1),box-shadow .25s
}

:root {
    --md-parallax-perspective: 2.5rem
}

.mdx-parallax {
    height: 100vh;
    margin-top: -2.4rem;
    overflow: hidden auto;
    overscroll-behavior-y: none;
    perspective: var(--md-parallax-perspective);
    scroll-behavior: smooth;
    width: 100vw
}

.mdx-parallax__group {
    background-color: var(--md-default-bg-color);
    color: var(--md-typeset-color);
    display: block;
    position: relative;
    transform-style: preserve-3d
}

.mdx-parallax__group:first-child {
    background-color: initial;
    contain: strict;
    height: 140vh
}

.safari .mdx-parallax__group:first-child {
    contain: none
}

@media (min-width: 125vh) {
    .mdx-parallax__group:first-child {
        height:120vw
    }
}

@media (min-width: 137.5vh) {
    .mdx-parallax__group:first-child {
        height:125vw
    }
}

@media (min-width: 150vh) {
    .mdx-parallax__group:first-child {
        height:130vw
    }
}

@media (min-width: 162.5vh) {
    .mdx-parallax__group:first-child {
        height:135vw
    }
}

@media (min-width: 175vh) {
    .mdx-parallax__group:first-child {
        height:140vw
    }
}

@media (min-width: 187.5vh) {
    .mdx-parallax__group:first-child {
        height:145vw
    }
}

@media (min-width: 200vh) {
    .mdx-parallax__group:first-child {
        height:150vw
    }
}

.mdx-parallax__group:last-child {
    background-color: var(--md-default-bg-color)
}

.mdx-parallax__layer {
    height: max(120vh,100vw);
    pointer-events: none;
    position: absolute;
    top: 0;
    transform: translateZ(calc(var(--md-parallax-perspective)*var(--md-parallax-depth)*-1)) scale(calc(var(--md-parallax-depth) + 1));
    transform-origin: 50vw 50vh;
    width: 100vw;
    z-index: calc(10 - var(--md-parallax-depth, 0))
}

.mdx-parallax__image {
    display: block;
    height: 100%;
    object-fit: cover;
    object-position: var(--md-image-position,50%);
    position: absolute;
    width: 100%;
    z-index: -1
}

.mdx-parallax__blend {
    background-image: linear-gradient(to bottom,#0000,var(--md-default-bg-color));
    bottom: 0;
    height: min(100vh,100vw);
    top: auto
}

.mdx-content__column:last-child {
    margin-top: 2.4rem
}

.mdx-content__column p:last-child {
    margin-bottom: 0
}

@media screen and (min-width: 60em) {
    .mdx-content__inner {
        display:flex;
        flex-wrap: nowrap;
        gap: 6.4rem
    }

    .mdx-content__column {
        margin-top: 0
    }

    .mdx-content__column:first-child {
        flex: 2 0
    }

    .mdx-content__column:last-child {
        flex: 1 0;
        margin-top: 0
    }
}

.mdx-connect {
    display: block;
    transition: transform .75s cubic-bezier(.075,.85,.175,1) 125ms,opacity .75s 125ms
}

.js .mdx-connect[hidden] {
    opacity: 0;
    transform: translateY(1.6rem)
}

.mdx-connect .mdx-connect__link {
    color: var(--md-default-fg-color);
    display: block
}

.mdx-connect .mdx-connect__link span {
    margin-right: .2rem
}

.mdx-expect {
    margin: 2.4rem 0
}

.mdx-expect__list {
    display: flex;
    flex-flow: row wrap;
    gap: 1.6rem;
    padding: 0
}

.mdx-expect__item {
    display: flex;
    flex: 1 0 48%;
    gap: .6rem;
    margin: 0;
    transition: transform .75s cubic-bezier(.075,.85,.175,1),opacity .75s
}

.mdx-expect__item:first-child {
    transition-delay: .2s
}

.mdx-expect__item:nth-child(2) {
    transition-delay: 275ms
}

.mdx-expect__item:nth-child(3) {
    transition-delay: .35s
}

.mdx-expect__item:nth-child(4) {
    transition-delay: 425ms
}

.mdx-expect__item:nth-child(5) {
    transition-delay: .5s
}

.mdx-expect__item:nth-child(6) {
    transition-delay: 575ms
}

.js .mdx-expect__item[hidden] {
    opacity: 0;
    transform: translate(-.8rem,.4rem)
}

.js .mdx-expect__item[hidden]:nth-child(2n) {
    transform: translate(.8rem,.4rem)
}

.mdx-expect__icon {
    fill: currentcolor;
    background-color: var(--md-default-fg-color--lightest);
    border-radius: 100%;
    flex-shrink: 0;
    height: 2.2rem;
    padding: .4rem;
    width: 2.2rem
}

.mdx-expect__description>:last-child {
    margin-bottom: 0
}

@media screen and (max-width: 76.234375em) {
    .mdx-expect__description>:last-child {
        margin-left:-2.8rem
    }
}

.mdx-hero {
    display: block;
    height: inherit
}

.js .mdx-hero[hidden]>* {
    opacity: 0;
    transform: translateY(16px);
    transition: transform 0ms .1s,opacity .1s
}

.mdx-hero__scrollwrap {
    height: 100vh;
    margin-bottom: -100vh;
    position: sticky;
    top: 0;
    z-index: 9
}

.mdx-hero__inner {
    bottom: 3.2rem;
    display: block;
    position: absolute;
    transition: transform .4s cubic-bezier(.1,.7,.1,1),opacity .25s;
    width: 100%
}

@media screen and (max-width: 44.984375em) {
    .mdx-hero__inner {
        bottom:6.4rem
    }
}

.mdx-hero__teaser {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    color: var(--md-primary-bg-color);
    margin: 0 .8rem;
    max-width: 24rem
}

.mdx-hero__teaser h1 {
    color: inherit;
    font-weight: 700;
    margin-bottom: 0
}

.mdx-hero__teaser :not(.md-button) {
    text-shadow: 0 0 .2rem #211d2dcc
}

.mdx-hero .mdx-hero__attribution {
    background-color: var(--md-default-bg-color--light);
    border-radius: .1rem;
    bottom: -2.4rem;
    color: var(--md-default-fg-color);
    font-size: .5rem;
    padding: .1rem .4rem;
    position: absolute;
    right: .8rem;
    transition: color 125ms,background-color 125ms
}

.mdx-hero .mdx-hero__attribution:focus,.mdx-hero .mdx-hero__attribution:hover {
    background-color: var(--md-accent-fg-color);
    color: var(--md-accent-bg-color)
}

.mdx-hero__more {
    bottom: -2.4rem;
    display: block;
    left: 50%;
    margin-left: -.6rem;
    pointer-events: none;
    position: absolute;
    text-align: center
}

.mdx-hero__more svg {
    fill: #fff;
    height: 1.2rem;
    width: 1.2rem
}

.mdx-spotlight {
    margin: 2em 0
}

.mdx-spotlight__feature {
    display: flex;
    flex: 1 0 48%;
    flex-flow: row nowrap;
    gap: 3.2rem;
    margin: 0 0 3.2rem
}

@media screen and (max-width: 59.984375em) {
    .mdx-spotlight__feature {
        flex-direction:column;
        gap: 0
    }
}

@media screen and (min-width: 60em) {
    .mdx-spotlight__feature:nth-child(odd) {
        flex-direction:row-reverse
    }
}

.mdx-spotlight__feature:last-child {
    margin-bottom: 1em
}

.mdx-spotlight__feature>a {
    display: block;
    flex-shrink: 0;
    transition: transform .5s cubic-bezier(.075,.85,.175,1)
}

@media screen and (max-width: 59.984375em) {
    .mdx-spotlight__feature>a {
        margin-left:auto;
        margin-right: auto
    }
}

.mdx-spotlight__feature>a:hover {
    transform: scale(1.025)
}

.mdx-spotlight__feature a>img {
    border-radius: .2rem;
    box-shadow: var(--md-shadow-z2);
    display: block;
    height: auto;
    max-width: 100%;
    width: 25rem
}

.mdx-spotlight__feature a>img,.mdx-spotlight__feature figcaption {
    transition: transform .75s cubic-bezier(.075,.85,.175,1) 125ms,opacity .75s 125ms
}

.mdx-spotlight__feature figcaption {
    margin-top: .8rem
}

.js .mdx-spotlight__feature[hidden]>a>img {
    opacity: 0;
    transform: translateY(1.6rem)
}

.js .mdx-spotlight__feature[hidden]>figcaption {
    opacity: 0;
    transform: translateX(1.6rem)
}

.js .mdx-spotlight__feature[hidden]:nth-child(2n)>figcaption {
    transform: translateX(-1.6rem)
}

.mdx-trust {
    display: block;
    max-width: 40rem;
    transition: transform .75s cubic-bezier(.075,.85,.175,1) 125ms,opacity .75s 125ms
}

.js .mdx-trust[hidden] {
    opacity: 0;
    transform: translateY(1.6rem)
}

.mdx-users {
    display: flex;
    gap: 3.2rem;
    margin: 2.4rem 0
}

@media screen and (max-width: 59.984375em) {
    .mdx-users {
        flex-direction:column
    }
}

.mdx-users__testimonial {
    display: flex;
    flex: 1;
    flex-direction: column;
    gap: 1.2rem;
    margin: 0;
    text-align: center
}

.mdx-users__testimonial:first-child {
    transition-delay: .2s
}

.mdx-users__testimonial:nth-child(2) {
    transition-delay: 275ms
}

.mdx-users__testimonial:nth-child(3) {
    transition-delay: .35s
}

.mdx-users__testimonial img {
    border-radius: 5rem;
    height: auto;
    margin-left: auto;
    margin-right: auto;
    width: 10rem
}

.mdx-users__testimonial figcaption,.mdx-users__testimonial img {
    transition: transform .75s cubic-bezier(.075,.85,.175,1),opacity .75s;
    transition-delay: inherit
}

.mdx-users__testimonial figcaption {
    display: block
}

.mdx-users__testimonial hr {
    margin-left: auto;
    margin-right: auto;
    width: 5rem
}

.mdx-users__testimonial cite {
    display: block;
    -webkit-hyphens: auto;
    hyphens: auto;
    text-align: justify
}

.js .mdx-users__testimonial[hidden] img {
    opacity: 0;
    transform: scale(.75)
}

.js .mdx-users__testimonial[hidden] figcaption {
    opacity: 0;
    transform: translateY(1.6rem)
}

@media screen and (min-width: 60em) {
    .md-sidebar--secondary {
        display:none
    }
}

@media screen and (min-width: 76.25em) {
    .md-sidebar--primary {
        display:none
    }
}

[data-md-color-primary] .md-tabs {
    background-color: initial;
    position: absolute;
    top: 2.4rem
}
