/* ===== voice-robot-zhkh: helpers on top of voice-robot-restaurants.css ===== */

.zh-page .zh-glow {
	position: relative;
}

.zh-page .zh-glow-a {
	background: radial-gradient(ellipse 42% 60% at 86% 62%, rgba(80, 255, 234, 0.09) 0%, rgba(80, 255, 234, 0) 100%);
}

.zh-page .zh-glow-b {
	background: radial-gradient(ellipse 42% 60% at 80% 42%, rgba(80, 255, 234, 0.09) 0%, rgba(80, 255, 234, 0) 100%);
}

/* ---------- hero ---------- */

.zh-page .rd-hero-card {
	background: linear-gradient(180deg, #303f51 0%, #25303e 100%);
}

.zh-page .rd-hero-card .rd-checks span {
	font-weight: 600;
}

.zh-page .rd-hero-card > div > p.zh-hero-small {
	max-width: none;
	margin: 56px 0 0;
	font-size: 16px;
	line-height: 150%;
}

.zh-intro-fig,
.zh-img-m {
	display: none;
}

@media (min-width: 993px) {
	.zh-page .rd-hero-card {
		min-height: 469px;
		padding-top: 40px;
		padding-bottom: 48px;
	}

	.zh-page .rd-hero-card > div > p {
		margin-bottom: 36px;
	}

	.zh-page .rd-hero-card > div > p.zh-hero-small {
		margin-bottom: 0;
	}

	.zh-page .rd-hero-card .rd-figure {
		top: 36px;
		right: 0;
		bottom: auto;
		width: 56%;
		max-width: 678px;
		height: auto;
		aspect-ratio: 678 / 446;
	}

	.zh-page .rd-hero-card .rd-figure img {
		height: 100%;
	}

	.zh-page .rd-banner {
		display: flex;
		align-items: center;
		min-height: 184px;
		padding-top: 0;
		padding-bottom: 0;
	}

	.zh-page .rd-banner > div {
		max-width: 560px;
	}

	.zh-page .rd-banner .rd-figure {
		aspect-ratio: 521 / 184;
	}

	.zh-page .rd-banner .rd-figure img {
		object-fit: cover;
		object-position: right center;
		-webkit-mask-image: linear-gradient(90deg, transparent 0%, #000 10%);
		mask-image: linear-gradient(90deg, transparent 0%, #000 10%);
	}

	.zh-page .rd-form-grid {
		grid-template-columns: 396px 1fr;
		gap: 32px 92px;
	}
}

@media (min-width: 769px) {
	.zh-page .rd-hero-card > div {
		max-width: none;
	}

	.zh-page .rd-hero-card > div > p,
	.zh-page .rd-hero-card .rd-checks {
		max-width: 780px;
	}

	.zh-page .rd-hero-card .rd-actions {
		flex-wrap: nowrap;
		align-items: center;
	}

	.zh-page .rd-hero-card .rd-actions .btn,
	.zh-page .zh-case .rd-actions .btn {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		box-sizing: border-box;
		padding: 0 16px;
		font-size: 16px;
		line-height: 1;
		text-align: center;
	}

	.zh-page .rd-hero-card .rd-actions .btn span,
	.zh-page .zh-case .rd-actions .btn span {
		width: auto;
		text-align: center;
	}

	.zh-page .rd-hero-card .rd-actions .btn-primary {
		width: 373px;
		flex: 0 0 373px;
	}

	.zh-page .zh-case .rd-actions .btn {
		height: 66px;
		padding: 0 48px;
		border-radius: 33px;
	}

	.zh-page .rd-split .rd-kicker {
		color: #50ffea;
	}
}

/* ---------- case steps ---------- */

.zh-page .rd-steps {
	margin: 50px 0 0;
}

.zh-page .rd-steps .rd-card {
	height: auto;
}

.zh-page .rd-steps .rd-card h3 {
	font-family: Montserrat, sans-serif;
	font-weight: 600;
}

/* ---------- days / metrics containers ---------- */

.zh-page .rd-days,
.zh-page .rd-metrics {
	margin-top: 0;
}

.zh-page .rd-days.zh-nest {
	margin-top: 40px;
}

.zh-page .zh-steps3 .rd-card b {
	font-family: Montserrat, sans-serif;
	font-weight: 600;
	font-size: 18px;
	line-height: 150%;
}

.zh-page .zh-steps3 .rd-card p {
	margin-top: 14px;
}

@media (min-width: 993px) {
	.zh-page .zh-cols3 {
		grid-template-columns: repeat(3, 1fr);
	}

	.zh-page .zh-why {
		grid-template-columns: repeat(2, 1fr);
	}

	.zh-page .zh-why .rd-card {
		border-right: none;
		border-bottom: 1px solid #334258;
	}

	.zh-page .zh-why .rd-card:nth-child(odd) {
		border-right: 1px solid #334258;
	}

	.zh-page .zh-why .rd-card:nth-child(n + 3) {
		border-bottom: none;
	}
}

/* ---------- process grid 2x2 ---------- */

.zh-page .zh-grid2 {
	display: grid;
	grid-template-columns: 1fr 1fr;
}

.zh-page .zh-grid2 .rd-step + .rd-step {
	border-top: none;
}

.zh-page .zh-grid2 .rd-step:nth-child(odd) {
	border-right: 1px solid #334258;
}

.zh-page .zh-grid2 .rd-step:nth-child(-n + 2) {
	border-bottom: 1px solid #334258;
}

/* ---------- "for whom" / data cards ---------- */

.zh-page .zh-cards {
	display: grid;
	gap: 40px;
}

.zh-page .zh-cards2 {
	grid-template-columns: repeat(2, 1fr);
}

.zh-page .zh-cards3 {
	grid-template-columns: repeat(3, 1fr);
}

.zh-page .zh-cards .rd-panel b,
.zh-page .zh-nest .rd-card b {
	display: block;
	font-family: Unbounded, sans-serif;
	font-weight: 400;
	font-size: 20px;
	line-height: 145%;
	text-transform: uppercase;
	color: #50ffea;
}

.zh-page .zh-cards .rd-panel h3 {
	margin: 14px 0 0;
	font-family: Montserrat, sans-serif;
	font-weight: 600;
	font-size: 20px;
	line-height: 140%;
	color: #fff;
}

.zh-page .zh-cards .rd-panel p {
	margin: 12px 0 0;
	font-family: Montserrat, sans-serif;
	font-weight: 400;
	font-size: 16px;
	line-height: 150%;
	color: #fff;
}

/* ---------- model calculation ---------- */

.zh-page .zh-cmp {
	display: grid;
	grid-template-columns: 1fr 1fr;
	padding: 0;
	overflow: hidden;
}

.zh-page .zh-cmp + .zh-cmp,
.zh-page .zh-cmp + .zh-sum {
	margin-top: 50px;
}

.zh-page .zh-cmp-col + .zh-cmp-col {
	border-left: 1px solid #334258;
}

.zh-page .zh-cmp-h {
	margin: 0;
	padding: 34px 40px;
	border-bottom: 1px solid #334258;
	font-family: Unbounded, sans-serif;
	font-weight: 400;
	font-size: 20px;
	line-height: 145%;
}

.zh-page .zh-cmp-h {
	color: #50ffea;
	background: linear-gradient(87.16deg, #50ffea 0%, #8aa6e6 100%);
	-webkit-background-clip: text;
	background-clip: text;
	-webkit-text-fill-color: transparent;
}

.zh-page .zh-cmp-col + .zh-cmp-col .zh-cmp-h {
	background: linear-gradient(87.16deg, #6fc0e6 0%, #9572d3 100%);
	-webkit-background-clip: text;
	background-clip: text;
}

.zh-page .zh-cmp-h {
	display: block;
}

.zh-page .zh-cmp-b {
	padding: 40px;
}

.zh-page .zh-cmp .rd-bullets {
	margin: 0;
}

.zh-page .zh-cmp .rd-bullets li + li {
	margin-top: 16px;
}

.zh-page .zh-big {
	margin: 0 0 24px;
	font-family: Montserrat, sans-serif;
	font-weight: 600;
	font-size: 40px;
	line-height: 120%;
	color: #fff;
}

.zh-page .zh-sum {
	padding: 40px;
	border: 1px solid #334258;
	background: linear-gradient(180deg, #2a3647 0%, #2c3c4e 100%);
}

.zh-page .zh-sum p:not(.rd-note) {
	margin: 20px 0 0;
	font-family: Montserrat, sans-serif;
	font-weight: 400;
	font-size: 18px;
	line-height: 150%;
	color: #fff;
}

.zh-page .zh-sum .rd-note {
	margin-top: 24px;
	font-size: 14px;
	line-height: 160%;
}

/* ---------- practice cards ---------- */

.zh-page .zh-case + .zh-case {
	margin-top: 40px;
}

.zh-page .zh-case .rd-kicker {
	background: none;
	color: #50ffea;
	-webkit-text-fill-color: #50ffea;
}

.zh-page .zh-case-t {
	margin: 24px 0 0;
	font-family: Montserrat, sans-serif;
	font-weight: 600;
	font-size: 24px;
	line-height: 140%;
	color: #fff;
}

.zh-page .zh-case-p {
	margin: 24px 0 0;
	font-family: Montserrat, sans-serif;
	font-weight: 400;
	font-size: 16px;
	line-height: 160%;
	color: #fff;
}

.zh-page .zh-case .rd-pills {
	margin-top: 32px;
}

.zh-page .zh-case .rd-bullets li + li {
	margin-top: 12px;
}

.zh-page .zh-case .rd-actions {
	margin-top: 36px;
}

/* ---------- consent ---------- */

.zh-page .rd-consent {
	font-size: 12px;
}

/* ===== tablet / mobile ===== */

@media (max-width: 992px) {
	.zh-page .zh-cards2,
	.zh-page .zh-cards3 {
		grid-template-columns: minmax(0, 1fr);
		gap: 16px;
	}

	.zh-page .zh-cmp {
		grid-template-columns: minmax(0, 1fr);
	}

	.zh-page .zh-cmp-col + .zh-cmp-col {
		border-left: none;
		border-top: 1px solid #334258;
	}

	.zh-page .rd-form-grid {
		grid-template-columns: minmax(0, 1fr);
	}

	.zh-page .rd-form-grid > * {
		min-width: 0;
	}

	.zh-page .rd-form .form,
	.zh-page .rd-form .form form {
		width: 100%;
		max-width: 100%;
		min-width: 0;
	}
}

@media (max-width: 768px) {
	.zh-page .zh-grid2 {
		grid-template-columns: 1fr;
	}

	.zh-page .zh-grid2 .rd-step:nth-child(odd) {
		border-right: none;
	}

	.zh-page .zh-grid2 .rd-step:nth-child(-n + 2) {
		border-bottom: none;
	}

	.zh-page .zh-grid2 .rd-step + .rd-step {
		border-top: 1px solid #334258;
	}

	/* hero: flat, no picture */
	.zh-page .rd-hero-card {
		padding: 0;
		border: none;
		border-radius: 0;
		background: none;
	}

	.zh-page .rd-hero-card .rd-figure {
		display: none;
	}

	.zh-page .rd-hero-card > div > p.zh-hero-small {
		margin-top: 24px;
		font-size: 15px;
	}

	.zh-page .rd-hero-note {
		margin-top: 28px;
	}

	.zh-page .rd-hero-card .rd-checks span {
		display: block;
		flex: 1 1 auto;
		min-width: 0;
		white-space: normal;
	}

	.zh-page .rd-hero-card .rd-actions {
		display: block;
	}

	.zh-page .rd-hero-card .rd-actions .btn {
		display: flex;
		align-items: center;
		justify-content: center;
		width: 100%;
		max-width: 100%;
		box-sizing: border-box;
		height: auto;
		min-height: 54px;
		white-space: normal !important;
		text-align: center;
		font-size: 15px;
		line-height: 130%;
		padding: 12px 14px;
	}

	.zh-page .rd-hero-card .rd-actions .btn span {
		display: block;
		max-width: 100%;
		white-space: normal;
	}

	/* headings */
	.zh-page .rd-eyebrow,
	.zh-page .rd-title,
	.zh-page .rd-lead {
		text-align: left;
	}

	.zh-page .rd-title {
		font-size: 22px;
	}

	.zh-page .rd-hero .rd-title {
		font-size: 28px;
	}

	.zh-page section:not(.rd-hero):not(#zh-form) .rd-title {
		background: none;
		color: #50ffea;
		-webkit-text-fill-color: #50ffea;
	}

	/* pictures stay below the text of a card, shown in full */
	.zh-page .rd-banner {
		padding-bottom: 0;
	}

	.zh-page .rd-banner .rd-figure {
		position: static;
		width: auto;
		height: auto;
		margin: 24px -20px 0;
		aspect-ratio: auto;
	}

	.zh-page .rd-banner .rd-figure img {
		height: auto;
		object-fit: initial;
	}

	.zh-page .rd-banner .zh-img-d {
		display: none;
	}

	.zh-page .rd-banner .zh-img-m {
		display: block;
		width: 100%;
	}

	.zh-page .rd-banner p {
		font-size: 16px;
	}

	.zh-intro {
		overflow: hidden;
		margin-bottom: 24px;
		padding: 24px 20px 0;
		border: 1px solid #3a5169;
		border-radius: 20px;
	}

	.zh-intro .rd-lead {
		margin: 0;
	}

	.zh-intro-fig {
		display: block;
		margin: 24px -20px 0;
	}

	.zh-intro-fig img {
		display: block;
		width: 100%;
		height: auto;
	}

	.zh-glow .zh-intro-fig img {
		width: auto;
		max-width: 100%;
		margin-left: auto;
	}
	/* steps / cards */
	.zh-page .rd-steps {
		gap: 16px;
		margin-top: 24px;
	}

	.zh-page .rd-steps .rd-card,
	.zh-page .zh-cards .rd-panel,
	.zh-page .zh-case {
		padding: 24px 20px;
	}

	.zh-page .zh-cards .rd-panel b {
		font-size: 16px;
	}

	.zh-page .zh-cards .rd-panel h3 {
		font-size: 18px;
	}

	.zh-page .zh-cards .rd-panel p {
		font-size: 15px;
	}

	.zh-page .zh-merge {
		gap: 0;
		border: 1px solid #3a5169;
		border-radius: 20px;
		overflow: hidden;
	}

	.zh-page .zh-merge .rd-panel {
		border: none;
		border-radius: 0;
		background: none;
	}

	.zh-page .zh-merge .rd-panel + .rd-panel {
		border-top: 1px solid #334258;
	}

	.zh-page .zh-merge .rd-panel b {
		background: linear-gradient(87.16deg, #50ffea 0.16%, #9572d3 55.31%);
		-webkit-background-clip: text;
		background-clip: text;
		-webkit-text-fill-color: transparent;
	}

	/* gradient headings of cards */
	.zh-page .rd-metrics .rd-card b,
	.zh-page .zh-nest .rd-card b,
	.zh-page .zh-steps3 .rd-card b,
	.zh-page .rd-faq h3 {
		background: linear-gradient(87.16deg, #50ffea 0.16%, #9572d3 55.31%);
		-webkit-background-clip: text;
		background-clip: text;
		-webkit-text-fill-color: transparent;
	}

	.zh-page .zh-nest .rd-card b {
		font-size: 16px;
	}

	.zh-page .zh-steps3 .rd-card b {
		font-family: Unbounded, sans-serif;
		font-weight: 400;
		font-size: 16px;
	}

	/* model calculation */
	.zh-page .zh-cmp + .zh-cmp,
	.zh-page .zh-cmp + .zh-sum {
		margin-top: 24px;
	}

	.zh-page .zh-cmp-h {
		padding: 22px 20px;
		font-size: 16px;
	}

	.zh-page .zh-cmp-b {
		padding: 24px 20px;
	}

	.zh-page .zh-big {
		margin-bottom: 16px;
		font-size: 28px;
	}

	.zh-page .zh-sum {
		padding: 32px 24px;
	}

	.zh-page .zh-sum strong {
		font-size: 24px;
	}

	.zh-page .zh-sum p:not(.rd-note) {
		font-size: 16px;
	}

	/* practice */
	.zh-page .zh-case + .zh-case {
		margin-top: 24px;
	}

	.zh-page .zh-case-t {
		margin-top: 16px;
		font-size: 20px;
	}

	.zh-page .zh-case-p {
		font-size: 15px;
	}

	.zh-page .zh-case .rd-pills {
		gap: 12px 10px;
	}

	.zh-page .zh-case .rd-pills span {
		padding: 10px 18px;
		font-size: 15px;
	}

	.zh-page .zh-case .rd-actions .btn {
		display: flex;
		align-items: center;
		justify-content: center;
		box-sizing: border-box;
		height: auto;
		min-height: 54px;
		padding: 12px 14px;
		white-space: normal !important;
		text-align: center;
		font-size: 15px;
		line-height: 130%;
	}

	.zh-page .zh-nest {
		margin-top: 24px;
	}

	/* blocks without outer paddings */
	.zh-page .rd-process,
	.zh-page .rd-faqs {
		padding: 0;
	}

	.zh-page .rd-step {
		padding: 24px;
	}

	/* faq: separate cards */
	.zh-page .rd-faqs {
		display: grid;
		gap: 16px;
		border: none;
		border-radius: 0;
		background: none;
	}

	.zh-page .rd-faq {
		border: 1px solid #3a5169;
		border-radius: 20px;
	}

	.zh-page .rd-faq + .rd-faq {
		border-top: 1px solid #3a5169;
	}

	.zh-page .rd-faq img {
		display: none;
	}

	/* form */
	.zh-page .rd-form-grid .rd-bullets {
		order: -1;
	}

	.zh-page .rd-form .btn {
		padding-right: 12px;
		padding-left: 12px;
		font-size: 15px;
		white-space: normal;
	}
}
