/* Product landing surface. Scoped to the homepage shortcode so theme chrome remains untouched. */
.ams-home {
    --ams-home-ink: #171923;
    --ams-home-subtle: #606978;
    --ams-home-faint: #89919e;
    --ams-home-surface: #ffffff;
    --ams-home-soft: #f5f7fb;
    --ams-home-line: #e5e9f0;
    --ams-home-blue: #4f5df2;
    --ams-home-violet: #7a50ee;
    --ams-home-mint: #63dfc3;
    --ams-home-dark: #121525;
    --ams-home-dark-muted: #b5bdcc;
    background: #ffffff;
    color: var(--ams-home-ink);
    margin-inline: calc(50% - 50vw);
    overflow: clip;
    width: 100vw;
}

.ams-home .ams-button {
    background: var(--ams-home-blue);
    border-color: var(--ams-home-blue);
    border-radius: 999px;
    box-shadow: 0 12px 28px rgba(79, 93, 242, .23);
    font-weight: 700;
    min-height: 48px;
    transition: background-color .2s ease, border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

.ams-home .ams-button:hover {
    background: #3d4aea;
    border-color: #3d4aea;
    box-shadow: 0 16px 32px rgba(61, 74, 234, .29);
    filter: none;
    transform: translateY(-2px);
}

.ams-home .ams-button:active {
    transform: translateY(0) scale(.985);
}

.ams-home .ams-button--large {
    min-height: 54px;
    padding-inline: 25px;
}

.ams-home .ams-button .dashicons {
    font-size: 18px;
    height: 18px;
    line-height: 18px;
    width: 18px;
}

.ams-home .ams-button--glass {
    background: rgba(255, 255, 255, .11);
    border-color: rgba(255, 255, 255, .34);
    box-shadow: none;
    color: #fff !important;
}

.ams-home .ams-button--glass:hover {
    background: rgba(255, 255, 255, .18);
    border-color: rgba(255, 255, 255, .58);
    box-shadow: none;
}

.ams-home a:focus-visible {
    outline: 3px solid #ffffff;
    outline-offset: 4px;
}

.ams-home .ams-eyebrow {
    color: var(--ams-home-blue);
    font-size: 11px;
    letter-spacing: .16em;
}

.ams-hero,
.ams-hero[style] {
    align-items: center;
    background: radial-gradient(circle at 78% 9%, rgba(112, 102, 255, .32), transparent 22%), radial-gradient(circle at 20% 100%, rgba(49, 204, 182, .15), transparent 31%), linear-gradient(135deg, #171a31 0%, #1b2040 49%, #252060 100%);
    display: block;
    min-height: min(770px, calc(100dvh - 64px));
    padding: clamp(76px, 9vw, 126px) max(24px, calc((100vw - 1216px) / 2)) clamp(70px, 8vw, 108px);
    position: relative;
    text-align: left;
}

.ams-hero::before {
    background-image: linear-gradient(rgba(255, 255, 255, .045) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, .045) 1px, transparent 1px);
    background-size: 48px 48px;
    content: "";
    inset: 0;
    mask-image: linear-gradient(to bottom, rgba(0, 0, 0, .75), transparent 84%);
    pointer-events: none;
    position: absolute;
}

.ams-hero::after {
    background: linear-gradient(180deg, transparent 61%, rgba(12, 14, 28, .45));
    content: "";
    inset: 0;
    pointer-events: none;
    position: absolute;
}

.ams-hero__ambient {
    background: var(--ams-hero-image) center / cover no-repeat;
    inset: 0;
    mix-blend-mode: luminosity;
    opacity: .105;
    pointer-events: none;
    position: absolute;
}

.ams-hero__frame {
    align-items: center;
    display: grid;
    gap: clamp(36px, 6vw, 92px);
    grid-template-columns: minmax(0, .94fr) minmax(360px, .78fr);
    margin: 0 auto;
    max-width: 1216px;
    position: relative;
    z-index: 1;
}

.ams-hero__content {
    max-width: 680px;
}

.ams-hero__kicker {
    align-items: center;
    color: #d8dcff;
    display: flex;
    font-size: 13px;
    font-weight: 700;
    gap: 10px;
    letter-spacing: .08em;
    margin: 0 0 21px;
}

.ams-hero__kicker-dot {
    background: var(--ams-home-mint);
    border-radius: 50%;
    box-shadow: 0 0 0 5px rgba(99, 223, 195, .13);
    height: 8px;
    width: 8px;
}

.ams-hero h1 {
    color: #ffffff;
    font-size: clamp(46px, 5.4vw, 76px);
    font-weight: 800;
    letter-spacing: -.065em;
    line-height: 1.07;
    margin: 0;
    text-shadow: none;
}

.ams-hero h1 em {
    background: linear-gradient(100deg, #ffffff 8%, #aaaafc 54%, #72e5cc 100%);
    background-clip: text;
    color: transparent;
    font-style: normal;
    -webkit-background-clip: text;
}

.ams-hero__summary {
    color: var(--ams-home-dark-muted);
    font-size: 17px;
    line-height: 1.8;
    margin: 27px 0 0;
    max-width: 570px;
}

.ams-hero__actions {
    justify-content: flex-start;
    margin-top: 35px;
}

.ams-hero__proof {
    display: grid;
    gap: 0;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    list-style: none;
    margin: 58px 0 0;
    max-width: 592px;
    padding: 0;
}

.ams-hero__proof li {
    border-left: 1px solid rgba(255, 255, 255, .19);
    display: grid;
    gap: 5px;
    min-width: 0;
    padding: 0 17px;
}

.ams-hero__proof li:first-child {
    border-left: 0;
    padding-left: 0;
}

.ams-hero__proof strong {
    color: #ffffff;
    font-size: 16px;
    font-weight: 700;
}

.ams-hero__proof span {
    color: #aeb6c7;
    font-size: 12px;
    line-height: 1.5;
}

.ams-hero__visual {
    height: clamp(390px, 39vw, 502px);
    margin: 0;
    min-width: 0;
    perspective: none;
    position: relative;
}

.ams-hero__visual-orbit {
    border: 1px solid rgba(175, 179, 255, .16);
    border-radius: 50%;
    height: 136%;
    left: 50%;
    position: absolute;
    top: 50%;
    transform: translate(-48%, -48%) rotate(-22deg);
    width: 93%;
}

.ams-hero__visual-orbit::after {
    background: rgba(120, 80, 238, .7);
    border-radius: 50%;
    box-shadow: 0 0 0 8px rgba(120, 80, 238, .11);
    content: "";
    height: 9px;
    position: absolute;
    right: 8%;
    top: 15%;
    width: 9px;
}

.ams-hero__preview {
    background: rgba(255, 255, 255, .97);
    border: 1px solid rgba(255, 255, 255, .82);
    border-radius: 22px;
    box-shadow: 0 30px 70px rgba(5, 7, 24, .32), 0 2px 0 rgba(255, 255, 255, .55) inset;
    display: grid;
    gap: 16px;
    left: 6%;
    overflow: hidden;
    padding: 20px;
    position: absolute;
    top: 7%;
    transform: rotate(3deg);
    width: min(100%, 410px);
}

.ams-hero__preview::before {
    background: linear-gradient(90deg, rgba(79, 93, 242, .18), transparent);
    content: "";
    height: 3px;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
}

.ams-hero__preview-header,
.ams-hero__preview-footer,
.ams-hero__preview-footer span,
.ams-hero__preview-status,
.ams-workflow__card-top {
    align-items: center;
    display: flex;
}

.ams-hero__preview-header {
    justify-content: space-between;
    gap: 16px;
}

.ams-hero__preview-header > div {
    display: grid;
    gap: 4px;
}

.ams-hero__preview-overline {
    color: #9298a5;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .08em;
}

.ams-hero__preview-header strong {
    color: #22283a;
    font-size: 16px;
}

.ams-hero__preview-status {
    background: #e7fbf5;
    border-radius: 999px;
    color: #24866f;
    flex: 0 0 auto;
    font-size: 11px;
    font-weight: 700;
    gap: 6px;
    padding: 6px 9px;
}

.ams-hero__preview-status span {
    background: #39c4a3;
    border-radius: 50%;
    height: 6px;
    width: 6px;
}

.ams-hero__preview-art {
    align-items: flex-end;
    aspect-ratio: 1.68 / 1;
    background: linear-gradient(180deg, transparent 35%, rgba(10, 15, 36, .76)), var(--ams-preview-image) center / cover;
    border-radius: 14px;
    display: flex;
    overflow: hidden;
    padding: 16px;
    position: relative;
}

.ams-hero__preview-art::after {
    background: linear-gradient(125deg, rgba(135, 98, 255, .16), transparent 38%);
    content: "";
    inset: 0;
    position: absolute;
}

.ams-hero__preview-caption {
    display: grid;
    gap: 5px;
    position: relative;
    z-index: 1;
}

.ams-hero__preview-caption span {
    color: rgba(255, 255, 255, .76);
    font-size: 11px;
}

.ams-hero__preview-caption strong {
    color: #ffffff;
    font-size: 17px;
}

.ams-hero__preview-timeline {
    display: grid;
    gap: 7px;
    grid-template-columns: 1.1fr .8fr .55fr 1.15fr;
}

.ams-hero__preview-timeline span {
    background: #e9ecf3;
    border-radius: 99px;
    height: 4px;
}

.ams-hero__preview-timeline .is-complete {
    background: #65d8bf;
}

.ams-hero__preview-timeline .is-active {
    background: #6572ef;
}

.ams-hero__preview-footer {
    color: #717987;
    flex-wrap: wrap;
    font-size: 11px;
    gap: 10px 16px;
}

.ams-hero__preview-footer span {
    gap: 5px;
}

.ams-hero__preview-footer .dashicons {
    color: #6d78e9;
    font-size: 14px;
    height: 14px;
    line-height: 14px;
    width: 14px;
}

.ams-home__trust {
    background: #ffffff;
    border-bottom: 1px solid var(--ams-home-line);
    border-top: 1px solid var(--ams-home-line);
}

.ams-home__trust-inner {
    align-items: center;
    color: #525b6c;
    display: flex;
    font-size: 13px;
    font-weight: 650;
    gap: clamp(15px, 3vw, 41px);
    justify-content: center;
    margin: auto;
    max-width: 1216px;
    min-height: 76px;
    padding: 16px 24px;
}

.ams-home__trust i {
    background: #cfd5e1;
    border-radius: 50%;
    height: 4px;
    width: 4px;
}

.ams-section {
    max-width: 1216px;
    padding: clamp(82px, 9vw, 132px) 24px;
}

.ams-section__heading {
    margin-bottom: clamp(38px, 5vw, 63px);
    max-width: 780px;
}

.ams-section__heading h2,
.ams-home__cta h2,
.ams-showcase__heading h2 {
    color: var(--ams-home-ink);
    font-size: clamp(34px, 4.3vw, 56px);
    font-weight: 750;
    letter-spacing: -.055em;
    line-height: 1.13;
    margin: 15px 0 0;
}

.ams-section__heading > p {
    color: var(--ams-home-subtle);
    font-size: 16px;
    line-height: 1.75;
    margin: 18px auto 0;
}

.ams-compare {
    padding-bottom: clamp(78px, 9vw, 126px);
}

.ams-compare__grid {
    gap: 14px;
    grid-template-columns: minmax(0, 1fr) 82px minmax(0, 1fr);
    max-width: 1040px;
}

.ams-compare__card {
    background: #ffffff;
    border: 1px solid var(--ams-home-line);
    border-radius: 18px;
    box-shadow: 0 15px 42px rgba(35, 45, 66, .045);
    min-height: 290px;
    padding: clamp(25px, 3vw, 36px);
}

.ams-compare__card--muted {
    background: #f8f9fc;
}

.ams-compare__card--accent {
    background: linear-gradient(145deg, #f3f3ff, #ffffff 72%);
    border-color: #d9dbff;
    box-shadow: 0 18px 45px rgba(79, 93, 242, .11);
}

.ams-compare__label {
    color: #818a9a;
    font-size: 12px;
    font-weight: 750;
    letter-spacing: .08em;
}

.ams-compare__card--accent .ams-compare__label {
    color: #565ee0;
}

.ams-compare__card h3 {
    color: #242b3b;
    font-size: clamp(21px, 2.2vw, 27px);
    letter-spacing: -.035em;
    line-height: 1.35;
    margin: 18px 0 27px;
}

.ams-compare__card ul {
    color: #667080;
    font-size: 14px;
    gap: 13px;
}

.ams-compare__card li::before {
    color: #a3abb8;
    content: "";
    display: inline-block;
    height: 6px;
    margin-right: 10px;
    vertical-align: middle;
    width: 6px;
}

.ams-compare__card--muted li::before {
    background: #adb5c2;
    border-radius: 50%;
}

.ams-compare__card--accent li::before {
    background: #5c68ee;
    border-radius: 2px;
    transform: rotate(45deg);
}

.ams-compare__vs {
    align-items: center;
    color: #9aa2b0;
    display: flex;
    flex-direction: column;
    font-size: 11px;
    gap: 9px;
    letter-spacing: .08em;
}

.ams-compare__vs span {
    background: #dce1ea;
    height: 33px;
    width: 1px;
}

.ams-compare__vs b {
    font-weight: 700;
}

.ams-workflow {
    border-top: 1px solid var(--ams-home-line);
}

.ams-workflow__grid {
    counter-reset: none;
    gap: 14px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.ams-workflow__card {
    --ams-workflow-surface: #f7f8ff;
    --ams-workflow-surface-end: #ffffff;
    background: linear-gradient(145deg, var(--ams-workflow-surface) 0%, var(--ams-workflow-surface-end) 82%) !important;
    border: 1px solid #e1e6f2;
    border-radius: 16px;
    box-shadow: 0 10px 28px rgba(43, 56, 91, .04);
    min-height: 252px;
    padding: 24px;
    position: relative;
    transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

.ams-workflow__card:nth-child(2) {
    --ams-workflow-surface: #faf8ff;
}

.ams-workflow__card:nth-child(3) {
    --ams-workflow-surface: #f5fbff;
}

.ams-workflow__card:nth-child(4) {
    --ams-workflow-surface: #f5fcf9;
}

.ams-workflow__card:hover {
    border-color: #cbd5f4;
    box-shadow: 0 16px 34px rgba(52, 66, 108, .08);
    transform: translateY(-4px);
}

.ams-workflow__card-top {
    justify-content: space-between;
}

.ams-workflow__card-top > span {
    color: #7079e9;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .08em;
}

.ams-workflow__card-top .dashicons {
    align-items: center;
    background: #f0f1ff;
    border-radius: 10px;
    color: #5967ed;
    display: flex;
    font-size: 19px;
    height: 38px;
    justify-content: center;
    width: 38px;
}

.ams-workflow__card h3 {
    color: #20293a;
    font-size: 20px;
    letter-spacing: -.025em;
    margin: 52px 0 12px;
}

.ams-workflow__card p {
    color: #536179;
    font-size: 14px;
    line-height: 1.7;
    margin: 0;
}

.ams-features__grid {
    gap: 14px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.ams-feature {
    background: #ffffff;
    border: 1px solid var(--ams-home-line);
    border-radius: 18px;
    box-shadow: none;
    min-height: 268px;
    padding: 27px;
    position: relative;
}

.ams-feature--wide {
    grid-column: span 2;
}

.ams-feature > .dashicons {
    align-items: center;
    background: #eff0ff;
    border-radius: 11px;
    color: #5665ec;
    display: flex;
    font-size: 22px;
    height: 46px;
    justify-content: center;
    width: 46px;
}

.ams-feature h3 {
    color: #242a38;
    font-size: 20px;
    letter-spacing: -.03em;
    line-height: 1.36;
    margin: 28px 0 10px;
}

.ams-feature p {
    color: var(--ams-home-subtle);
    font-size: 14px;
    line-height: 1.75;
    margin: 0;
}

.ams-feature__eyebrow {
    color: #646ee0 !important;
    font-size: 12px !important;
    font-weight: 750;
    letter-spacing: .08em;
    margin-top: 22px !important;
}

.ams-feature--story,
.ams-feature--film {
    overflow: hidden;
}

.ams-feature--story {
    background: linear-gradient(135deg, #f5f4ff, #ffffff 60%);
}

.ams-feature--film {
    background: linear-gradient(135deg, #f0fffb, #ffffff 61%);
}

.ams-feature--film > .dashicons {
    background: #e4fbf5;
    color: #27a98b;
}

.ams-showcase {
    padding-top: clamp(75px, 8vw, 110px);
}

.ams-showcase__heading {
    align-items: end;
    display: flex;
    gap: 40px;
    justify-content: space-between;
    margin-bottom: clamp(38px, 5vw, 56px);
}

.ams-showcase__heading > div {
    max-width: 630px;
}

.ams-showcase__heading p {
    color: var(--ams-home-subtle);
    font-size: 15px;
    line-height: 1.75;
    margin: 0 0 4px;
    max-width: 310px;
}

.ams-showcase__grid {
    gap: 14px;
    grid-template-columns: 1.12fr .86fr 1.02fr;
}

.ams-showcase__item {
    align-items: flex-end;
    background: #202436;
    border-radius: 18px;
    height: 392px;
    isolation: isolate;
    padding: 24px;
    transform: none;
}

.ams-showcase__item::before {
    background: linear-gradient(180deg, rgba(9, 13, 28, .02) 18%, rgba(8, 12, 25, .84) 100%);
    z-index: 1;
}

.ams-showcase__item img {
    height: 100%;
    object-fit: cover;
    transition: transform .45s ease;
    width: 100%;
}

.ams-showcase__item:hover img {
    transform: scale(1.045);
}

.ams-showcase__item-copy {
    bottom: 24px;
    color: #ffffff;
    left: 24px;
    position: absolute;
    right: 24px;
    z-index: 2;
}

.ams-showcase__item-copy span {
    color: #ffffff;
    display: block;
    font-size: 22px;
    font-weight: 750;
}

.ams-showcase__item-copy p {
    color: rgba(255, 255, 255, .76);
    font-size: 13px;
    line-height: 1.55;
    margin: 7px 0 0;
}

.ams-home__cta {
    background: linear-gradient(126deg, #4c57dd, #6e4ddd 56%, #2a9e9a);
    border: 0;
    isolation: isolate;
    overflow: hidden;
    padding: clamp(84px, 9vw, 128px) 24px;
    position: relative;
}

.ams-home__cta::before,
.ams-home__cta::after,
.ams-home__cta-orbit {
    border: 1px solid rgba(255, 255, 255, .17);
    border-radius: 50%;
    content: "";
    pointer-events: none;
    position: absolute;
}

.ams-home__cta::before {
    height: 560px;
    left: -180px;
    top: -340px;
    width: 560px;
}

.ams-home__cta::after {
    bottom: -360px;
    height: 620px;
    right: -150px;
    width: 620px;
}

.ams-home__cta-orbit {
    border-color: rgba(255, 255, 255, .12);
    height: 390px;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%) rotate(24deg);
    width: 720px;
}

.ams-home__cta-content {
    margin: auto;
    max-width: 780px;
    position: relative;
    text-align: center;
    z-index: 1;
}

.ams-home__cta .ams-eyebrow {
    color: rgba(255, 255, 255, .73);
}

.ams-home__cta h2 {
    color: #ffffff;
}

.ams-home__cta p {
    color: rgba(255, 255, 255, .76);
    font-size: 16px;
    margin: 18px auto 0;
}

.ams-home__cta .ams-button {
    background: #ffffff;
    border-color: #ffffff;
    box-shadow: 0 12px 28px rgba(22, 21, 73, .23);
    color: #4754d9 !important;
    margin-top: 30px;
}

.ams-home__cta .ams-button:hover {
    background: #ffffff;
    border-color: #ffffff;
    box-shadow: 0 17px 32px rgba(22, 21, 73, .31);
}

@media (max-width: 980px) {
    .ams-hero__frame {
        grid-template-columns: minmax(0, 1fr);
    }

    .ams-hero__content {
        max-width: 720px;
    }

    .ams-hero__visual {
        height: 408px;
        margin: 4px auto 0;
        max-width: 510px;
        width: 100%;
    }

    .ams-hero__preview {
        left: 50%;
        transform: translateX(-50%) rotate(2deg);
    }

    .ams-workflow__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .ams-showcase__item {
        height: 336px;
    }
}

@media (max-width: 700px) {
    .ams-home__trust-inner {
        align-items: flex-start;
        flex-direction: column;
        gap: 8px;
        min-height: 0;
        padding-block: 19px;
    }

    .ams-home__trust i {
        display: none;
    }

    .ams-compare__grid {
        gap: 16px;
        grid-template-columns: minmax(0, 1fr);
    }

    .ams-compare__vs {
        flex-direction: row;
        justify-content: center;
    }

    .ams-compare__vs span {
        height: 1px;
        width: 30px;
    }

    .ams-features__grid,
    .ams-showcase__grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .ams-feature--wide,
    .ams-showcase__item:last-child {
        grid-column: auto;
    }

    .ams-showcase__heading {
        align-items: flex-start;
        flex-direction: column;
        gap: 17px;
    }

    .ams-showcase__heading p {
        max-width: 520px;
    }

    .ams-showcase__item {
        height: 330px;
    }
}

@media (max-width: 520px) {
    .ams-hero,
    .ams-hero[style] {
        min-height: auto;
        padding: 76px 20px 60px;
    }

    .ams-hero h1 {
        font-size: clamp(40px, 12vw, 54px);
    }

    .ams-hero__summary {
        font-size: 16px;
        line-height: 1.72;
    }

    .ams-hero__actions {
        align-items: stretch;
        flex-direction: column;
        gap: 12px;
    }

    .ams-hero__actions .ams-button {
        width: 100%;
    }

    .ams-hero__proof {
        gap: 18px;
        grid-template-columns: minmax(0, 1fr);
        margin-top: 38px;
    }

    .ams-hero__proof li {
        border-left: 0;
        border-top: 1px solid rgba(255, 255, 255, .16);
        padding: 13px 0 0;
    }

    .ams-hero__proof li:first-child {
        border-top: 0;
        padding-top: 0;
    }

    .ams-hero__visual {
        height: 320px;
        margin-top: 10px;
    }

    .ams-hero__preview {
        border-radius: 18px;
        gap: 13px;
        padding: 16px;
        top: 4%;
        width: min(100%, 344px);
    }

    .ams-hero__preview-header strong {
        font-size: 14px;
    }

    .ams-hero__preview-footer {
        gap: 7px;
    }

    .ams-section {
        padding-inline: 20px;
    }

    .ams-section__heading h2,
    .ams-home__cta h2,
    .ams-showcase__heading h2 {
        font-size: 35px;
    }

    .ams-workflow__grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .ams-workflow__card {
        min-height: 216px;
    }

    .ams-workflow__card h3 {
        margin-top: 40px;
    }

    .ams-feature {
        min-height: 0;
    }

    .ams-home__cta {
        padding-inline: 20px;
    }

    .ams-home__cta .ams-button {
        max-width: 100%;
        padding-inline: 18px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .ams-home *,
    .ams-home *::before,
    .ams-home *::after {
        scroll-behavior: auto !important;
        transition-duration: .01ms !important;
    }
}
