.ds-ph {
    --background_color: var(--Neutral-800);
    --text_color: var(--Neutral-White);
    --link_color: var(--text_color);

    --border_radius: 0.75rem;

    padding-block: calc(var(--ds-header-height) + 2rem) 3.125rem;

    background-color: var(--background_color);
    color: var(--text_color);
}

.c-ds.ds-ph {
    color: var(--text_color);
}

.c-ds .btn {
	padding: 0.75rem 2rem;
}

.c-ds.ds-ph a:not(.ds-btn):not(.btn) {
    text-decoration: underline;
    color: var(--link_color);
}

.ds-ph__body {
    display: flex;
    flex-direction: column;

    gap: 1.5rem;
}

.ds-page-hero {
	position: relative;
	z-index: 1;
}

.ds-ph__bg {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	z-index: -1;
	overflow: hidden;
}

.ds-ph__bg img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

.ds-ph__bg video {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

.ds-ph__bg-desktop {
	display: none;
}

.ds-ph-start {
	display: flex;
	flex-direction: column;
}

.ds-ph-start.center {
	align-items: center;
	text-align: center;
}

.ds-ph-start.end {
	align-items: flex-end;
	text-align: right;
}

.ds-ph-tag {
	width: max-content;
	max-width: 100%;
	display: flex;
	align-items: center;
	gap: .5rem;
	padding: .5rem .75rem;
	border-radius: .75rem;
	font-weight: 400;
	letter-spacing: 0.08rem;
	line-height: 1.37500;
	font-size: 1rem;
	color: var(--tag_text_color, #FF6F00);
	margin-bottom: 1.5rem;
	position: relative;
	z-index: 1;
}

* > .ds-ph-tag > .ds-ph-tag-text {
	font-family: 'IBM Plex Mono', sans-serif !important;
	letter-spacing: 0.08rem;
}

.ds-ph-tag::after {
	position: absolute;
	z-index: -1;
	left: 0;
	top: 0;
	content: '';
	width: 100%;
	height: 100%;
	border-radius: .75rem;
	border: 1px solid var(--tag_border_color, #FF6F00);
}

.ds-ph-tag::before {
	position: absolute;
	z-index: -2;
	left: 0;
	top: 0;
	content: '';
	width: 100%;
	height: 100%;
	background: var(--tag_background_color, #FF6F00);
	border-radius: .75rem;
	opacity: var(--tag_bg_opacity, 0.12);
}

.ds-ph-tag-arrow {
	font-size: 0;
	line-height: 0;
}

.ds-ph-tag-arrow svg {
	width: 1.12500rem;
	height: auto;
}

.ds-ph-title {
    font-weight: 300;
    font-size: 2rem;
    line-height: 140%;
    letter-spacing: -0.04rem;

		color: var(--title_color);

    margin-block: 0;
}

.ds-ph-descr {
    font-size: 1.125rem;
    line-height: 1.333;
    letter-spacing: 0.02rem;
		font-weight: 300;

    margin-block-start: 1rem;
}

.ds-ph-media-image {
    width: 100%;
    max-width: none;
    height: auto;
    vertical-align: top;

    border-radius: var(--border_radius);
}

.ds-ph-logos {
    margin: 0;
    padding: 0;
    list-style-type: none;

    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;

    gap: 1.5rem 2.125rem;
}

.ds-ph-logo {
    display: inline-block;
    vertical-align: top;

    height: 1.375rem;
}

.ds-ph-logo-img {
    width: auto;
    max-width: none;
    height: 100%;

    vertical-align: top;
}

.ds-logos {
	background-color: var(--background_color, #fff);
}

.ds-ctab-btns,
.c-ds .c-button-collection {
    margin-block-start: 1.5rem;
}

.ds-ctab-btns .btn,
.c-ds .c-button-collection .btn {
	text-decoration: none;
}


@media (min-width:768px) {
    .ds-ph-logos {
        justify-content: center;
    }

    .ds-ph-logo {
        height: 1.75rem;
    }
}

@media (min-width:992px) {
	.c-ds .btn {
		padding: 0.75rem 2rem;
	}

	.ds-ph-tag {
		font-size: 1rem;
		line-height: 1.375;
	}

	.ds-ph__bg-desktop {
		display: block;
	}

	.ds-ph__bg-mobile {
		display: none;
	}
    .ds-ph {
        --border_radius: 1.25rem;

        padding-block: calc(var(--ds-header-height) + 5rem) 5rem;
    }

    .ds-ph__body {
        flex-direction: row;
        align-items: center;
        justify-content: space-between;
        gap: 0;
    }

		.c-ds .ds-ph__body .c-button {
			font-size: 1rem !important;
			line-height: 1.5rem !important;
		}

    .ds-ph-start,
    .ds-ph-end {
        flex: 0 0 50%;
    }

    .ds-ph-start {
        max-width: 38.25rem;
        padding-inline-end: 2rem;
    }

		.ds-ph__body--without-media .ds-ph-start {
			max-width: 100%;
			padding-inline-end: 0;
			flex: 1;
		}

    .ds-ph-end {
        max-width: 43.75rem;
    }

    .ds-ph-title {
        font-size: 2.625rem;
        line-height: 137%;
        letter-spacing: -0.06rem;
    }

    .ds-ph-descr {
        font-size: 1.375rem;
        line-height: 1.272;

        margin-block-start: 0.875rem;
    }

    .ds-ph-logos {
        justify-content: space-between;
    }

    .ds-ph-logo {
        height: 2.25rem;
    }

		.ds-ctab-btns,
		.c-ds .c-button-collection {
        margin-block-start: 1.625rem;
    }
}

@media (min-width:1400px) {
    .ds-ph-title {
        font-size: 3.25rem;
    }

    .ds-ph-logo {
        height: 3rem;
    }
}
