[data-hdv2-vps-server] {
    --hdv2-vps-dot: hsl(221 83% 53% / 0.14);
    --hdv2-vps-glow: hsl(252 83% 55% / 0.08);
}

[data-hdv2-vps-server] .hdv2-vds-hero {
    position: relative;
    overflow: hidden;
    border-bottom: 1px solid var(--hdv2-home-border);
    background-color: var(--hdv2-home-bg);
    background-image:
        radial-gradient(circle at 1px 1px, var(--hdv2-vps-dot) 1px, transparent 0),
        radial-gradient(circle at 1px 1px, var(--hdv2-vps-dot) 1px, transparent 0);
    background-size: 22px 22px, 22px 22px;
    background-position: 0 0, 11px 11px;
}

[data-hdv2-vps-server] .hdv2-vds-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 0;
    pointer-events: none;
    background:
        radial-gradient(90% 80% at 0% 100%, var(--hdv2-vps-glow) 0%, transparent 50%),
        linear-gradient(180deg, hsl(0 0% 100% / 0) 45%, var(--hdv2-home-bg) 100%);
}

@media (min-width: 961px) {
    [data-hdv2-vps-server] .hdv2-vds-hero__grid {
        position: relative;
        z-index: 1;
        display: grid;
        grid-template-columns: minmax(0, 1.15fr) minmax(0, 32rem);
        gap: 2rem;
        align-items: center;
    }
}

[data-hdv2-vps-server] .hdv2-vds-hero > .hdv2-home__container {
    width: 100%;
    max-width: 1240px;
    margin-left: auto;
    margin-right: auto;
    padding-left: 20px;
    padding-right: 20px;
    box-sizing: border-box;
}

[data-hdv2-vps-server] .hdv2-vds-hero__content,
[data-hdv2-vps-server] .hdv2-vds-hero__media {
    min-width: 0;
}

[data-hdv2-vps-server] .hdv2-vds-hero__title {
    max-width: 34rem;
    font-size: clamp(1.85rem, 3.2vw, 2.45rem);
}

[data-hdv2-vps-server] .hdv2-vds-hero__media {
    max-width: 32rem;
    margin-left: auto;
}

[data-hdv2-vps-server] .hdv2-vds-hero__media img {
    display: block;
    width: 100%;
    max-width: 32rem;
    margin-left: auto;
    height: auto;
    object-fit: contain;
}

:root[data-hdv2-theme="dark"] [data-hdv2-vps-server] {
    --hdv2-vps-dot: hsl(213 94% 68% / 0.16);
    --hdv2-vps-glow: hsl(252 83% 55% / 0.1);
}

:root[data-hdv2-theme="dark"] [data-hdv2-vps-server] .hdv2-vds-hero {
    background-image:
        radial-gradient(circle at 1px 1px, var(--hdv2-vps-dot) 1px, transparent 0),
        radial-gradient(circle at 1px 1px, var(--hdv2-vps-dot) 1px, transparent 0);
}

:root[data-hdv2-theme="dark"] [data-hdv2-vps-server] .hdv2-vds-hero::before {
    background:
        radial-gradient(90% 80% at 0% 100%, var(--hdv2-vps-glow) 0%, transparent 50%),
        linear-gradient(180deg, hsl(0 0% 0% / 0) 45%, var(--hdv2-home-bg) 100%);
}

[data-hdv2-vps-server] .hdv2-vds-info__block {
    grid-template-columns: minmax(0, 1.1fr) minmax(0, 0.8fr);
    gap: 2.5rem 3rem;
}

[data-hdv2-vps-server] .hdv2-vds-info__block--reverse {
    grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.1fr);
}

[data-hdv2-vps-server] .hdv2-vds-info__media {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    margin: 0;
}

[data-hdv2-vps-server] .hdv2-vds-info__block--reverse .hdv2-vds-info__media {
    justify-content: flex-start;
}

[data-hdv2-vps-server] .hdv2-vds-info__media img {
    width: 100%;
    max-width: 22rem;
    margin: 0;
    height: auto;
}

[data-hdv2-vps-server] .hdv2-vds-info__content {
    max-width: 40rem;
}

@media (max-width: 900px) {

    [data-hdv2-vps-server] .hdv2-vds-info__block,
    [data-hdv2-vps-server] .hdv2-vds-info__block--reverse {
        grid-template-columns: minmax(0, 1fr);
    }

    [data-hdv2-vps-server] .hdv2-vds-info__block--reverse .hdv2-vds-info__content {
        order: -1;
    }

    [data-hdv2-vps-server] .hdv2-vds-info__block--reverse .hdv2-vds-info__media {
        order: 0;
    }

    [data-hdv2-vps-server] .hdv2-vds-info__media,
    [data-hdv2-vps-server] .hdv2-vds-info__block--reverse .hdv2-vds-info__media {
        justify-content: center;
    }

    [data-hdv2-vps-server] .hdv2-vds-info__media img {
        max-width: 18rem;
        margin: 0 auto;
    }

    [data-hdv2-vps-server] .hdv2-vds-info__content {
        max-width: none;
    }
}

@media (max-width: 960px) {
    [data-hdv2-vps-server] .hdv2-vds-hero__grid {
        grid-template-columns: minmax(0, 1fr);
        gap: 1.25rem;
    }

    [data-hdv2-vps-server] .hdv2-vds-hero__content {
        display: contents;
    }

    [data-hdv2-vps-server] .hdv2-vds-hero__content > .hdv2-landing-hero__breadcrumb {
        order: 0;
    }

    [data-hdv2-vps-server] .hdv2-vds-hero__title {
        order: 1;
        max-width: none;
    }

    [data-hdv2-vps-server] .hdv2-vds-hero__lead {
        order: 2;
        max-width: none;
        margin-bottom: 0;
    }

    [data-hdv2-vps-server] .hdv2-vds-hero__media {
        order: 3;
        display: block;
        justify-self: center;
        width: min(100%, 24rem);
        max-width: 24rem;
        margin-left: auto;
        margin-right: auto;
    }

    [data-hdv2-vps-server] .hdv2-vds-hero__media img {
        display: block;
        width: 100%;
        max-width: 24rem;
        height: auto;
        margin-left: auto;
        margin-right: auto;
        object-fit: contain;
        object-position: center;
    }

    [data-hdv2-vps-server] .hdv2-vds-hero__actions {
        order: 4;
        flex-wrap: wrap;
    }
}

@media (max-width: 640px) {
    [data-hdv2-vps-server] .hdv2-vds-hero__media,
    [data-hdv2-vps-server] .hdv2-vds-hero__media img {
        width: min(100%, 20rem);
        max-width: 20rem;
    }

    [data-hdv2-vps-server] .hdv2-vds-hero__actions {
        flex-direction: column;
        align-items: stretch;
    }

    [data-hdv2-vps-server] .hdv2-vds-hero__actions .hdv2-vds-hero__btn {
        width: 100%;
    }
}
