.promo-banner {
    padding: 16px 0;
}

.promo-banner img {
    width: 100%;
}

.br {
	display: block;
}

.b-container {
	width: 100%;
	max-width: 1192px;
	margin: 0 auto;
	padding: 0 32px;
}

h1.b-title {
	text-align: left;
	margin: 0 0 24px 0;
	font-size: 32px;
	font-weight: 500;
	max-width: 100%;
}

.banner {
	display: flex;
	justify-content: center;
	background: #feed00;
}

.banner img {
	display: block;
}

.fast-view {
	display: flex;
	align-items: center;
	justify-content: center;
	position: absolute;
	left: 50%;
	top: 50%;
	z-index: 1;
	transform: translate(-50%, -50%);
	pointer-events: none;
	border-radius: 4px;
	background: #F2F3F7;
	width: 32px;
	height: 32px;
	opacity: 0;
	visibility: hidden;
	transition: 0.3s;
}

.section-title {
	font-size: 24px;
	font-weight: 500;
	margin-bottom: 24px;
}

.advantages {
	display: flex;
	justify-content: space-between;
}

.advantages__item:not(:last-child) {
	margin-right: 16px;
}

.advantages__item-name {
	text-align: center;
	color: #1D2023;
	font-size: 16px;
	line-height: normal;
}

.advantages__item-ico {
	display: flex;
	justify-content: center;
	align-items: center;
	height: 56px;
}

.banner-form {
	padding: 32px 48px;
	border-radius: 20px;
	background-image: url(pic/banner-form.png);
	background-position: top;
	background-repeat: no-repeat;
	background-size: cover;
	margin-bottom: 64px;
}

.banner-form__title {
	margin-bottom: 8px;
	font-size: 20px;
	font-weight: 700;
	line-height: 140%;
}

.banner-form__descr {
	margin-bottom: 16px;
	font-size: 16px;
	line-height: 140%;
}

.banner-form__send {
	border-radius: 4px;
	background: #E31E24;
	padding: 6px 10px;
	color: #FFF;
	font-size: 14px;
	line-height: 20px;
	width: 200px;
}

.balcony-info {
	margin-bottom: 64px;
}

.balcony-info-text {
	display: flex;
	margin-bottom: 24px;
}

.balcony-info-text__wrap {
	display: flex;
}

.balcony-info-text .section-title {
	max-width: 392px;
}

.balcony-info-slider {
	width: 100%;
	max-width: 624px;
}

.balcony-info__descr {
	margin-right: 16px;
	max-width: 400px;
}

.balcony-info__discount_tablet {
	display: none;
}

.balcony-info__discount span {
	display: block;
	text-align: center;
	color: rgba(35, 31, 32, 0.50);
	font-size: 14px;
	line-height: normal;
}

.balcony-info__subtitle {
	margin-bottom: 16px;
	font-size: 18px;
	font-weight: 500;
}

.balcony-info__more {
	color: #E30611;
	line-height: normal;
	text-decoration-line: underline;
}

.balcony-info-list {
	margin-bottom: 16px;
}

.balcony-info-list__item:first-child {
	border-top: 1px solid #E0E0E0;
	padding-top: 8px;
}

.balcony-info-list__item {
	display: flex;
	align-items: center;
	border-bottom: 1px solid #E0E0E0;
	padding-bottom: 8px;
	margin-bottom: 8px;
}

.balcony-info-list__item>img {
	margin-right: 8px;
}

.balcony-info-grid {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	gap: 24px;
}

.balcony-info-grid__item {}

.balcony-info-grid__item-title {
	margin-bottom: 8px;
	font-size: 22px;
	font-weight: 500;
	line-height: normal;
}

.balcony-slider {
	max-width: 360px;
	margin-bottom: 8px;
}

.balcony-slider .slider-nav__prev {
	background: #FEED00;
	position: absolute;
	top: 300px;
	left: 8px;
	z-index: 1;
}

.balcony-slider .slider-nav__next {
	background: #FEED00;
	position: absolute;
	top: 300px;
	right: 8px;
	z-index: 1;
}

.balcony-info-card {
	border-radius: 20px;
	overflow: hidden;
	height: 528px;
	position: relative;
	padding: 16px 48px;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
}

.balcony-info-card::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 103px;
	background: linear-gradient(180deg, rgba(35, 31, 32, 0.00) 0%, #231F20 100%);
	z-index: -1;
}

.balcony-info-card__image {
	position: absolute;
	z-index: -1;
	left: 0;
	right: 0;
	right: 0;
	bottom: 0;
	height: 100%;
	width: 100%;
	object-fit: cover;
}

.balcony-info-card__price {
	margin-bottom: 8px;
	color: #FFF;
	font-size: 18px;
	font-weight: 500;
}

.balcony-info-card__price span {
	font-size: 28px;
}

.balcony-info-card__more {
	display: flex;
	justify-content: center;
	align-items: center;
	border-radius: 4px;
	background: #E31E24;
	height: 32px;
	color: #FFF;
	font-size: 14px;
	line-height: 20px;
	width: 100%;
}

.show-galery {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 32px;
	height: 32px;
	border-radius: 4px;
	background: #F2F3F7;
	position: absolute;
	top: 24px;
	right: 24px;
	z-index: 1;
	cursor: pointer;
}


.b-catalog {
	margin-bottom: 64px;
}

.catalog-list {
	display: grid;
	padding: 16px 16px 16px 16px;
}

.catalog-item {
	width: 264px;
	border-radius: 4px;
	border: 1px solid #EBEDEC;
	background: #FFF;
	box-shadow: 0px 4px 20px 0px rgba(0, 0, 0, 0.10);
	padding: 6px 16px 16px;
}

.catalog-item__name {
	min-height: 48px;
	display: flex;
	align-items: center;
}

.catalog-item__preview {
	margin-bottom: 16px;
	position: relative;
}

.catalog-item__preview:hover .catalog-item-fast-view {
	opacity: 1;
}

.catalog-item-fast-view {
	border-radius: 30px;
	background: rgba(234, 236, 238, 0.64);
	padding: 8px;
	color: #1D2023;
	font-size: 12px;
	line-height: 16px;
	display: flex;
	align-items: center;
	justify-content: center;
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	bottom: 0;
	opacity: 0;
	width: 100%;
	max-width: 232px;
	cursor: pointer;
}

.catalog-item-specs {
	min-height: 42px;
	margin-bottom: 8px;
}

.catalog-item-specs__item {
	color: #74767A;
	font-size: 10px;
	font-weight: 400;
	line-height: 130%;
}

.catalog-item-specs__item>span {
	font-weight: 550;
}

.catalog-item__footer {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.catalog-item__price {
	margin-right: 4px;
	font-size: 22px;
	font-style: normal;
	font-weight: 500;
	line-height: 1;
}

.catalog-item__price > span {
	text-decoration: line-through;
    font-size: 16px;
    color: #1D202380;
    line-height: 1;
}

.catalog-item__buy {
	border-radius: 30px;
	border: 1px solid #E30611;
	padding: 7px 16px;
	color: #E30611;
	font-size: 12px;
	font-weight: 500;
	line-height: normal;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	width: auto;
}

.slider-nav {
	display: flex;
	align-items: center;
	justify-content: center;
}

.slider-nav__prev,
.slider-nav__next {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 32px;
	height: 32px;
	border-radius: 50%;
	background: rgba(196, 196, 196, 0.50);
}

.slider-nav .slider-nav__pagination {
	margin: 0 20px;
	transform: none !important;
	width: auto;
}

.slider-nav .swiper-pagination-bullet {
	transform: scale(1) !important;
}

.slider-nav .swiper-pagination-bullet {
	width: 8px;
	height: 8px;
	background: #C4C4C4;
}

.slider-nav .swiper-pagination-bullet-active {
	background: #FEED00;
}


.stages {
	margin-bottom: 64px;
	display: grid;
	grid-template-columns: 1fr 1fr 1fr 1fr;
	gap: 16px;
}

.stages-main {
	font-size: 24px;
	font-weight: 500;
}

.stages-main>svg {
	margin-left: 64px;
}

.stages-item {
	border-radius: 20px;
	background: #EAECEE;
	padding: 16px 18px;
}

.stages-item__header {
	display: flex;
	min-height: 44px;
	margin-bottom: 24px;
}

.stages-item__header-step {
	margin-right: 8px;
	color: #E30611;
	font-size: 22px;
	font-weight: 500;
}

.stages-item__header-name {
	color: #000;
	font-size: 18px;
	font-weight: 500;
}

.stages-item:last-child .stages-item__header {
	min-height: auto;
	margin-bottom: 0;
}

.stages-item:last-child .stages-item__descr {
	display: flex;
	justify-content: flex-end;
	transform: translateY(16px);
}

.balcony-catalog {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr 1fr;
	gap: 16px;
}

.balcony-catalog-item {
	padding: 24px;
	position: relative;
	border-radius: 20px;
	display: flex;
}

.balcony-catalog-item::after {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background: rgba(29, 32, 35, 0.7);
	border-radius: 20px;
}

.balcony-catalog-item__image {
	position: absolute;
	left: 0;
	top: 0;
	height: 100%;
	width: 100%;
	object-fit: cover;
	border-radius: 20px;
}

.balcony-catalog-menu {
	display: flex;
	flex-direction: column;
	position: relative;
	z-index: 1;
}

.balcony-catalog-menu__section {
	font-size: 24px;
	font-weight: 500;
	line-height: 29px;
	margin-bottom: 10px;
	color: #fff;
}

.balcony-catalog-menu__item {
	font-size: 15px;
	line-height: 19px;
	margin-bottom: 10px;
	color: #fff;
}

.f-modal {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 100;
	justify-content: center;
	padding: 20px;
}

.f-modal__wrap {
	overflow: auto;
	height: calc(100vh - 40px);
	max-width: 968px;
	position: relative;
	z-index: 1;
	border-radius: 20px;
}

.f-modal__content {
	padding: 24px 24px 48px 24px;
	background: #FFF;
	border-radius: 20px;
}

.f-modal__close {
	position: absolute;
	top: 16px;
	right: 16px;
	cursor: pointer;
}

.f-modal__layer {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	opacity: 0.48;
	background: #1D2023;
}

.detail {}

.detail-wrap {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 48px;
}

.detail-gallery {
	max-width: 440px;
}

.detail-images {
	margin-bottom: 32px;
}

.detail-images img {
	width: 100%;
}

.detail-thumbs .swiper-wrapper {
	margin-bottom: 32px;
}

.detail-thumbs__slide.swiper-slide-thumb-active {
	border-radius: 8px;
	border: 1px solid #E30611;
}

.detail-thumbs__slide img {
	border-radius: 8px;
	display: block;
}

.detail-title {
	margin-bottom: 8px;
	font-size: 24px;
	font-weight: 500;
	line-height: normal;
}

.detail-prices {
	display: flex;
	align-items: flex-end;
	margin-bottom: 16px;
}

.detail-price {
	color: #E30611;
	font-size: 20px;
	font-weight: 500;
	line-height: 32px;
	margin-right: 8px;
}

.detail-price span {
	font-size: 14px;
}

.detail-discount {
	color: #A2A3A4;
	font-size: 15px;
	font-weight: 500;
	line-height: 24px;
	text-decoration-line: line-through;
}

.detail-discount span {
	font-size: 10px;
}

.detail-specs {
	margin-bottom: 32px;
}

.detail-spec {
	display: flex;
	justify-content: space-between;
	padding: 8px 0;
	border-top: 1px solid #E0E0E0;
	font-size: 16px;
	line-height: normal;
}

.detail-spec:last-child {
	border-bottom: 1px solid #E0E0E0;
}

.detail-spec__name {
	margin-right: 8px;
}

.detail-specs__value {
	text-align: right;
}

.detail-send {
	border-radius: 4px;
	width: 200px;
	height: 32px;
	margin-bottom: 16px;
	font-size: 14px;
	line-height: 20px;
	padding: 6px 6px 8px;
}

.detail-send:hover {
	background: #feed00;
}

.detail-descr {
	font-size: 14px;
	line-height: 130%;
}

.detail-descr p {
	margin-bottom: 4px;
}

.detail-descr b {
	font-weight: 500;
}

.detail-descr span {
	color: #E30611;
}

.detail-mobile {
	display: none;
}

[data-fancybox-toggle-slideshow],
[data-fancybox-toggle-thumbs] {
	display: none;
}

.fancybox__container {
	z-index: 2147483648;
}

@media (max-width: 1279px) {
	.balcony-info-grid {
		grid-template-columns: 1fr 1fr;
	}
}

@media (max-width: 1023px) {
	h1.b-title {
		margin-bottom: 16px;
		font-size: 28px;
	}

	.advantages {
		margin-bottom: 32px;
	}

	.advantages__item-name {
		font-size: 14px;
	}

	.banner-form {
		margin-bottom: 32px;
		padding: 24px 32px;
		background-image: url(pic/banner-form-sm.png);
		background-size: contain;
		background-color: #fdee00;
		background-position: right;
	}

	.banner-form__title {
		font-size: 18px;
	}

	.banner-form__descr {
		font-size: 14px;
	}

	.section-title {
		font-size: 22px;
	}

	.balcony-info__descr {
		font-size: 14px;
		max-width: 352px;
	}

	.balcony-info-text__wrap {
		display: block;
	}

	.balcony-info-text .section-title {
		margin-right: 0;
		margin-bottom: 8px;
		max-width: 100%;
	}

	.balcony-info__descr {
		margin-right: 0;
		max-width: 100%;
		margin-bottom: 16px;
	}

	.balcony-info__discount {
		display: block;
		text-align: center;
	}

	.balcony-info__discount_tablet {
		display: none;
	}

	.stages {
		margin-bottom: 32px;
		grid-template-columns: 1fr 1fr;
	}

	.stages-main {
		display: none;
	}

	.stages-item {
		min-height: 128px;
		padding: 16px;
	}

	.stages-item__header {
		min-height: 40px;
		margin-bottom: 18px;
	}

	.stages-item__header-step {
		line-height: 20px;
	}

	.stages-item__header-name {
		line-height: 20px;
	}

	.stages-item:last-child .stages-item__descr svg {
		height: 76px;
	}

	.balcony-catalog-item {
		padding: 16px;
	}

	.balcony-catalog-menu__section {
		margin-bottom: 4px;
		font-size: 16px;
		line-height: normal;
	}

	.balcony-catalog-menu__item {
		margin-bottom: 8px;
		font-size: 12px;
		line-height: normal;
	}

	.detail-mobile {
		display: block;
	}

	.detail-desktop {
		display: none;
	}

	.f-modal__content {
		padding: 24px;
	}

	.detail-gallery {
		max-width: 305px;
	}

	.detail-wrap {
		gap: 15px;
		margin-bottom: 24px;
	}

	.detail-images {
		margin-bottom: 16px;
	}

	.detail-prices {
		margin-bottom: 8px;
	}

	.works-item {
		width: 344px;
	}
}

@media (max-width: 767px) {
	h1.b-title {
		font-size: 24px;
	}

	.b-container {
		padding: 0 16px;
	}

	.advantages {
		display: grid;
		grid-template-columns: 1fr 1fr;
		gap: 16px 32px;
		margin-bottom: 24px;
	}

	.advantages__item-ico {
		justify-content: flex-start;
		height: 32px;
		margin-bottom: 8px;
	}

	.advantages__item-ico>img {
		width: 32px;
		height: 32px;
	}

	.advantages__item-name {
		text-align: left;
	}

	.banner-form {
		padding: 24px;
		min-height: 210px;
		background-image: url(pic/banner-form-xs.png);
	}

	.balcony-info-text {
		margin-bottom: 16px;
		display: block;
	}

	.balcony-info-text .section-title {
		font-size: 20px;
	}

	.stages {
		grid-template-columns: 1fr;
		gap: 8px;
	}

	.balcony-catalog {
		grid-template-columns: 1fr 1fr;
	}

	.balcony-catalog-item:first-child,
	.balcony-catalog-item:nth-child(2) {
		grid-column-start: 1;
		grid-column-end: 3;
	}

	.f-modal__content {
		padding: 24px 16px;
	}

	.detail-wrap {
		display: block;
		margin-bottom: 0;
	}

	.detail-gallery {
		margin: 0 auto 24px;
	}

	.detail-thumbs .swiper-wrapper {
		display: none;
	}

	.detail-title {
		font-size: 20px;
	}

	.detail-descr {
		display: none;
	}

	.detail-send {
		width: 100%;
	}

	.balcony-info-grid {
		grid-template-columns: 1fr;
	}

	.balcony-info-card {
		padding: 16px 32px;
	}

	.works-item {
		width: 290px;
	}

	.works-item .swiper-wrapper img {
		height: 264px;
	}
}

@media (max-width: 479px) {
	.balcony-slider {
		max-width: 320px;
	}
}