@charset "UTF-8";

.book-promo {
	margin-top: 40px;
	background-color: var(--blue-100);
	border-radius: 20px;
	display: flex;
	flex-direction: row;
	justify-content: space-between
}

.book-promo__image {
	display: none
}

.book-promo__text {
	width: 100%;
	padding: 24px 32px;
	display: flex;
	flex-direction: column
}

.book-promo__text h4 {
	line-height: 24px
}

.book-promo__text p {
	margin: 4px 0 0;
	font-size: 16px;
	line-height: 22px
}

.book-promo__button {
	margin-top: 16px
}

@media screen and (min-width: 901px) {
	.book-promo {
		margin-top: 96px
	}

	.book-promo__image {
		display: block;
		height: 258px
	}

	.book-promo__text {
		padding: 40px 80px 40px 32px;
		width: 381px;
		height: 258px
	}

	.book-promo__text h4 {
		font-size: 20px;
		line-height: 28px
	}

	.book-promo__text p {
		font-size: 18px;
		line-height: 26px
	}
}

@media screen and (min-width: 1025px) {
	.book-promo {
		max-width: 1224px;
		overflow: hidden;
		height: 212px
	}

	.book-promo__image {
		order: 2;
		height: 212px
	}

	.book-promo__image img {
		height: 100%;
		width: auto;
		object-fit: contain
	}

	.book-promo__text {
		order: 1;
		padding: 40px 0 40px 88px;
		width: 627px;
		height: 212px
	}

	.book-promo__text h4 {
		font-size: 24px !important;
		line-height: 30px !important
	}

	.book-promo__button {
		padding: 14px 24px;
		width: fit-content
	}
}

.page-top-image {
	position: relative;
	min-height: 270px;
	background-color: #ededf6;
	overflow: hidden;
	border-radius: 0 0 12px 12px;
	margin-bottom: 22px
}

.page-top-image__content {
	position: absolute;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	top: 0;
	width: 100%;
	height: 100%;
	color: #fff;
	text-align: center;
	padding: 24px
}

.page-top-image__content h1 {
	font-size: 24px;
	line-height: 30px;
	font-weight: 800
}

@media screen and (min-width: 1025px) {
	.page-top-image__content h1 {
		font-size: 24px;
		line-height: 30px;
		font-weight: 800
	}
}

.page-top-image__content .content {
	height: auto;
	color: #fff
}

.page-top-image__content .content p {
	color: #fff;
	margin: 4px 0 0;
	font-size: 16px;
	line-height: 22px;
	text-align: center;
	font-weight: 400
}

.page-top-image__content .content button {
	margin-top: 24px
}

.page-top-image__picture {
	position: absolute;
	width: 100%;
	height: 100%;
	min-height: 270px
}

@media screen and (min-width: 1025px) {
	.page-top-image {
		height: 418px;
		border-radius: 12px;
		margin-bottom: 82px
	}

	.page-top-image__content h1 {
		font-size: 28px;
		line-height: 32px
	}

	.page-top-image__content p {
		margin: 8px 0 0;
		font-size: 18px;
		line-height: 22px;
		text-align: center;
		font-weight: 600
	}
}

.review-links-block {
	display: flex;
	flex-wrap: wrap;
	margin-top: 16px;
	gap: 8px
}

.review-links-block-item {
	width: 79px;
	height: 49px;
	border: 1px solid var(--gray-300);
	border-radius: 16px;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
	padding: 6px
}

.review-links-block-item img {
	max-width: 100%;
	max-height: 100%;
	object-fit: contain
}

@media screen and (min-width: 1025px) {
	.review-links-block-item {
		width: 117px;
		height: 68px
	}
}

.review-blocks {
	position: relative
}

.review-blocks h2 {
	font-size: 28px;
	line-height: 34px;
	font-weight: 800
}

@media screen and (min-width: 1025px) {
	.review-blocks h2 {
		font-size: 24px;
		line-height: 30px;
		font-weight: 700
	}
}

.review-blocks .block-slider {
	margin-top: 16px
}

.review-blocks .block-slider .block-slider__items {
	display: flex;
	flex-direction: column;
	width: 100%
}

.review-blocks .block-slider .block-slider__items .review-card {
	width: 100%;
	margin-bottom: 8px
}

.review-blocks .block-slider .scrollLeftButton,
.review-blocks .block-slider .scrollRightButton {
	display: none
}

.review-blocks__load-more {
	margin-top: 8px;
	width: 100%
}

@media screen and (min-width: 1025px) {
	.review-blocks {
		max-width: 768px
	}

	.review-blocks__rating {
		display: none
	}

	.review-blocks .block-slider .block-slider__items {
		gap: 0;
		flex-direction: row
	}

	.review-blocks .block-slider .block-slider__items .review-card {
		width: 376px;
		margin-right: 16px;
		margin-bottom: 0
	}

	.review-blocks .block-slider .block-slider__items div:last-child>.review-card {
		margin-right: 0
	}

	.review-blocks .block-slider .scrollLeftButton,
	.review-blocks .block-slider .scrollRightButton {
		display: flex;
		background-color: #0000001a;
		color: #fff;
		border-radius: 50%
	}

	.review-blocks .block-slider .scrollLeftButton:hover,
	.review-blocks .block-slider .scrollRightButton:hover {
		background-color: #0003
	}

	.review-blocks .block-slider .scrollLeftButton:disabled,
	.review-blocks .block-slider .scrollRightButton:disabled {
		background-color: #0000000d
	}

	.review-blocks .block-slider button.scrollLeftButton {
		left: -20px
	}

	.review-blocks .block-slider button.scrollRightButton {
		right: -20px
	}

	.review-blocks__load-more {
		display: none
	}
}

.partners {
	width: 100vw;
	overflow: hidden;
	margin-left: -16px;
	margin-right: -16px
}

.partners__title {
	padding: 0 0 8px 16px
}

.partners__items--slider .block-slider__items {
	gap: 8px;
	display: flex;
	padding: 0 16px
}

.partners__items button.scrollLeftButton,
.partners__items button.scrollRightButton {
	display: none
}

.partners__items--item {
	border: 1px solid var(--gray-300);
	border-radius: 20px;
	height: 101px;
	max-height: 101px;
	display: flex;
	align-items: center;
	justify-content: center;
	width: calc(50vw - 22px);
	overflow: hidden
}

.partners__items--item a {
	display: block;
	width: 100%;
	height: 100%
}

.partners__items--item-image {
	width: unset;
	height: 100%
}

.partners__items--item-image img {
	object-fit: contain
}

@media screen and (min-width: 769px) {
	.partners__items--item {
		width: calc(33.33vw - 16px)
	}
}

@media screen and (min-width: 1025px) {
	.partners {
		width: unset;
		margin: 0
	}

	.partners__title {
		padding: 0 0 16px
	}

	.partners__items--slider .block-slider__items {
		display: grid;
		grid-template-columns: repeat(4, 1fr);
		grid-column-gap: 30px;
		grid-row-gap: 8px;
		padding: 0
	}

	.partners__items--item {
		width: unset
	}
}

.feedback-partner-item {
	background-color: var(--gray-50);
	padding: 24px;
	border-radius: 20px;
	display: flex;
	flex-direction: column;
	gap: 8px
}

.feedback-partner-item--head {
	display: flex;
	gap: 16px
}

.feedback-partner-item--head__image {
	width: 40px;
	height: 40px;
	border-radius: 4px;
	overflow: hidden
}

.feedback-partner-item--head__labels {
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: 2px
}

.feedback-partner-item--head__labels h6,
.feedback-partner-item--head__labels p {
	font-size: 16px;
	line-height: 20px;
	margin: 0;
	padding: 0
}

.feedback-partner-item__text {
	font-size: 16px;
	line-height: 22px;
	margin: 0;
	padding: 0;
	color: #555
}

@media screen and (min-width: 1025px) {
	.feedback-partner-item {
		padding: 40px
	}

	.feedback-partner-item--head__image {
		width: 72px;
		height: 72px
	}

	.feedback-partner-item--head__labels h6,
	.feedback-partner-item--head__labels p {
		font-size: 18px;
		line-height: 24px;
		margin: 0;
		padding: 0
	}

	.feedback-partner-item p.feedback-partner-item__text {
		font-size: 18px;
		line-height: 26px
	}
}

.feedback--from-partners {
	padding-top: 48px
}

.feedback--from-partners__items {
	display: flex;
	flex-direction: column;
	gap: 8px;
	padding-top: 8px
}

.feedback--from-partners__button--mobile {
	margin-top: 8px;
	width: 100%
}

.feedback--from-partners__button--mobile span.ui-button__inner {
	font-size: 16px
}

.feedback--from-partners__cta-block--desktop {
	display: none
}

@media screen and (min-width: 1025px) {
	.feedback--from-partners {
		padding-top: 96px
	}

	.feedback--from-partners__items {
		padding-top: 16px;
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		gap: 8px
	}

	.feedback--from-partners__button--mobile {
		display: none
	}

	.feedback--from-partners__cta-block--desktop {
		display: flex;
		background-color: var(--blue-1000);
		border-radius: 20px;
		padding: 0;
		flex-direction: row;
		align-items: center;
		height: 244px;
		margin-top: 96px;
		grid-column: 1/-1;
		position: relative;
		overflow: hidden
	}

	.feedback--from-partners__cta-block__content {
		flex: 1;
		padding: 56px 0 56px 90px
	}

	.feedback--from-partners__cta-block__content h3 {
		font-size: 18px;
		line-height: 34px;
		margin: 0 0 4px;
		color: #fff
	}

	.feedback--from-partners__cta-block__content p {
		font-size: 18px;
		line-height: 22px;
		margin: 0 0 16px;
		color: #fff
	}

	.feedback--from-partners__cta-block__content .ui-button {
		width: auto;
		height: 52px
	}

	.feedback--from-partners__cta-block__content .ui-button span.ui-button__inner {
		font-size: 18px;
		color: var(--blue-1000);
		padding: 0 19px
	}

	.feedback--from-partners__cta-block__image {
		display: block;
		position: absolute;
		right: 0;
		top: 0;
		bottom: 0;
		width: 40%;
		overflow: hidden
	}

	.feedback--from-partners__cta-block__image img {
		width: 100%;
		height: 100%;
		object-fit: cover;
		object-position: center
	}
}

.product-grid {
	display: flex;
	flex-direction: column;
	gap: 16px;
	margin-left: 0
}

.product-grid__title {
	font-size: 20px;
	line-height: 28px;
	font-weight: 800;
	padding-left: 0
}

.product-grid__list {
	display: grid;
	gap: 8px;
	grid-template-columns: 1fr
}

.product-grid__load-more {
	display: flex;
	justify-content: center;
	margin-top: 24px
}

@media screen and (min-width: 769px) {
	.product-grid__list {
		grid-template-columns: repeat(2, 1fr);
		gap: 16px
	}
}

@media screen and (min-width: 1025px) {
	.product-grid__title {
		font-size: 24px;
		line-height: 30px;
		font-weight: 800;
		padding-left: 0
	}

	.product-grid__list {
		grid-template-columns: repeat(4, 1fr);
		gap: 16px
	}

	.product-grid__load-more {
		margin-top: 48px
	}
}

.content {
	height: auto;
	--grid-cols-desktop: 4;
	--grid-cols-mobile: 2
}

.slug-page {
	position: relative;
	padding: 0 16px 96px;
	max-width: 1256px;
	min-height: 50vh;
	margin: 0 auto;
	box-sizing: border-box;
	width: 100%
}

.slug-page__about {
	padding-bottom: 6px
}

.slug-page h2,
.slug-page h3,
.slug-page h4 {
	font-weight: 600
}

.slug-page h2 {
	font-size: 20px;
	line-height: 28px;
	font-weight: 800
}

.slug-page h3 {
	font-size: 20px
}

.slug-page h4 {
	font-size: 18px
}

.slug-page p {
	font-size: 16px
}

.slug-page .mobile-first-grid-area {
	grid-area: 1;
	padding-bottom: 48px
}

.slug-page .mobile-add-pt {
	padding-top: 40px
}

.slug-page__body {
	max-width: 1224px;
	display: grid;
	grid-template-columns: 1fr
}

.slug-page__body__reviews,
.slug-page__body__partners,
.slug-page__body__bottom {
	padding-top: 40px
}

.slug-page__body__bottom h2 {
	padding-bottom: 4px
}

.slug-page__body__book-promo {
	grid-area: 6
}

.slug-page__body__join {
	grid-area: 7;
	padding-top: 40px
}

.slug-page .page-title {
	margin: 14px 0 16px;
	font-size: 20px;
	line-height: 28px
}

@media screen and (min-width: 1025px) {
	.slug-page .page-title {
		font-size: 24px;
		line-height: 30px
	}
}

.slug-page__why-choose {
	padding-top: 0;
	padding-bottom: 40px
}

.slug-page__recommended-products {
	margin: 36px 0 36px -16px
}

.slug-page__recommended-products.product-grid {
	margin-left: 0
}

.slug-page .ui-table-of-content__button {
	display: none
}

.slug-page--wide .slug-page__body {
	grid-template-columns: 1fr;
	gap: 0
}

.slug-page--wide .slug-page__body__main {
	grid-area: auto
}

@media screen and (min-width: 1025px) {
	.slug-page {
		padding: 40px 16px
	}

	.slug-page h2 {
		font-size: 24px;
		line-height: 30px
	}

	.slug-page .ui-table-of-content {
		display: none
	}

	.slug-page .mobile-first-grid-area {
		padding-bottom: 0
	}

	.slug-page .mobile-add-pt {
		padding-top: 0
	}

	.slug-page__body {
		grid-template-columns: auto 392px;
		grid-template-rows: auto auto auto auto 1fr;
		grid-column-gap: 62px
	}

	.slug-page__body__main {
		grid-area: 1/1
	}

	.slug-page__body__main h2 {
		padding-bottom: 16px
	}

	.slug-page__body__side {
		grid-area: 1/2/span 5
	}

	.slug-page__body__partners {
		padding-top: 96px;
		grid-area: 2
	}

	.slug-page__body__book-promo {
		grid-area: 3/1/span 1/span 2
	}

	.slug-page__body__reviews {
		grid-area: 4/1/span 1/span 2;
		padding-top: 96px
	}

	.slug-page__body__reviews .review-blocks {
		max-width: 1224px
	}

	.slug-page__body__reviews .review-blocks .block-slider .block-slider__items .review-card {
		width: 397px
	}

	.slug-page__body__bottom {
		grid-area: 5/1/span 1/span 2
	}

	.slug-page__body__join {
		grid-area: 6;
		padding-top: 24px
	}

	.slug-page__body__feedback {
		grid-area: 7/1/7/-1
	}

	.slug-page__body__blank {
		grid-area: 8;
		align-self: stretch;
		padding-top: 96px
	}

	.slug-page__body__bottom h2 {
		padding-bottom: 12px
	}

	.slug-page .page-title {
		margin: 14px 0 16px;
		font-size: 24px;
		line-height: 30px
	}
}

@media screen and (min-width: 1025px) and (min-width: 1025px) {
	.slug-page .page-title {
		margin: 28px 0 24px;
		font-size: 24px;
		line-height: 30px
	}
}

@media screen and (min-width: 1025px) {
	div .slug-page__why-choose {
		padding-top: 0;
		padding-bottom: 96px
	}

	.slug-page__recommended-products {
		margin: 48px 0
	}

	.slug-page__recommended-products.product-grid {
		margin-left: 0
	}

	.slug-page--wide .slug-page__body {
		grid-template-columns: 1fr;
		gap: 0
	}

	.slug-page--wide .slug-page__body__main {
		grid-area: auto
	}
}