/*!
Theme Name: Окна "Немецкий стандарт"
Theme URI: http://underscores.me/
Author: RefatIs
Author URI: https://kwork.ru/user/refatis
Description: Description
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: ns_okna
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

*/

@import url('https://fonts.googleapis.com/css2?family=Open+Sans:wght@400;600;700;800&display=swap');
/*@font-face {
    font-family: 'TT Norms';
    src: local('TT Norms Medium'), local('TT-Norms-Medium'),
        url('fonts/TTNorms-Medium.woff2') format('woff2'),
        url('fonts/TTNorms-Medium.woff') format('woff'),
        url('fonts/TTNorms-Medium.ttf') format('truetype');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}*/
@font-face {
	font-family: 'ns-krasnodar';
	src:  url('fonts/ns-krasnodar.eot?6nlog4');
	src:  url('fonts/ns-krasnodar.eot?6nlog4#iefix') format('embedded-opentype'),
		url('fonts/ns-krasnodar.ttf?6nlog4') format('truetype'),
		url('fonts/ns-krasnodar.woff?6nlog4') format('woff'),
		url('fonts/ns-krasnodar.svg?6nlog4#ns-krasnodar') format('svg');
	font-weight: normal;
	font-style: normal;
	font-display: block;
}

[class^="icon-"]:before, [class*=" icon-"]:before {
	/* use !important to prevent issues with browser extensions that change fonts */
	font-family: 'ns-krasnodar' !important;
	speak: never;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;

	/* Better Font Rendering =========== */
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
.icon-corner:before {
  	content: "\e907";
}
.icon-island:before {
  	content: "\e908";
}
.icon-line:before {
  	content: "\e909";
  	font-size: 5px;
}
.icon-other:before {
  	content: "\e90a";
}
.icon-parallel:before {
  	content: "\e90b";
}
.icon-u-shape:before {
  	content: "\e90c";
}
.icon-check:before {
	content: "\e900";
}
.icon-clock:before {
	content: "\e901";
}
.icon-left:before {
	content: "\e902";
}
.icon-location:before {
	content: "\e903";
}
.icon-phone:before {
	content: "\e904";
	text-decoration: none!important;
}
.icon-right:before {
	content: "\e905";
}
.icon-stars:before {
	content: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTUxIiBoZWlnaHQ9IjI3IiB2aWV3Qm94PSIwIDAgMTUxIDI3IiBmaWxsPSJub25lIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPgo8cGF0aCBkPSJNMTMuMDkgMC42MTI5MTVMMTYuOTUyNCA4LjM4NjcyTDI1LjUzOTMgOS42NTc4OEwxOS4zMzk2IDE1LjczMzVMMjAuNzg0MSAyNC4yOTI5TDEzLjA5IDIwLjI3NDFMNS4zOTU4OSAyNC4yOTI5TDYuODQwNDQgMTUuNzMzNUwwLjY0MDY3IDkuNjU3ODhMOS4yMjc1NiA4LjM4NjcyTDEzLjA5IDAuNjEyOTE1WiIgZmlsbD0iI0UzMDEwRiIvPgo8cGF0aCBkPSJNNDQuMjY5OSAwLjYxMjkxNUw0OC4xMzI0IDguMzg2NzJMNTYuNzE5MyA5LjY1Nzg4TDUwLjUxOTUgMTUuNzMzNUw1MS45NjQgMjQuMjkyOUw0NC4yNjk5IDIwLjI3NDFMMzYuNTc1OCAyNC4yOTI5TDM4LjAyMDQgMTUuNzMzNUwzMS44MjA2IDkuNjU3ODhMNDAuNDA3NSA4LjM4NjcyTDQ0LjI2OTkgMC42MTI5MTVaIiBmaWxsPSIjRTMwMTBGIi8+CjxwYXRoIGQ9Ik03NS40NTAxIDAuNjEyOTE1TDc5LjMxMjUgOC4zODY3Mkw4Ny44OTk0IDkuNjU3ODhMODEuNjk5NyAxNS43MzM1TDgzLjE0NDIgMjQuMjkyOUw3NS40NTAxIDIwLjI3NDFMNjcuNzU2IDI0LjI5MjlMNjkuMjAwNSAxNS43MzM1TDYzLjAwMDggOS42NTc4OEw3MS41ODc3IDguMzg2NzJMNzUuNDUwMSAwLjYxMjkxNVoiIGZpbGw9IiNFMzAxMEYiLz4KPHBhdGggZD0iTTEwNi42MyAwLjYxMjkxNUwxMTAuNDkyIDguMzg2NzJMMTE5LjA3OSA5LjY1Nzg4TDExMi44OCAxNS43MzM1TDExNC4zMjQgMjQuMjkyOUwxMDYuNjMgMjAuMjc0MUw5OC45MzU5IDI0LjI5MjlMMTAwLjM4IDE1LjczMzVMOTQuMTgwNyA5LjY1Nzg4TDEwMi43NjggOC4zODY3MkwxMDYuNjMgMC42MTI5MTVaIiBmaWxsPSIjRTMwMTBGIi8+CjxwYXRoIGQ9Ik0xMzcuODEgMC42MTI5MTVMMTQxLjY3MiA4LjM4NjcyTDE1MC4yNTkgOS42NTc4OEwxNDQuMDYgMTUuNzMzNUwxNDUuNTA0IDI0LjI5MjlMMTM3LjgxIDIwLjI3NDFMMTMwLjExNiAyNC4yOTI5TDEzMS41NiAxNS43MzM1TDEyNS4zNjEgOS42NTc4OEwxMzMuOTQ4IDguMzg2NzJMMTM3LjgxIDAuNjEyOTE1WiIgZmlsbD0iI0UzMDEwRiIvPgo8L3N2Zz4K");
	display: block;
}
.icon-close:before {
	content: "✖";
}
.icon-menu:before {
	content: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjAiIGhlaWdodD0iMTMiIHZpZXdCb3g9IjAgMCAyMCAxMyIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTAuNSAwSDIwVjIuMTY2NjdIMC41VjBaTTAuNSA1LjQxNjY3SDIwVjcuNTgzMzNIMC41VjUuNDE2NjdaTTAuNSAxMC44MzMzSDIwVjEzSDAuNVYxMC44MzMzWiIgZmlsbD0iI0UzMDEwRiIvPgo8L3N2Zz4K");
}


:root {
	--color-red: #E3010F;
	--color-black: #0C0C0C;
}

*, *:before, *:after {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
}
html {
	font-family: "Open Sans", sans-serif;
	color: var(--color-black);
}
body {
	overflow-x: hidden;
	max-width: 100vw;
}
body.disable-scroll {
	overflow-y: hidden;
}
img {
	max-width: 100%;
	max-height: 100%;
	height: auto;
	width: auto;
	vertical-align: top;
}
h2 {
	font-weight: 800;
	font-size: 48px;
	line-height: 1.15;
	margin-bottom: 60px;
	padding-bottom: 24px;
	position: relative;
}
h2:after {
	content: "";
	display: block;
	width: 70px;
	height: 6px;
	position: absolute;
	bottom: 0;
	background: var(--color-red);
}
button {
	cursor: pointer;
	background: transparent;
	border: none;
	outline: none;
}
[hidden],
.hidden {
	display: none!important;
}
.main {
	overflow: hidden;
}
.container {
	max-width: 1170px;
	padding: 0px 15px;
	margin: 0 auto;
}
.red {
	color: var(--color-red);
}
.btn {
	cursor: pointer;
	background: unset;
	outline: none;
	background: var(--color-red);
	color: #ffffff;
	font-weight: 700;
	font-size: 14px;
	line-height: 1;
	transition: all 0.3s ease;
	min-width: 200px;
	padding: 17px 18px;
	text-align: center;
	border: 1px solid var(--color-red);
	border-radius: 5px;
	-webkit-appearance: none;
	-moz-appearence: none;
	appearence: none;
	font-family: inherit;
}
a.btn {
	text-decoration: none;
	display: inline-block;
}
.btn:hover,
.btn-white {
	background: #ffffff;
	color: #262626;
}
.btn-white:hover {
	background: var(--color-red);
	color: #ffffff;
}
.mobile-hidden {
	display: block!important;
}
.desktop-hidden {
	display: none!important;
}
section {
    scroll-margin-top: 60px;
}


/* Header */
.header {
	background: rgba(255, 255, 255, 0.9);
	box-shadow: 0px 4px 16px rgba(199, 199, 199, 0.44);
	padding: 20px 0px 13px;
	width: 100%;
	z-index: 100;
}
.header.fixed {
	position: fixed;
	padding: 15px 0px 10px;
	top: 0;
}
.header.fixed .header-top {
	display: none;
}
.header-top {
	display: flex;
	font-weight: 600;
	margin-bottom: 34px;
	font-size: 15px;
	line-height: 1.67;
	color: var(--color-black);
}
.header-top a {
	text-decoration: none;
	color: inherit;
}
.header-top > div {
	flex-grow: 1;
	position: relative;
	display: flex;
	align-items: center;
}
.header-top > div:not(:last-of-type) {
	padding-right: 26px;
	margin-right: 26px;
}
.header-top > div:not(:last-of-type):after {
	content: "";
	width: 1px;
	height: 70px;
	right: 0;
	top: 50%;
	opacity: 0.5;
	transform: translateY(-50%);
	background: var(--color-red);
	position: absolute;
}
.header-logo {
	flex-basis: 236px;
	flex-shrink: 0;
}
.logo-slogan {
	display: block;
	font-size: 12px;
	font-weight: 600;
	text-transform: uppercase;
}
.header-hours {
	flex-basis: 190px;
	flex-shrink: 0;
}
.header-address a {
	display: flex;
	gap: 15px;
	align-items: center;
}
.header-address a:before {
	color: var(--color-red);
	font-size: 40px;
}
.header-phones {
	font-size: 20px;
	line-height: 1.25;
	flex-basis: 176px;
	flex-shrink: 0;
	flex-direction: column;
	justify-content: center;
	align-items: flex-end!important;
}
.header-phones .callback {
	text-decoration: underline;
	font-weight: 600;
	font-size: 18px;
	transition: all 0.3s ease;
	margin-top: 4px;
}
.header-phones .callback:hover {
	color: #000000;
}
.btn-small {
	padding: 17px 10px;
}
.header-menu {
	border-bottom: 1px solid var(--color-red);
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
}
.fixed .header-menu {
	border-bottom: 0;
	gap: 40px;
	align-items: center;
}
.header-menu nav {
	flex-grow: 1;
}
.header-menu ul {
	display: flex;
	gap: 10px;
	justify-content: space-between;
	list-style: none;
}
.header-menu ul a {
	font-size: 20px;
	line-height: 1.35;
	text-transform: uppercase;
	color: #262626;
	padding-bottom: 12px;
	border-bottom: 3px solid transparent;
	transition: border-bottom 0.3s ease;
	text-decoration: none;
	display: block;
}
.fixed .header-menu ul a {
	font-size: 16px;
	padding-bottom: 0px;
}
.header-menu ul a:hover {
	border-bottom: 3px solid var(--color-red);
}
.hm-logo, .hm-btn {
	flex-basis: 0;
	overflow: hidden;
}
.fixed .hm-logo {
	flex-basis: 120px;
}
.fixed .hm-btn {
	flex-basis: auto;
}
.hm-btn .btn {
	min-width: 180px;
	padding: 12px 20px;
	font-size: 14px;
}
.mmenu {
	display: none;
}
.menu-close {
	display: none;
}
/* Top */
.top-section {
	padding: 80px 0px 0px;
	background-image: url(images/main_bg.webp);
	background-position: center bottom;
	background-repeat: no-repeat;
	background-size: cover;
}
.top-section.t-bottom {
	padding: 66px 0px 0px;
}
.top-wrapper {
	background-position: right bottom;
	background-repeat: no-repeat;
	background-size: contain;
	padding-bottom: 55px;
}
.success-page .top-section {
	padding: 195px 0px 0px;
}
.success-page .top-wrapper {
	padding-bottom: 253px;
}
.top-content {
	max-width: 680px;
}
.tc-title {
	font-size: 60px;
	font-weight: 800;
	margin-bottom: 48px;
	line-height: 1.15;
}
.tc-text {
	margin-bottom: 35px;
	font-size: 28px;
	line-height: 1.4;
	position: relative;
	max-width: 440px;
}
.tc-btn {
	position: relative;
}
.tc-info {
	margin-bottom: 75px;
	display: flex;
	flex-direction: column;
	gap: 20px;
}
.info-item {
	display: flex;
	align-items: center;
	gap: 15px;
}
.info-item .info-icon {
	flex-basis: 33px;
}
/*.info-item:hover .info-text {
    transform: translateX(-10px);
}*/
.info-item .info-text {
	font-size: 22px;
	line-height: 1.37;
	transition: all 0.3s ease;
}
.info-item .info-text .red {
	font-weight: 600;
}
.tc-promo {
	background: #FFFFFF;
	box-shadow: 0px 0px 23px rgba(148, 148, 148, 0.17);
	border-radius: 10px;
	padding: 24px 22px;
	text-align: center;
	line-height: 1.37;
	max-width: 490px;
}
.promo-title {
	font-weight: 800;
	font-size: 24px;
	margin-bottom: 7px;
}
.promo-text {
	font-weight: 600;
	font-size: 18px;
	margin-bottom: 7px;
}
.promo-text .red {
	font-weight: 700;
}
.promo-date {
	font-weight: normal;
	font-size: 16px;
}
.promo-form {
	margin-top: 18px;
}
/* Info */
.info-section {
	padding: 56px 0px 66px;
}
.info-wrapper {
	display: flex;
	gap: 40px;
}
.is-info-item {
	background: #FFFFFF;
	box-shadow: 0px 0px 23px rgba(148, 148, 148, 0.17);
	border-radius: 10px;
	padding: 30px 20px;
	text-align: center;
	flex-basis: 0;
	flex-grow: 1;
	cursor: pointer;
}
.is-info-item .info-icon {
	height: 60px;
	width: auto;
	margin-bottom: 15px;
	transition: all 0.3s ease;
}
.is-info-item:hover .info-icon {
	transform: translateY(10px);
}
.is-info-item .info-text {
	font-size: 20px;
	line-height: 1.37;
}
.is-info-item .info-text .red {
	font-weight: 600;
}
/* Kitchens */
.wall-bg {
	background: linear-gradient(180deg, #FFFFFF 0%, rgba(255, 255, 255, 0.55) 14.46%, rgba(255, 255, 255, 0.55) 43.26%, rgba(255, 255, 255, 0.55) 68.93%, #FFFFFF 93.84%, #FFFFFF 100%), url(images/kitchens_bg1.webp);
	background-size: cover, contain;
	background-repeat: no-repeat, repeat-y;
}

.blocks-list {
	display: flex;
	gap: 45px;
	flex-wrap: wrap;
}
.block-item {
	flex-basis: calc((100% - 90px) / 3);
	background: #FFFFFF;
	box-shadow: 0px 4px 20px rgba(150, 150, 150, 0.25);
	border-radius: 15px;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	transition: all 0.3s ease;
}
.block-image {
	position: relative;
}
.block-image img {
	position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    top: 0;
}
.block-image .btn {
	position: absolute;
	pointer-events: none;
	visibility: hidden;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -20%);
	opacity: 0;
	max-width: calc(100% - 30px);
	transition-delay: 0.05s;
	z-index: 1;
}
.block-image:hover .btn {
	opacity: 1;
	visibility: visible;
	pointer-events: all;
	transform: translate(-50%, -50%);

}
.kitchen .block-image {
	padding-top: 66%;
}
/*.kitchen .block-image img {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	object-fit: cover;
	object-position: center;
}*/
.block-text {
	padding: 28px 20px 35px;
	display: flex;
	flex-direction: column;
	flex-grow: 1;
}
.block-text h3 {
	font-weight: 700;
	font-size: 23px;
	line-height: 1.37;
	margin-bottom: 10px;
}
.block-text div {
	font-size: 18px;
	line-height: 1.26;
}
.block-text .red {
	font-weight: 700;
}
.block-actions {
	display: flex;
	align-self: flex-start;
	flex-direction: column;
	gap: 15px;
	margin-top: 30px;
}
.block-text .block-actions {
	flex-grow: 0;
}
.kitchen .block-text {
	font-size: 18px;
	font-weight: 400;
	line-height: 1.15;
	color: #4B4B4B;
}
.kitchen .project-info {
	display: flex;
	flex-direction: column;
	flex-grow: 0;
	gap: 15px;
	margin-bottom: 17px;
}
.pi-item {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
}
.pi-item__value {
	color: var(--color-black);
	font-weight: 600;
}
.kitchen .project-prices {
	margin-top: auto;
	font-weight: 600;
	color: var(--color-black);
	flex-grow: 0;
}
.kitchen .prices-label {
	font-weight: 400;
}
.kitchen .project-old-price {
	text-decoration: line-through;
}
.kitchen .project-price {
	font-size: 22px;
	font-weight: 700;
	color: var(--color-red);
}
.show-more {
	display: none;
}
/* Models */
.models-section {
	padding: 53px 0px 72px;
}
.models-wrap {
	position: relative;
}
.models-wrap .rslider-btn {
	display: none;
}
.models-next {
	right: 0px;
}
.models-list {
	display: grid;
	grid-gap: 18px;
	grid-template-columns: repeat(4, 1fr);
}
.model {
	background: #FFFFFF;
	box-shadow: 0px 4px 20px rgba(150, 150, 150, 0.25);
	border-radius: 15px;
	padding: 24px 5px;
	display: flex!important;
	flex-direction: column;
	align-items: center;
}
.model-title {
	margin-bottom: 15px;
}
.model-image {
    flex-grow: 1;
    width: 100%;
}
.model-image img {
    aspect-ratio: 11/12;
    width: 100%;
    max-width: 220px;
    margin: 0 auto;
    display: block;
}
.model-price {
	margin-bottom: 15px;
	font-size: 18px;
}
.model-price .red {
	font-weight: 700;
}
.model-actions {
    display: flex;
    flex-direction: column;
    gap: 15px;
    margin-top: 16px;
}
/* Promos */
.promos-section {
	padding: 60px 0px 60px;
}
.promo:hover {
	outline: 2px solid var(--color-red);
    box-shadow: 10px 10px 20px var(--color-red);
}
.promo .block-image {
	padding-top: 41%;
}
.promo .block-text {
	display: flex;
	flex-direction: column;
	align-items: center;
	position: relative;
	padding: 18px 15px 28px;
}
.block-text h3.promo-title {
	text-align: center;
	font-weight: 400;
	font-size: 20px;
	line-height: 1.3;
	color: var(--color-black);
	margin-bottom: 4px;
	width: calc(100% - 80px);
}
.promo-price {
	font-weight: 800;
	font-size: 24px;
	line-height: 1.5;
	color: var(--color-red);
	margin-bottom: 28px;
}
.promo-details {
	font-weight: 400;
	font-size: 14px;
	line-height: 1;
	color: var(--color-black);
	text-decoration: underline;
	margin-top: auto;
}
.promo-checkbox {
	position: absolute;
	height: 36px;
	width: 36px;
	top: 19px;
	right: 15px;
}
.checkbox-input {
	background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzYiIGhlaWdodD0iMzYiIHZpZXdCb3g9IjAgMCAzNiAzNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHJlY3QgeT0iMC4wNjI5ODgzIiB3aWR0aD0iMzYiIGhlaWdodD0iMzYiIGZpbGw9IiNGMUYxRjEiLz4KPHBhdGggZD0iTTE2LjI3NzQgMjcuNzUzOEMxNS43Mjc0IDI3Ljc1MzggMTUuMjA3MyAyNy40OTY1IDE0Ljg3MyAyNy4wNTUzTDEwLjM1NzIgMjEuMDkxNkM5Ljc2OTg4IDIwLjMxNiA5LjkyMjc5IDE5LjIxMTYgMTAuNjk4NCAxOC42MjRDMTEuNDc1MyAxOC4wMzYyIDEyLjU3OSAxOC4xOTAxIDEzLjE2NjUgMTguOTY1MkwxNi4xMzY2IDIyLjg4N0wyMy42MDY1IDEwLjg5MzFDMjQuMTIwOCAxMC4wNjc5IDI1LjIwNjcgOS44MTU0NCAyNi4wMzM3IDEwLjMyOUMyNi44NTk2IDEwLjg0MyAyNy4xMTE4IDExLjkyOTggMjYuNTk3MiAxMi43NTU3TDE3Ljc3MyAyNi45MjM2QzE3LjQ2NjQgMjcuNDE2MSAxNi45MzcyIDI3LjcyNiAxNi4zNTc3IDI3Ljc1MjNDMTYuMzMwNyAyNy43NTMzIDE2LjMwNDIgMjcuNzUzOCAxNi4yNzc0IDI3Ljc1MzhaIiBmaWxsPSIjRTNFM0UzIi8+Cjwvc3ZnPgo=");
	border-radius: 4px;
}
.checkbox-input.checked {
	background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzYiIGhlaWdodD0iMzYiIHZpZXdCb3g9IjAgMCAzNiAzNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHJlY3QgeT0iMC4xMjU5NzciIHdpZHRoPSIzNiIgaGVpZ2h0PSIzNiIgZmlsbD0iI0UzMDEwRiIvPgo8cGF0aCBkPSJNMTYuMjc3NCAyNy44MTY4QzE1LjcyNzQgMjcuODE2OCAxNS4yMDczIDI3LjU1OTUgMTQuODczIDI3LjExODJMMTAuMzU3MiAyMS4xNTQ2QzkuNzY5ODggMjAuMzc5IDkuOTIyNzkgMTkuMjc0NiAxMC42OTg0IDE4LjY4N0MxMS40NzUzIDE4LjA5OTIgMTIuNTc5IDE4LjI1MzEgMTMuMTY2NSAxOS4wMjgyTDE2LjEzNjYgMjIuOTVMMjMuNjA2NSAxMC45NTYxQzI0LjEyMDggMTAuMTMwOSAyNS4yMDY3IDkuODc4NDMgMjYuMDMzNyAxMC4zOTJDMjYuODU5NiAxMC45MDYgMjcuMTExOCAxMS45OTI4IDI2LjU5NzIgMTIuODE4N0wxNy43NzMgMjYuOTg2NkMxNy40NjY0IDI3LjQ3OTEgMTYuOTM3MiAyNy43ODkgMTYuMzU3NyAyNy44MTUzQzE2LjMzMDcgMjcuODE2MyAxNi4zMDQyIDI3LjgxNjggMTYuMjc3NCAyNy44MTY4WiIgZmlsbD0id2hpdGUiLz4KPC9zdmc+Cg==");
}
.promos-bottom {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	grid-gap: 40px 120px;
	margin-top: 60px;
}
.promos-total {
	display: flex;
	align-items: center;
	padding: 14px 32px;
	gap: 40px;
	border: 1px solid #E3010F;
	border-radius: 5px;
	position: relative;
}
.promos-total:after {
	content: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTciIGhlaWdodD0iOCIgdmlld0JveD0iMCAwIDU3IDgiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxwYXRoIGQ9Ik01Ni44NTM2IDQuNDE2NTRDNTcuMDQ4OCA0LjIyMTI4IDU3LjA0ODggMy45MDQ3IDU2Ljg1MzYgMy43MDk0M0w1My42NzE2IDAuNTI3NDU0QzUzLjQ3NjMgMC4zMzIxOTIgNTMuMTU5NyAwLjMzMjE5MiA1Mi45NjQ1IDAuNTI3NDU0QzUyLjc2OTIgMC43MjI3MTcgNTIuNzY5MiAxLjAzOTMgNTIuOTY0NSAxLjIzNDU2TDU1Ljc5MjkgNC4wNjI5OUw1Mi45NjQ1IDYuODkxNDJDNTIuNzY5MiA3LjA4NjY4IDUyLjc2OTIgNy40MDMyNiA1Mi45NjQ1IDcuNTk4NTJDNTMuMTU5NyA3Ljc5Mzc4IDUzLjQ3NjMgNy43OTM3OCA1My42NzE2IDcuNTk4NTJMNTYuODUzNiA0LjQxNjU0Wk0wIDQuNTYyOTlINTYuNVYzLjU2Mjk5SDBWNC41NjI5OVoiIGZpbGw9IiNFMzAxMEYiLz4KPC9zdmc+Cg==");
	position: absolute;
	right: -90px;
}
.pt-selected {
	font-weight: 400;
	font-size: 16px;
	line-height: 30px;
}
.promos-count {
	font-size: 18px;
	font-weight: 700;
}
.pt-confirm {
	font-weight: 400;
	font-size: 14px;
	line-height: 1.43;
	color: #626262;
}
/* Catalog */
.catalog-section {
	padding: 37px 0px 0px;
}
.catalog-title {
	margin-bottom: 45px;
}
.catalog {
	transition: all 0.3s ease;
}
.catalog:hover {
	transform: translateY(-20px);
}
.catalog .block-image {
	padding-top: 60%;
}
.catalog-text {
	margin-bottom: 50px;
	font-size: 28px;
	line-height: 1.15;
}
.catalog-text .red {
	font-weight: 700;
}
.catalog-text p:not(:last-of-type) {
	margin-bottom: 20px;
}
.catalog .block-text {
	padding: 20px;
}
.catalog .block-text div {
	font-size: 14px;
	line-height: 1.26;
}
.catalog .block-text h3 {
	font-size: 18px;
	line-height: 1.37;
}
/* Designers */
.designers-section {
	padding: 80px 0px 0px;
}
.designers-grid {
	display: grid;
	grid-template-areas:
		"s t"
		"s d"
		"s f";
	grid-template-columns: 50% auto;
	grid-gap: 35px 80px;
}
.designers-wrapper {
	position: relative;
	grid-area: s;
	align-self: start;
}
.designers-subtitle {
	text-transform: uppercase;
	font-weight: 800;
	font-size: 36px;
	line-height: 1.36;
	grid-area: t;
}
.designers-slider {
	overflow: hidden;
	margin: 0 -15px;
}
.dslider-btn {
	background: #ffffff;
	color: var(--color-red);
	border: none;
	box-shadow: 0px 0px 23px rgba(148, 148, 148, 0.17);
    width: 50px;
    height: 50px;
    border-radius: 50%;
    position: absolute;
    top: calc(50% - 26px);
    font-size: 22px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    left: -25px;
    transition: all 0.3s ease;
}
.dslider-btn:hover {
	background: var(--color-red);
	color: #ffffff;
}
.designers-next {
	left: auto;
	right: -25px;
}
.designer-slide {
	padding: 0 15px 15px;
}
.designers-text {
	/*sgrid-area: d;*/
}
.designers-form {
	grid-area: f;
	max-width: 350px;
}
.des-text {
	font-size: 20px;
	line-height: 1.53;
	margin-bottom: 20px;
}
.des-form {
	background: #FFFFFF;
	box-shadow: 0px 0px 23px rgba(148, 148, 148, 0.17);
	border-radius: 10px;
	padding: 23px 20px;
}
.des-form form {
	margin-bottom: 10px;
}
.des-form .btn {
	width: 100%;
}
.designers-desc {
	font-size: 20px;
	line-height: 1.53;
	grid-area: d;
}
.designers-desc ul {
	list-style: none;
	display: flex;
	flex-direction: column;
	gap: 15px;
	margin-top: 25px;
}
.designers-desc ul li {
	display: flex;
	align-items: center;
	gap: 15px;
}
.designers-desc ul li:before {
	content: "\e900";
	font-size: 32px;
	font-family: "ns-krasnodar";
	color: var(--color-red);
}
.designer {

}
.designer-photo {
	border-radius: 12px;
	overflow: hidden;
	margin-bottom: 20px;
}
.designer-info {
	background: #FFFFFF;
	box-shadow: 0px 4px 20px rgba(150, 150, 150, 0.25);
	border-radius: 15px;
	padding: 30px 20px;
	font-size: 20px;
	line-height: 1.25;
}
.designer-name {
	font-weight: 700;
}
.designer-desc .red {
	font-weight: 700;
}
/* Discount */
.discount-section {
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
	padding: 98px 0px 75px;
}
.discount-grid {
	display: grid;
	grid-template-columns: 1fr auto;
	grid-gap: 35px;
	align-items: end;
}
.discount-form {
	padding: 28px 32px 32px;
	background: #FFFFFF;
	box-shadow: 0px 0px 23px rgba(148, 148, 148, 0.17);
	border-radius: 10px;
}
.discount-form > p {
	font-weight: 400;
	font-size: 22px;
	line-height: 1.53;
	margin: 0px 0px 31px;
	color: var(--color-black);
}
.discount-content {
	margin-bottom: 105px;
}
.discount-content ul {
	list-style: none;
	font-size: 22px;
	line-height: 1.37;
	color: #0C0C0C;
}
.discount-content ul li {
	display: flex;
	gap: 6px;
	align-items: center;
}
.discount-content ul li:not(:last-of-type) {
	margin-bottom: 20px;
}
.discount-content ul li::before {
	content: '';
	width: 26px;
	height: 27px;
	display: block;
	background: url(images/li-check.svg);
	background-size: contain;
	background-repeat: no-repeat;
	margin-right: 15px;
	flex-shrink: 0;
}
.discount-cards {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	grid-gap: 20px;
}
.discount-cards .card {
	border-radius: 5px;
	overflow: hidden;
	max-width: 195px;
}
/* Solutions */
.solutions-section {
	padding: 104px 0px 120px;
	background: linear-gradient(180deg, #FFFFFF 0%, rgba(255, 255, 255, 0.45) 14.46%, rgba(255, 255, 255, 0.45) 43.26%, rgba(255, 255, 255, 0.45) 68.93%, #FFFFFF 100%), url(images/solutions_bg.webp);
	background-size: cover;
	background-position: center;

}
.solution:hover {
	transform: translateY(-20px);
}
.solution .block-image {
	padding-top: 66%;
}
.solution .block-text h3 {
	font-size: 14px;
	line-height: 1;
	flex-grow: 1;
}
/* Why Us */
.why-section {
	padding: 0px 0px 100px;
}
.reasons {
	gap: 50px;
}
.reason {
	box-shadow: unset;
	border-radius: unset;
	flex-basis: calc((100% - 100px) / 3);
}
.reason .block-image {
	border-radius: 8px;
	margin-bottom: 16px;
	overflow: hidden;
	padding-top: 26%;
}
.reason .block-image:before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	opacity: 0;
	background-color: rgba(237,28,36,.3);
	transition: all 0.3s ease;
	z-index: 1;
}
.reason .block-image:hover:before {
	opacity: 1;
}
.reason .block-text {
	padding: 0px;
}
.reason .block-text div {
	font-size: 16px;
	line-height: 1.45;
}
.reason .block-text h3 {
	font-size: 18px;
	line-height: 1.37;
}
.section-actions {
	display: flex;
	margin-top: 60px;
	justify-content: center;
}
.section-actions form {
	max-width: 720px;
	display: grid;
	grid-gap: 20px;
	grid-template-columns: repeat(2, 1fr);
}
.section-actions .btn {
	min-width: 100%;
}
/* Steps */
.steps-section {
	padding: 100px 0px 60px;
	/*background: linear-gradient(180deg, #FFFFFF 0%, rgba(255, 255, 255, 0.45) 14.46%, rgba(255, 255, 255, 0.45) 43.26%, rgba(255, 255, 255, 0.45) 68.93%, #FFFFFF 100%), url(images/steps_bg.webp);
	background-size: cover;
	background-position: center center;*/
}
.stes-title {
	margin-bottom: 40px;
}
.steps {
	justify-content: center;
	gap: 50px 45px;
	counter-reset: step;
}
.reasons.slick-initialized,
.steps.slick-initialized {
	margin-right: -15px;
	margin-left: -15px;
}
.reasons.slick-initialized .slick-list,
.steps.slick-initialized .slick-list {
	padding-right: 20%;
}
.reasons.slick-initialized .block-item,
.steps.slick-initialized .block-item {
	margin: 15px 0px 15px 15px;
}
.reasons.slick-initialized .slick-track,
.steps.slick-initialized .slick-track {
    display: flex!important;
}
.reasons.slick-initialized .slick-slide,
.steps.slick-initialized .slick-slide {
    height: inherit!important;
}
.step {
	transition: all 0.3s ease;
}
.step:hover {
	transform: translateY(-20px);
}
.step .block-image {
	padding-top: 33%;
}
.step .block-text {
	padding: 20px;
}
.step .block-text div {
	font-size: 14px;
	line-height: 1.55;
}
.step .block-text h3 {
	font-size: 16px;
	display: flex;
	align-items: center;
	gap: 14px;
	margin-bottom: 14px;
}
.step .block-text .red {
	cursor: pointer;
	transition: all 0.3s ease;
	text-decoration: underline;
    white-space: nowrap;
}
.step .block-text .red:hover {
	color: var(--color-black);
	text-decoration: underline;
}
.step .block-text h3:before {
	/*counter-increment: step;
	content: counter(step);*/
	content: attr(data-num);
	font-size: 16px;
	color: var(--color-red);
	border: 1px solid var(--color-red);
	border-radius: 50%;
	flex-shrink: 0;
	width: 35px;
	height: 35px;
	display: flex;
	align-items: center;
	justify-content: center;
}
/* Reviews */
.reviews-section {
	padding: 66px 0px 120px;
}
.reviews-wrapper {
	padding: 0px 0px;
	position: relative;
}
.review-slide.slick-slide {
    padding: 15px 25px 20px;
}
.review-slide.slick-active .review {

}
.rslider-btn {
	border: none;
    background: var(--color-red);
    color: #ffffff;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    position: absolute;
    top: calc(50% - 26px);
    font-size: 22px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.3s ease;
}
.rslider-btn:hover {
	background: #ffffff;
	color: var(--color-red);
	box-shadow: 0px 0px 23px rgba(148, 148, 148, 0.17);
}
.reviews-next {
	right: 0;
}
.reviews-slider .slick-list {
	overflow: visible!important;
}
.review {
	display: grid;
	grid-template-columns: auto 440px;
	grid-gap: 20px 50px;
	padding: 40px 45px;
	background: #FFFFFF;
	border-radius: 15px;
	transition: all 0.3s ease;
	box-shadow: 0px 4px 20px rgba(150, 150, 150, 0.25);
}
.review-date {
	font-weight: 600;
	font-size: 16px;
	line-height: 1.15;
	color: #818181;
}
.review-text {
	font-weight: 300;
	font-size: 20px;
	line-height: 1.5
	color: var(--color-black);
}
.review-name {
	font-weight: 800;
	font-size: 28px;
	line-height: 1.15;
	color: var(--color-black);
	max-width: 330px;
	margin-bottom: 24px;
}
.review-address {
	font-weight: 600;
	font-size: 18px;
	line-height: 1.15;
	color: #818181;
	margin-bottom: 48px;
}
.review-rating {
	margin-top: 12px;
	color: var(--color-red);
	font-size: 11px;
	padding: 16px 24px;
	border: 1px solid #E6E6E6;
	border-radius: 12px;
	font-weight: 600;
	font-size: 16px;
	line-height: 1.15;
	color: #818181;
	margin-bottom: 24px;
	display: inline-flex;
	align-items: center;
}
.review-rating span {
	color: var(--color-red);
	margin-left: 10px;
	display: block;
}
.review-text {
	font-size: 16px;
	line-height: 1.65;
	color: var(--color-black);
	padding-right: 25px;
}
.review-images {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	grid-template-rows: repeat(3, 1fr);
	grid-gap: 16px;
}
.review-images div {
	border-radius: 8px;
	overflow: hidden;
	position: relative;
	min-height: 176px;
}
.review-images div:first-of-type {
	grid-column: 1/3;
}
.review-images img {
	position: absolute;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.review-photo {
	align-self: flex-end;
}
.review-photo img,
.review-image img {
	border-radius: 15px;
	overflow: hidden;
}
.review-action {
	grid-area: b;
}
.review-action .btn {
	min-width: 286px;
}
/* Questions */
.questions-section {
	padding: 120px 0px 100px;
}
.questions-title {
	text-align: center;
}
.questions-title:after {
	left: 50%;
	transform: translateX(-50%);
}
.questions-grid {
	display: grid;
	grid-template-areas:
		"l c r";
	grid-template-columns: repeat(3, 1fr);
	grid-gap: 25px 90px;
	align-items: center;
	max-width: 1000px;
	margin: 0 auto;
}
.q-contact-left {
	grid-area: l;
}
.q-contact-right {
	grid-area: r;
}
.qc-item .icon-phone {
	cursor: pointer;
	display: flex;
    align-items: center;
}
.qc-item .icon-phone span,
.qc-item .icon-phone a {
	transition: all 0.3s ease;
	display: block;
	margin-left: 10px;
	color: var(--color-black);
	text-decoration: none;
	font-weight: 600;
}
.qc-item .icon-phone:hover span,
.qc-item .icon-phone:hover a {
	color: var(--color-red);
	text-decoration: underline;
}
.qc-item {
	padding: 30px 20px;
	background: #FFFFFF;
	box-shadow: 0px 4px 20px rgba(150, 150, 150, 0.25);
	border-radius: 15px;
}
.qc-item:not(:last-of-type) {
	margin-bottom: 40px;
}
.qc-item > *{
	color: #000000;
	font-size: 15px;
	font-weight: 600;
	display: flex;
    text-decoration: none;
    align-items: center;
    gap: 18px;
}
.qc-item *:before{
	color: var(--color-red);
	font-size: 40px;
}
.q-contact {
	grid-area: c;
}
.qc-photo {
	position: relative;
    padding-top: 100%;
    border-radius: 50%;
    overflow: hidden;
}
.qc-photo img {
	position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    object-fit: cover;
    object-position: top center;
}
.qc-name {
	text-align: center;
	margin-top: 28px;
	font-weight: 800;
	font-size: 20px;
	line-height: 1.15;
}
/* Form */
.form-section {
	padding: 80px 0px;
	background: url(images/form_bg.webp);
	background-size: cover;
}
.fs-title {
	font-weight: 700;
	font-size: 26px;
	line-height: 1.3;
	max-width: 780px;
	margin: 0 auto 25px;
	text-align: center;
}
.fs-form {
	max-width: 624px;
	margin: 0 auto;
}
.fs-form .row-form > div {
	flex: 1 1;
}
/* Contacts */
.contacts-section {
	padding: 100px 0px;
}
.contacts-title {
	text-align: center;
	padding: 0;
    margin-bottom: 50px;
}
.contacts-title:after {
	display: none;
}
.contacts-wrapper {
	position: relative;
	min-height: 350px;
}
.contacts-map {
	border-radius: 10px;
	overflow: hidden;
}
.contacts-info {
	position: absolute;
	padding: 30px 20px;
	width: 322px;
	background: rgba(255, 255, 255, 0.95);
	border-radius: 10px;
	top: 50%;
	left: 65px;
	transform: translateY(-50%);
	font-size: 15px;
	line-height: 1.67;
}
.ci-item:not(:last-of-type) {
	margin-bottom: 15px;
}
.ci-item__title {
	font-weight: 700;
	color: #000000;
	margin-bottom: 3px;
}
.ci-item__value {
	color: var(--color-black);
}
.ci-item__value a {
	display: block;
	color: inherit;
	font-size: 18px;
	line-height: 1.39;
	text-decoration: none;
}
/* Footer */
.footer {
    font-weight: 500;
	padding: 45px 0px;
	background: #F1F1F1;
	color: #A0A8B1;
	font-size: 14px;
	line-height: 1.14;
}
.footer-wrapper {
	display: flex;
	justify-content: space-between;
	gap: 10px;
}
.footer-right {
	display: flex;
	gap: 30px;
}
.footer-right .policy a {
	text-decoration: none;
	color: inherit;
	transition: all 0.3s ease;
}
.footer-right .policy a:hover {
	color: var(--color-black);
}
/* Forms */
.wpcf7-spinner {
	display:  none;
}
.wpcf7-form input.wpcf7-text {
	background: #FFFFFF;
	box-sizing: border-box;
	border-radius: 5px;
	padding: 13px 35px;
	font-size: 16px;
	line-height: 1;
	font-family: inherit;
	width: 100%;
	outline: none;
	text-align: center;
}
.wpcf7-file {
	margin-bottom: 10px;
}
.wpcf7-response-output {
	display: none;
}
.wpcf7-not-valid-tip {
	font-size: 0px;
	text-align: center;
	display: none;
}
.wpcf7-not-valid-tip:after {
    content: "Введен некорректный номер телефона";
    font-size: 12px;
}
.wpcf7-not-valid {
	background: #ffff99!important;
}
.not-valid-tip {
    color: #dc3232;
    text-align: center;
    font-size: 12px;
    display: block;
}
.row-form {
	display: flex;
}
.row-form input {
	height: 70px;
	display: flex;
	align-items: center;
	text-align: center;
	justify-content: center;
}
.row-form.small input {
	height: 54px;
}
.row-form input.wpcf7-text {
	border-radius: 5px 0px 0px 5px;
}
.row-form .btn {
	border-radius: 0px 5px 5px 0px;
	width: 100%;
}
.promo-form .row-form input,
.fs-form .row-form input {
	height: 54px;
}
.promo-form input.wpcf7-text {
	border-color: var(--color-red);
	font-size: 15px;
	color: #7D7D7D;
	padding: 14px 25px;
}
input.wpcf7-text {
	border: 1px solid var(--color-red);
}
.des-form input.wpcf7-text {
	background: #F9F9F9;
	border: 1px solid #E8E8E8;
	margin-bottom: 10px;
	font-size: 17px;
	line-height: 1.37;
	color: #7D7D7D;
}
.modal input.wpcf7-text {
	/*border-color: #000000;*/
	font-size: 16px;
	font-weight: 600;
	color: var(--color-black);
	text-align: center;
}
.modal .wpcf7-form-control-wrap {
    margin-bottom: 10px;
    display: block;
}
/* Modal */
.modal-overlay {
	position: fixed;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
	background-color: rgba(0, 0, 0, 0.7);
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	height: 100vh;
	width: 100%;
	opacity: 0;
	visibility: hidden;
	z-index: 100;
	overflow-y: auto;
	-webkit-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
	padding: 20px 20px;
}
.modal {
	background-color: #ffffff;
	width: 486px;
	margin-top: 40px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	display: none;
	border-radius: 10px;
	padding: 40px 64px 40px;
	position: relative;
	-webkit-transition: all 0.3s ease;
	transition: all 0.3s ease;
	-webkit-transform: translateY(100px);
	        transform: translateY(100px);
}
.modal.quiz-modal {
	width: 1140px;
	max-width: 95%;
	margin-top: 40px;
	align-self: flex-start;
	padding: 40px 45px;
}
.modal-close {
	position: absolute;
	width: 30px;
	height: 30px;
	color: #565656;
	top: 12px;
	right: 12px;
	font-size: 20px;
	line-height: 30px;
}
.modal-header {
	font-weight: 800;
	font-size: 32px;
	line-height: 1.15;
	margin-bottom: 40px;
}
.modal-title {
	color: #ffffff;
	font-family: "Source Serif Pro";
	font-size: 24px;
	text-transform: uppercase;
	text-align: center;
	margin: 0 0 20px;
}
.modal-overlay--visible {
	opacity: 1;
	visibility: visible;
	-webkit-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
}
.modal--visible {
	display: block;
	-webkit-transform: translateY(0px);
	        transform: translateY(0px);
}
.modal .btn {
	width: 100%;
	max-width: unset;
}
.modal p {
	text-align: center;
	margin-bottom: 30px;
	font-size: 22px;
	line-height: 1.3;
	text-align: center;
	color: var(--color-black);
}
.modal form p {
	margin-bottom: 0px;
}
/* Quiz */
.quiz-section {
	padding: 90px 0px 90px;
}
.quiz-section-wrap {
	padding: 40px;
	box-shadow: 0px 4px 25px rgba(184, 184, 184, 0.25);
	border-radius: 15px;
}
.quiz-form {
}
.quiz-row {
	margin-bottom: 60px;
}
.quiz-form-title {
	font-weight: 800;
	font-size: 32px;
	line-height: 1.15;
	color: var(--color-black);
	margin-bottom: 40px;
}
.quiz-row-grid {
    display: grid;
    grid-gap: 60px;
    grid-template-columns: repeat(3, 1fr);
}/*
.quiz-form-row {
	background: #FFFFFF;
	border: 1px solid #E4E4E4;
	box-sizing: border-box;
	border-radius: 15px;
	margin-bottom: 30px;
	padding: 25px;
}*/
.quiz-form-row.error {
	border-color: var(--color-red);
	background: rgba(227, 1, 15,0.2);
}
.quiz-row-title {
	font-weight: 700;
	font-size: 22px;
	line-height: 1.36;
	color: var(--color-black);
	margin-bottom: 25px;
}
.question-wrapper {
	display: grid;
    grid-gap: 30px;
}
.q-style,
.modal .q-style {
    /*grid-template-columns: repeat(3, 1fr);
    grid-gap: 10px;
    display: grid;*/
    display: flex;
}
.q-style .quiz-select {
	cursor: pointer;
	flex-grow: 1;
	/*flex-basis: 200px;*/
}
.q-style label {
	display: flex;
    flex-direction: column;
    height: 100%;
    align-items: center;
}
.q-style .quiz-input-wrapper {
	background: #FFFFFF;
	border-radius: 7px;
	padding: 15px 15px 10px;
	overflow: hidden;
    font-size: 14px;
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    width: 100%;/*
    border: 1px solid transparent;*/
}
.q-additional .quiz-input-wrapper {
	background: #FFFFFF;
	border-radius: 7px;
	padding: 0px 0px 10px;
	overflow: hidden;
    font-size: 14px;
    flex-grow: 1;
    width: 100%;
}
.quiz-image {
	text-align: center;
	margin-bottom: 12px;
}
.q-style .quiz-image {
	flex-grow: 1;
}
.quiz-text {
	font-weight: 400;
	font-size: 18px;
	line-height: 1.3;
	color: var(--color-black);
	text-align: center;
	margin-bottom: 12px;
}
.q-style input:checked + .quiz-input-wrapper {
	border: 1px solid var(--color-red);
}
.q-style .radio-label {
	position: relative;
	padding-left: 25px;
}
.q-style .radio-label:before {
	content: url(images/checkbox.svg);
	position: absolute;
	left: 0px;;
	width: 28px;
	height: 28px;
	border-radius: 4px;
}
.q-style input:checked + .quiz-input-wrapper .radio-label:before {
	content: url(images/checkbox-active.svg);
}
.radio-label {
    position: relative;
    padding-left: 0px;
    width: 28px;
    height: 28px;
    display: block;
    margin: 0 auto;
}
.q-shape .quiz-input-wrapper,
.q-feature .quiz-input-wrapper {
	font-weight: 400;
	font-size: 14px;
	line-height: 1;
	border-radius: 7px;
	color: var(--color-black);
	padding: 10px 10px 10px 40px;
	position: relative;
	background: #ffffff;
	cursor: pointer;
	border: 1px solid transparent;
}
.q-shape .quiz-input-wrapper:before,
.q-feature .quiz-input-wrapper:before {
	content: url(images/checkbox.svg);
	position: absolute;
	left: 10px;
	top: calc(50% - 9px);
	width: 28px;
	height: 28px;
	border-radius: 4px;
}
.q-shape input:checked + .quiz-input-wrapper:before,
.q-feature input:checked + .quiz-input-wrapper:before {
	content: url(images/checkbox-active.svg);
}
.q-shape input:checked + .quiz-input-wrapper,
.q-feature input:checked + .quiz-input-wrapper {
	border: 1px solid var(--color-red);
	color: var(--color-red);
}
.q-size {
	grid-gap: 16px;
}
.quiz-input-wrapper {
	line-height: 1;
	color: #6F6F6F;
	transition: all 0.2s ease;
	border: 1px solid #E4E4E4;
}
.quiz-row-grid {
	display: grid;
	grid-gap: 100px;
	grid-template-columns: auto 1fr;
}
.quiz-select input[type='checkbox'],
.quiz-select input[type='radio'] {
	position: absolute;
	opacity: 0;
	cursor: pointer;
	height: 0;
	width: 0;
}
.num-input {
	display: flex;
	align-items: center;
}
.num-wrap {
	position: relative;
}
.num-btn {
	position: absolute;
	right: 10px;
	top: 7px;
}
.num-btn.minus {
	top: auto;
	bottom: 7px;
}
.quiz-select input[type='number'] {
	background: #FFFFFF;
	border: 1px solid var(--color-red);
	border-radius: 3px;
	font-family: inherit;
	padding: 10px 20px 10px 10px;
	margin: 0 10px;
	font-weight: 400;
	font-size: 16px;
	line-height: 19px;
	width: 80px;
}
.quiz-select input[type='number']::-webkit-inner-spin-button,
.quiz-select input[type='number']::-webkit-outer-spin-button {
    -webkit-appearance: none;
  	margin: 0;
}
.quiz-select input[type=number] {
  -moz-appearance: textfield;
}
.calc-form {
	/*max-width: 491px;*/
}
.calc-text {
	font-size: 18px;
	line-height: 1.4;
	color: var(--color-black);
	margin-bottom: 25px;
	max-width: 472px;
}
.calc-form .wpcf7-form {
	display: flex;
	gap: 10px;
}
.calc-form .row-form {
	width: 100%;
}
.calc-form .row-form > div:last-of-type {
	flex: 1 1;
}
.calc-form .row-form .btn {
	width: 100%;
}
/* 404 */
.page-404 {
	padding: 0px 0px 100px;
	text-align: center;
}
.page-404 p {
	margin-top: 140px; 
	color: var(--color-grey);
	font-weight: 700;
	font-size: 30px;
}
.page-404 .btn {
	margin-top: 50px;
}
/* Internal page */
body:not(.page-template-page-main) .header-top {
	margin-bottom: 0px;
}
body:not(.page-template-page-main) .header-menu {
	display: none;
}
.internal-page {
	padding: 160px 0px 100px;
}

/* Media queries */
@media (hover: none) and (pointer: coarse) {
    .fslightbox-open body {
	    margin-right: 0px!important;
	}
}
@media screen and (max-width: 1200px) {
	.container {
		max-width: 992px;
	}
	.header-top {
		font-size: 14px;
	}
	.header-top > div:not(:last-of-type) {
		padding-right: 20px;
		margin-right: 20px;
	}
	.header-logo {
		flex-basis: 180px;
	}
	.header-hours {
		flex-basis: 160px;
	}
	.header-address a {
		gap: 10px;
	}
	.header-address a:before {
		font-size: 30px;
	}
	.header-phones {
		font-size: 17px;
		flex-basis: 150px;
	}
	.header-phones .callback {
		font-size: 13px;
	}
	.header-menu ul a {
		font-size: 18px;
		padding-bottom: 8px;
	}
	.fixed .header-menu ul a {
	    font-size: 14px;
	    padding-bottom: 0px;
	}
	.tc-title {
	    font-size: 52px;
	    margin-bottom: 35px;
	}
	.tc-info {
	    margin-bottom: 50px;
	    gap: 15px;
	}
	.info-item .info-text {
	    font-size: 20px;
	}
	.is-info-item .info-text {
	    font-size: 16px;
	}
	h2 {
		font-size: 40px;
	}
	.block-text div {
	    font-size: 16px;
	}
	.kitchen .project-price {
	    font-size: 18px;
	}
	.catalog-text {
	    font-size: 22px;
	}
	.designers-subtitle {
		font-size: 30px;
	}
	.designers-desc {
	    font-size: 18px;
	}
	.des-text {
		font-size: 18px;
	}
	.designer-info {
		font-size: 18px;
	}
	.review-text {
		font-size: 15px;
		line-height: 1.5;
	}
}
@media screen and (max-width: 1024px) {
	.container {
		max-width: 900px;
	}
	.header-top {
		font-size: 14px;
		margin-bottom: 10px;
	}
	.header-top > div:not(:last-of-type) {
		padding-right: 10px;
		margin-right: 10px;
	}
	.header-logo {
		flex-basis: 140px;
	}
	.logo-slogan {
		font-size: 7px;
	}
	.header-hours {
		flex-basis: 160px;
	}
	.header-address a:before {
		font-size: 30px;
	}
	.header-phones {
		font-size: 14px;
		flex-basis: 130px;
	}
	.btn-small {
		font-size: 12px;
		min-width: 175px;
    	padding: 15px 18px;
	}
	.header-phones .callback {
		font-size: 13px;
	}
	.header-menu ul a {
		font-size: 16px;
		padding-bottom: 4px;
	}
	.fixed .header-menu ul a {
	    font-size: 12px;
	    padding-bottom: 0px;
	}
	.hm-btn .btn {
	    min-width: 150px;
	    padding: 12px 20px;
	    font-size: 11px;
	}
	.top-section {
		padding: 60px 0px 0px;
	}
	.tc-title {
	    font-size: 44px;
	    margin-bottom: 26px;
	    max-width: 500px;
	}
	.tc-info {
	    margin-bottom: 32px;
	    gap: 15px;
	}
	.info-item .info-text {
	    font-size: 18px;
	}
	.info-wrapper {
	    gap: 20px;
	}
	.is-info-item .info-text {
	    font-size: 16px;
	}
	.promos-bottom {
	    grid-gap: 40px 80px;
	    margin-top: 50px;
	}
	.promos-total:after {
	    right: -68px;
	    transform: scale(0.8);
	}
	.discount-section {
	    padding: 60px 0px 55px;
	}
	.discount-content {
	    margin-bottom: 60px;
	}
	.discount-content ul {
	    font-size: 18px;
	}
	.discount-content ul li:not(:last-of-type) {
	    margin-bottom: 16px;
	}
	.discount-form > p {
	    font-size: 18px;
	    margin: 0px 0px 21px;
	}
	.discount-grid {
	    grid-template-columns: 1fr 300px;
	}
	.kitchens-section {
		padding: 40px 0px 60px;
	}
	h2 {
		font-size: 32px;
		margin-bottom: 40px;
	}
	.blocks-list {
	    gap: 25px;
	}
	.block-item {
	    flex-basis: calc((100% - 50px) / 3);
	}
	.block-text div {
	    font-size: 16px;
	}
	.kitchen .project-price {
	    font-size: 18px;
	}
	.catalog-text {
	    font-size: 22px;
	}
	.designers-grid {
	    grid-gap: 25px 40px;
	}
	.designers-subtitle {
		font-size: 24px;
	}
	.designers-desc {
	    font-size: 16px;
	}
	.des-text {
		font-size: 16px;
	}
	.designer-info {
		font-size: 16px;
	}
	.section-actions {
	    margin-top: 60px;
	}
	.solutions-section {
		padding: 80px 0px;
	}
	.steps-section {
		padding: 100px 0px 40px;
	}
	.reviews-section {
	    padding: 40px 0px 80px;
	}
	.review {
		grid-gap: 20px 30px;
		grid-template-columns: 1fr 1fr;
		padding: 40px 45px;
	}
	.review-images div {
	    min-height: 146px;
	}
	.review-text {
		font-size: 15px;
		line-height: 1.5;
	}
	.top-section.t-bottom {
	    padding: 100px 0px 0px;
	}
	.form-section {
	    padding: 60px 0px;
	}
	.contacts-section {
	    padding: 60px 0px;
	}
	.question-wrapper {
	    grid-gap: 20px;
	}
	.pt-selected {
	    font-size: 14px;
	}
	.pt-confirm {
	    font-size: 10px;
	}
	.footer {
		padding: 30px 0px;
	}
	.footer-wrapper {
		flex-direction: column;
		gap: 30px;
	}
	.modal {
	    width: 400px;
	    padding: 40px 40px 30px;
	}
	.modal p {
		font-size: 18px;
		margin-bottom: 20px;
	}
}
@media screen and (max-width: 900px) {
	.header-top {
	    font-size: 13px;
	}
	.fixed .header-menu {
	    gap: 20px;
	}
}
@media screen and (max-width: 840px) {
	.btn {
		font-size: 13px;
	    line-height: 14px;
	    padding: 17px 25px;
	    min-width: 170px;
	}
	.header {
		padding: 15px 0px 20px;
	}
	.header-top {
	    font-size: 10px;
	}
	.fixed .header-menu {
	    gap: 20px;
	}
	.header-top > div:not(:last-of-type) {
		padding-right: 15px;
		margin-right: 15px;
	}
	.header-hours {
		flex-basis: 120px;
	}
	.header-address a:before {
		font-size: 30px;
	}
	.header-phones {
		font-size: 14px;
		line-height: 1.8;
		flex-basis: 124px;
	}
	.btn-small {
		font-size: 10px;
		min-width: 138px;
    	padding: 12px 10px;
	}
	.header-phones .callback {
		font-size: 12px;
	}
	.header-menu ul a {
		font-size: 15px;
		padding-bottom: 4px;
	}
	.fixed .header-menu ul a {
	    font-size: 10px;
	    padding-bottom: 0px;
	}
	.top-section {
	    padding: 50px 0px 0px;
	}
	.success-page .top-section {
		padding: 140px 0px 0px;
	}
	.tc-promo {
		max-width: 416px;
	}
	.tc-text {
		font-size: 18px;
		max-width: 282px;
	}
	.promo-title {
		font-size: 23px;
	}
	.promo-text {
		font-size: 16px;
	}
	.promo-date {
		font-size: 14px;
	}
	.promo-form input.wpcf7-text {
	    font-size: 13px;
	    line-height: 14px;
    	padding: 17px 18px;
	}
	.info-section {
	    padding: 50px 0px 26px;
	}
	.info-wrapper {
	    gap: 16px;
	}
	.is-info-item .info-text {
	    font-size: 16px;
	}
	.kitchens-section {
	    padding: 31px 0px 0px;
	}
	.kitchens .slick-list {
		overflow: visible;
		width: 100%;
	}
	.kitchens .slick-track {
		display: flex;
	}
	.slick-initialized .slick-slide.kitchen {
		width: 323px;
		flex-basis: 323px;
		margin-right: 30px;
		height: inherit!important;
		display: flex;
	}
	.kitchen .block-text {
	    font-size: 15px;
	}
	.pi-item__value {
		font-size: 16px;
	}
	.kitchen .project-price {
	    font-size: 20px;
	}
	.kitchen .project-old-price {
	    font-size: 16px;
	}
	.kitchens-slider-nav {
		display: flex;
	}
	.kitchens .slick-dots {
		margin-top: 20px;
	}
	.kitchens .slick-dots li {
		margin: 0px 6px;
	}
	.kitchens .slick-dots li button:before {
		background: #393939;
		opacity: 0.2;
		width: 8px;
    	height: 8px;
    	transition: all 0.3s ease;
	}
	.kitchens .slick-dots li.slick-active button:before {
		background: var(--color-red);
		opacity: 1;
	}
	.catalog-section {
	    padding: 60px 0px 0px;
	}
	.catalog-text {
		font-size: 20px;
		margin-bottom: 40px;
	}
	.catalog-text p:not(:last-of-type) {
	    margin-bottom: 12px;
	}
	.catalog .block-text {
	    padding: 20px 10px;
	}
	.catalog .block-text h3 {
	    font-size: 17px;
	}
	.designers-grid {
		grid-template-areas:
			"t t"
			"s d"
			"s f";
		grid-gap: 20px 30px;
	}
	.designers-subtitle {
		margin-bottom: 30px;
		font-size: 24px;
	}
	.designers-desc {
		font-size: 18px;
	}
	.dslider-btn {
		width: 36px;
		height: 36px;
		font-size: 16px;
		left: -18px;
	}
	.designers-next {
	    right: -18px;
	    left: auto;
	}
	.solutions-section {
	    padding: 80px 0px;
	}
	.solution .block-text {
	    padding: 20px 10px;
	}
	.solution .block-text h3 {
	    font-size: 16px;
	}
	.reasons {
		gap: 40px 50px;
	}
	.reason {
	    flex-basis: calc((100% - 50px) / 2);
	}
	.step .block-text {
	    padding: 20px 10px;
	}
	.step .block-text h3 {
	    font-size: 18px;
	}
	.step .block-text div {
	    font-size: 16px;
	}
	.reviews-section {
	    padding: 40px 0px 60px;
	}
	.review-date {
		font-size: 14px;
	}
	.review-name {
	    font-size: 20px;
	}
	.review-text {
	    font-size: 14px;
	    margin-bottom: 26px;
	}
	.review-address {
	    font-size: 16px;
	    margin-bottom: 30px;
	}
	.step .block-text h3 {
	    font-size: 16px;
	}
	.step .block-text div {
	    font-size: 12px;
	}
	.q-style {
		gap: 10px;
	}
	.quiz-text {
		font-size: 12px;
	}
	.discount-section {
	    padding: 50px 0px 0px;
	    background-position: 70% 50%;
	}
	.discount-grid {
    	display: flex;
    	flex-direction: column-reverse;
    	align-items: flex-start;
    	gap: 0px;
	}
	.discount-form {
		transform: translateY(40px);
	}
	.discount-content {
	    margin-bottom: 40px;
	}
	.discount-content ul {
	    font-size: 14px;
	}
	.discount-content ul li::before {
	    width: 22px;
	    height: 22px;
	    margin-right: 10px;
	}
	.discount-cards {
		grid-template-columns: repeat(4, 1fr);
		grid-gap: 10px;
		max-width: 400px;
	}
	.row-form input {
	    height: 50px;
	}
	.top-section.t-bottom {
	    padding: 80px 0px 0px;
	}
	.questions-section {
	    padding: 60px 0px 60px;
	}
	.questions-grid {
	    grid-template-columns: 4fr 3fr 4fr;
	    grid-gap: 25px 33px;
	}
	.qc-item {
	    padding: 20px 13px;
	}
	.qc-name {
	    margin-top: 28px;
	    font-size: 18px;
	}
	.form-section {
		padding: 50px 0px;
	}
	.fs-title {
	    font-size: 20px;
	    max-width: 578px;
	}
	.footer {
		padding: 20px 0px;
	}
	.modal p {
	    font-size: 16px;
	    margin-bottom: 20px;
	}
	.modal.quiz-modal {
		padding: 40px;
	}
	.quiz-form-title {
	    font-size: 26px;
	    margin-bottom: 30px;
	}
	.q-style {
	    gap: 10px;
	}
	.q-size {
	    gap: 10px;
	}
	.q-size .quiz-input-wrapper {
	    padding: 15px 30px;
	}
	.quiz-section {
	    padding: 50px 0px 40px;
	}
	.quiz-modal .calc-text {
	    font-size: 14px;
	}
	.calc-text {
		font-size: 16px;
	}
	.block-item.promo {
	    flex-basis: calc((100% - 25px) / 2);
	}
	.promos-bottom {
		grid-template-columns: 1fr;
		max-width: 500px;
	    margin-left: auto;
	    margin-right: auto;
	}
	.promos-total:after {
		content: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iOCIgaGVpZ2h0PSIyMiIgdmlld0JveD0iMCAwIDggMjIiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxwYXRoIGQ9Ik0zLjY0NjQ1IDIxLjE3MzRDMy44NDE3MSAyMS4zNjg2IDQuMTU4MjkgMjEuMzY4NiA0LjM1MzU1IDIxLjE3MzRMNy41MzU1MyAxNy45OTE0QzcuNzMwOCAxNy43OTYxIDcuNzMwOCAxNy40Nzk2IDcuNTM1NTMgMTcuMjg0M0M3LjM0MDI3IDE3LjA4OSA3LjAyMzY5IDE3LjA4OSA2LjgyODQzIDE3LjI4NDNMNCAyMC4xMTI3TDEuMTcxNTcgMTcuMjg0M0MwLjk3NjMxIDE3LjA4OSAwLjY1OTcyOCAxNy4wODkgMC40NjQ0NjUgMTcuMjg0M0MwLjI2OTIwMyAxNy40Nzk2IDAuMjY5MjAzIDE3Ljc5NjEgMC40NjQ0NjUgMTcuOTkxNEwzLjY0NjQ1IDIxLjE3MzRaTTMuNSAwLjgxOTgyNEwzLjUgMjAuODE5OEw0LjUgMjAuODE5OEw0LjUgMC44MTk4MjRMMy41IDAuODE5ODI0WiIgZmlsbD0iI0UzMDEwRiIvPgo8L3N2Zz4K");
	    right: calc(50% - 4px);
	    bottom: -35px;
	    transform: unset;
	}
	.models-list {
		grid-template-columns: repeat(2, 1fr);
	}
}
@media screen and (max-width: 780px) {
	.header-top > div:not(:last-of-type) {
	    padding-right: 13px;
	    margin-right: 13px;
	}
	.btn-small {
	    min-width: 100%;
	}
	.top-section {
	    padding: 34px 0px 0px;
	}
	.tc-title {
	    font-size: 38px;
	    margin-bottom: 26px;
	    max-width: 450px;
	}
	.is-info-item {
		padding: 30px 10px;
	}
	.info-item .info-text {
	    font-size: 16px;
	}
	.info-item .info-icon {
	    flex-basis: 28px;
	    width: 28px;
	}
	.top-wrapper {
		margin: 0px -15px;
		padding: 0px 15px 48px;
		background-position-x: calc(100% + 50px);
	}
	.success-page .top-wrapper {
		margin: 0px;
		background-position-x: right;
	}
	.success-page .top-section {
		padding: 40px 0px 0px;
	}
	.success-page .top-wrapper {
		padding-top: 100px;
	    padding-bottom: 175px;
	}
	.success-page .tc-title {
		max-width: 210px;
	}
	.models-section {
	    padding: 53px 0px 0px;
	}
	.block-text h3.promo-title {
		font-size: 14px;
	}
	.promo-price {
	    font-size: 18px;
	    margin-bottom: 35px;
	}
	.quiz-section-wrap {
		padding: 32px 22px;
	}
	.quiz-row-title {
		font-size: 18px;
	}
	.quiz-row-grid {
		grid-gap: 40px;
	}
	.wpcf7-form input.wpcf7-text {
		font-size: 14px;
		text-align: center;
	}
	.discount-content ul li {
		gap: 12px;
	}
	.discount-content ul li::before {
		margin-right: 0px;
	}
	.review {
		grid-template-columns: 1fr;
		padding: 40px 56px;
	}
	.review-name {
		max-width: unset;
	}
	.review-name br {
		display: none;
	}
	.review-text {
		padding-right: 0px;
	}
	.contacts-info {
		left: 60px;
	}
}
@media screen and (max-width: 760px) {
	.header-top {
		margin-bottom: 28px;
	}
	.header-logo {
	    flex-basis: 120px;
	}
	.header-phones {
	    font-size: 12px;
	    flex-basis: 110px;
	}
	.header-phones .callback {
	    font-size: 11px;
	}
	.header-hours {
	    flex-basis: 95px;
	}
	.header-menu ul {
		gap: 5px;
	}
	.fixed .header-menu ul a {
	    font-size: 9px;
	    padding-bottom: 0px;
	}
	.quiz-shape {
	    width: 60px;
	    height: 60px;
	    font-size: 10px;
	}
	.icon-line:before {
	    font-size: 2px;
	}
	.q-shape {
		display: grid;
		grid-template-columns: repeat(3, 1fr);
		grid-gap: 30px;
	}
	.calc-text {
	    font-size: 16px;
	}
}
@media screen and (max-width: 700px) {
	.fixed .header-menu {
	    gap: 10px;
	}
	.header-top > div:not(:last-of-type) {
		padding-right: 10px;
		margin-right: 10px;
	}
	.fixed .hm-logo {
	    flex-basis: 100px;
	}
	.hm-btn .btn {
	    min-width: 100px;
	    padding: 12px 10px;
	    font-size: 10px;
	    height: 0;
	}
	.fixed .hm-btn .btn {
	    height: auto;
	}
	.block-item:hover {
	    transform: unset;
	}
	.top-wrapper {
		background-position: right -100px bottom;
	}
}
@media screen and (max-width: 660px) {
	.btn {
	    font-size: 12px;
	    padding: 17px 10px;
	    min-width: 150px;
	}
	.btn-small {
	    min-width: 80px;
	    padding: 10px 10px;
	    font-size: 10px;
	}
	.header-address a:before {
	    font-size: 24px;
	}
	.header-menu ul a {
	    font-size: 12px;
	}
	.fixed .header-menu ul a {
	    font-size: 8px;
	}
	.top-section {
	    padding: 50px 0px 0px;
	}
	.info-wrapper {
	    gap: 0;
	    display: grid;
	    grid-gap: 15px;
	    grid-template-columns: 1fr 1fr;
	}
	.is-info-item {
		padding: 20px 10px;
	}
	.block-item {
	    flex-basis: calc((100% - 25px) / 2);
	    flex-grow: 0; 
	}
	.kitchen {
	    flex-basis: 323px;
	}
	.reasons {
	    gap: 40px 40px;
	}
	.reason {
	    flex-grow: 1;
	    flex-basis: calc((100% - 40px) / 2);
	}
	.rslider-btn {
		width: 39px;
		height: 39px;
	}
	.section-actions .btn {
	    min-width: 220px;
	}
	.questions-grid {
	    grid-template-areas: 
	    	"c" 
	    	"r";
	    grid-template-columns: 1fr;
	    max-width: 400px;
	}
	.q-contact-left {
		display: none;
	}
	.qc-item:not(:last-of-type) {
	    margin-bottom: 25px;
	}
	.q-style,
	.q-additional,
	.modal .q-style,
	.modal .q-additional {
		display: grid;
		grid-template-columns: repeat(2, 1fr);
	}
	.q-size {
		text-align: center;
	}
	.quiz-row-grid {
	    grid-gap: 30px;
	    grid-template-columns: 1fr;
	}
	.section-actions form {
	    grid-gap: 10px;
	    grid-template-columns: 1fr;
	}
	.section-actions form input {
	    width: 100%;
	    text-align: center;
	}
}
@media screen and (max-width: 600px) {
	#wpadminbar {
	    position: fixed;
	}
	.tc-title {
	    font-size: 33px;
	    margin-bottom: 26px;
	}
	.info-item .info-icon {
	    /*flex-basis: 36px;*/
	    width: 22px;
	    flex-shrink: 0;
	}
	.info-item .info-text {
	    font-size: 16px;
	}
	.designers-grid {
	    grid-template-areas:
	        "t"
	        "d"
	        "s"
	        "f";
	    grid-template-columns: 1fr;
	    grid-gap: 20px 30px;
	}
	.designers-wrapper {
		max-width: calc(100vw - 30px);
	}
	.dslider-btn {
		left: 0;
		width: 47px;
		height: 47px;
	}
	.designers-next {
		right: 0;
		left: auto;
	}
	.designers-form {
		max-width: unset;
	}
	.reasons {
		gap: 25px;
	}
	.contacts-info {
	    position: relative;
	    padding: 30px 20px;
	    width: calc(100% - 30px);
	    left: 15px;
	    right: 15px;
	    transform: translateY(-30px);
	    box-shadow: 0px 4px 20px rgba(150, 150, 150, 0.25);
	}
	.quiz-section-wrap {
		padding: 30px 15px;
	}
	.quiz-row-grid {
		grid-gap: 0px;
	}
}
@media screen and (max-width: 576px) {
	.nbsp {
		white-space: nowrap;
		display: block;
	}
	.btn {
	    font-size: 14px;
	    padding: 17px 10px;
	    min-width: 200px;
	}
	.btn-small {
		min-width: 150px;
		padding: 10px;
	}
	.header-top {
		display: grid;
		/*grid-template-areas: 
			"l m"
			"l p"
			"h p"
			"a b";*/
		grid-template-areas: 
			"l b m"
			"h p p";
		grid-gap: 13px 10px;
		grid-template-columns: 1fr 1fr;
		margin-bottom: 0px;
		font-size: 12px;
		align-items: start;
	}
	.header.fixed .header-top {
	    display: grid;
	    grid-template-areas: 
			"l b m";
		grid-gap: 13px 10px;
		grid-template-columns: 120px 1fr 35px;
		align-items: center;
	}
	.header.fixed .header-top .header-phones,
	.header.fixed .header-top .header-address,
	.header.fixed .header-top .header-hours {
	    display: none;
	}
	.header.fixed .header-top .mmenu {
	    align-self: center;
	}
	.header-logo {
		grid-area: l;
		width: 120px;
	}
	.logo-slogan {
	    display: none;
	}
	.header.fixed .logo-slogan {
	    display: none;
	}
	.header-hours {
		grid-area: h;
		font-size: 16px;
    	max-width: 180px;
    	line-height: 1.3;
	}
	.header-address {
		grid-area: a;
		display: none!important;
	}
	.header-phones {
		grid-area: p;
		font-size: 16px;
		line-height: 1.3;
		font-weight: 600;
	}
	.header-phones .callback {
	    font-size: 12px;
	    margin-top: 0px;
	}
	.header-btn {
		grid-area: b;
		justify-self: flex-end;
	}
	.header-top > div:not(:last-of-type) {
	    padding-right: 0px;
	    margin-right: 0px;
	}
	.header-top > div:not(:last-of-type):after {
	    display: none;
	}
	.mmenu {
		grid-area: m;
		display: block;
	    height: 35px;
	    width: 35px;
	    border: 1px solid var(--color-red);
	    padding-top: 2px;
	    border-radius: 3px;
	    justify-self: flex-end;
	}
	.menu-close {
    	display: block;
    	align-self: flex-end;
    	font-size: 20px;
	}
	.menu-back {
		position: fixed;
		width: 100%;
		max-width: 100%;
		height: 100vh;
		top: 0;
		right: 0;
		transition: all 0.2s ease;
		background: transparent;
    	z-index: 99;
    	pointer-events: none;
    	opacity: 0;
	}
	.menu-back.visible {
		pointer-events: all;
		opacity: 1;/*
		background: rgba(0, 0, 0, 0.7);*/
	}
	.header-menu {
		position: fixed;
		width: 320px;
		max-width: 100%;
		height: 100vh;
		top: 0;
		right: 0;
		transform: translateX(100%);
		transition: all 0.3s ease;
		background: #ffffff;
		flex-direction: column;
    	padding: 50px 30px;
    	border-bottom: none;
    	z-index: 110;
	}
	.header-menu.menu-open {
		transform: translateX(0%);
		align-items: flex-start;
		box-shadow: 0px 4px 25px rgb(199 199 199 / 80%);
		overflow-y: auto;
		gap: 0;
	}
	.header-menu .hm-logo,
	.header-menu .hm-btn {
		display: none;
	}
	.header-menu ul {
	    flex-direction: column;
	    gap: 0;
	    margin-top: 20px;
	}
	.header-menu ul li:not(:last-of-type) {
	    margin-bottom: 10px;
	}
	.header-menu ul a,
	.fixed .header-menu ul a {
	    font-size: 16px;
	    border-bottom: 0;
	    padding-bottom: 0;
	}
	.top-section {
		padding: 54px 0px 0px;
		position: relative;
		margin-bottom: 240px;
	}
	.top-section.t-bottom {
		padding: 50px 0px 0px;
	}
	.success-page .top-section {
		padding: 33px 0px 0px;
		margin-bottom: 0px;
	}
	.success-page .top-wrapper {
		padding: 0px 0px 415px;
		background-position: bottom center;
	}
	.tc-title {
	    font-size: 32px;
	    max-width: 400px;
	}
	.tc-text {
		font-size: 16px;
		max-width: 225px;
	}
	.top-wrapper {
		padding-bottom: 415px;
	    background-position: bottom center;
	    background-size: 300px;
	}
	.top-section {
	    padding: 33px 0px 0px;
	}
	.top-section:before {
		/*content: "";
		position: absolute;
		top: 0;
		width: 100%;
		height: 100%;
		display: block;
		background: linear-gradient(90deg, rgba(250, 250, 250, 0.5) 58.56%, rgba(255, 255, 255, 0) 75.24%);*/
	}
	.tc-title {
		position: relative;
	}
	.tc-info {
	    margin-bottom: 0px;
	    position: relative;
	    gap: 0px;
	}
	.info-item:not(:last-of-type) {
		margin-bottom: 9px;
	}
	.tc-promo {
		position: absolute;
		top: 100%;
		left: 15px;
    	right: 15px;
	    max-width: unset;
	    margin: -15px auto 0px;
	    padding: 15px 46px 19px;
	}
	.models-list {
	}
	.models-wrap .rslider-btn {
		display: flex;
	}
	.model {
		padding: 24px 30px;
		box-shadow: 0px 0px 20px rgba(150, 150, 150, 0.25);
		border-radius: 15px;
		margin: 15px;
	}
	.row-form {
		display: block;
	}
	.row-form input.wpcf7-text {
	    border-radius: 5px;
	    margin-bottom: 10px;
	    background: #f9f9f9;
	}
	.row-form .btn {
	    border-radius: 5px;
	    width: 100%;
	}
	.kitchens-slider-nav {
	    display: none;
	}
	.kitchen {
		flex-basis: 100%;
		margin-right: 0;
		display: none;
	}
	.kitchen-active {
		display: flex;
	}
	.show-more {
		display: block;
		width: 100%;
	}
	.block-item {
	    flex-basis: 100%;
	    flex-grow: 1;
	}
	.promos-title br {
		display: none;
	}
	.blocks-list.promos {
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		grid-gap: 10px;
	}
	.promo .block-text {
	    padding: 38px 7px 20px;
	}
	.block-text h3.promo-title {
		width: 100%;
		max-width: 200px;
	}
	.promo-checkbox {
	    height: 24px;
	    width: 24px;
	    top: 8px;
	    right: calc(50% - 12px);
	    background-size: contain;
	}
	.steps-section {
	    padding: 90px 0px 40px;
	}
	.step .block-text div {
	    font-size: 14px;
	}
	.step .block-text {
	    padding: 20px 12px 30px;
	}
	.reason.slick-slide {
		padding: 18px;
		box-shadow: 0px 4px 20px rgba(150, 150, 150, 0.25);
		border-radius: 15px;
	}
	.qc-photo {
		width: 176px;
		height: 176px;
		padding: 0;
		margin-right: auto;
		margin-left: auto;
	}
	.reviews-wrapper {
		margin: 0px -15px;
	}
	.review {
	    grid-gap: 20px 12px;
	    padding: 40px 30px;
	}
	.review-info {
	    align-self: center;
	}
	.review-address {
	    font-size: 14px;
	    margin-bottom: 19px;
	}
	.review-rating {
		padding: 16px 14px 16px 24px;
		font-size: 14px;
		align-items: flex-start;
		margin-top: 0px;
		margin-bottom: 19px;
	}
	.review-rating span {
		margin-left: 0px;
	}
	.icon-stars:before {
		transform: scale(0.6);
		transform-origin: left;
	}
	.review-photo {
		height: 64px;
	    width: 64px;
	    position: relative;
	}
	.review-photo img {
		border-radius: 50%;
		width: 100%;
		position: absolute;
		object-fit: cover;
	}
	.review-text {
	    margin-bottom: 15px;
	}
	.review-images {
		grid-gap: 10px;
	}
	.review-images div {
	    min-height: 125px;
	}
	.review-image {
		position: relative;
	}
	.review-image img {
		position: absolute;
		width: 100%;
		height: 100%;
		top: 0;
		object-fit: cover;
		object-position: center;
	}
	.review-rating {
		flex-direction: column;
	}
	.reviews-slider {
		overflow-x: hidden;
	}
	.section-actions {
	    margin-top: 30px;
	    gap: 0px;
	    flex-direction: column;
	    align-items: center;
	}
	.reviews-section .section-actions {
	    margin-top: 0px;
	}
	.section-actions .btn:not(:last-of-type) {
	    margin-bottom: 12px;
	}
	.internal-page {
	    padding: 250px 0px 50px;
	}
	.modal.quiz-modal {
	    padding: 40px 20px;
	}
	.quiz-form-row {
		margin-bottom: 40px;
	}
	.calc-form .wpcf7-form {
	    flex-direction: column;
	    gap: 0px;
	}
	.desktop-hidden {
		display: block!important;
	}
	.mobile-hidden {
		display: none!important;
	}
	.contacts-section {
	    padding: 60px 0px 20px;
	}
	.ci-item__value {
	    display: flex;
	    align-items: center;
	    font-weight: 600;
	    line-height: 1.5;
	}
	.ci-item__value:before {
	    color: var(--color-red);
	    font-size: 34px;
	    margin-right: 17px;
	}
	.ci-item__value.icon-phone a {
		display: block;
		font-size: 16px;
	}
	.models-list {
		grid-template-columns: 1fr;
	}
	.block-item.promo {
	    flex-basis: 100%;
	}
	.discount-section {
		background: none;
	}
	.discount-content ul {
	    font-size: 16px;
	}
	.discount-form {
		padding: 24px 15px;
	}
	.discount-form > p {
	    font-size: 16px;
	    margin: 0px 0px 18px;
	}
	.q-contact-right {
	    justify-self: center;
	}
	.qc-item {
	    padding: 20px 15px;
	}
	.qc-item > * {
		font-size: 16px;
	}
	.qc-item .icon-phone span, .qc-item .icon-phone a {
		margin-left: 18px;
	}
}
@media screen and (max-width: 481px) {
	.promos-total {
		flex-direction: column;
		gap: 16px;
	}
	.pt-confirm {
	    font-size: 14px;
	    text-align: center;
	}
}
@media screen and (max-width: 460px) {
	.btn-small {
	    min-width: unset;
	    font-size: 10px;
	}
}
@media screen and (max-width: 426px) {
	.top-section {
	    background-position: top right 35%;
	}
	.header {
	    padding: 10px 0px 15px;
	}
	.header-phones {
	    grid-area: p;
	    font-size: 12px;
	    line-height: 1.3;
	    font-weight: 600;
	}
	.header-hours {
		font-size: 12px;
		max-width: 160px;
	}
	.review {
	    padding: 30px 25px;
	}
	.review-action .btn {
	    min-width: unset;
	    width: 100%;
	}
	.review-slide.slick-slide {
	    padding: 15px 15px 20px;
	}
	.q-style {
		/*grid-template-columns: 1fr;*/
	}
	.q-shape {
		grid-template-columns: repeat(2, 1fr);
	}
	.q-size .quiz-input-wrapper {
	    padding: 10px 12px;
	}
	.contacts-info {
	    width: 100%;
	    left: 0px;
	    right: 0px;
	}
	.footer-wrapper {
	    gap: 0px;
	}
	.footer-right {
		margin-top: 25px;
	    flex-direction: column;
	    gap: 0px;
	}
	.copyright {
		margin-bottom: 15px;
	}
}
@media screen and (max-width: 365px) {
	.header-top {
	    grid-gap: 10px 10px;
	    font-size: 10px;
	}
	.btn-small {
	    font-size: 8px;
	    padding: 10px 5px;
	}
	.header-hours {
	    font-size: 10px;
	    max-width: 130px;
	}
	.header-phones,
	.header-phones .callback {
	    font-size: 10px;
	}
	.modal {
	    width: 400px;
	    padding: 40px 20px 30px;
	}
	.tc-title {
		font-size: 27px;
	}
}
@media screen and (min-width: 1025px) and (max-height: 800px) {
	.top-section {
		padding: 40px 0px 0px;
	}
	.header-top {
		margin-bottom: 15px;
	}
	/*.top-section {
		padding: 200px 0px 30px;
	}*/
	.success-page .top-section {
		padding: 150px 0px 0px;
	}
	.success-page .top-wrapper {
		padding-bottom: 193px;
	}
	.tc-title {
		font-size: 52px;
		margin-bottom: 20px;
	}
	.tc-info {
		margin-bottom: 25px;
		gap: 10px;
	}
	.info-item .info-text {
	    font-size: 20px;
	}
	.tc-promo {
		padding: 15px 20px;
	}
}
@media screen and (max-width: 575px) and (max-height: 840px) {
	/*.header-top {
		margin-bottom: 15px;
	}*/
	.top-section {
		padding: 20px 0px 0px;
	}
	/*.tc-title {
		font-size: 52px;
		margin-bottom: 20px;
	}*/
	.tc-promo {
		padding: 15px 40px;
	}
}




.show-on-desktop {
    font-family: inherit;
    font-size: inherit;
    transition: all 0.3s ease;
}
.show-on-desktop.red {
    text-decoration: underline;
}
.show-on-desktop.red:hover {
    color: #0064FF;
}
.ci-item__value a.show-on-mobile,
.show-on-mobile {
	display: none;
}

@media (hover: none) and (pointer: coarse) {
	.ci-item__value button.show-on-desktop,
    .show-on-desktop {
	    display: none;
	}
	.show-on-mobile {
		display: inline-block;
	}
	.ci-item__value a.show-on-mobile {
		display: block;
	}
	.modal-overlay.focus {
		padding-bottom: 250px;
	}
	/*.focus .quiz-modal {
		transform: translateY(-250px);
	}*/
}

/*modal*/
.modalPP {
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, 0.5);
	opacity: 0;
	visibility: hidden;
	transform: scaleX(1.1) scaleY(1.1);
	transition: visibility 0s linear 0.25s, opacity 0.25s 0s, transform 0.25s;
	font-family: sans-serif;
	z-index:1000;
}
.modal-contentPP {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	background-color: white;
	padding: 1rem 1.5rem;
	width: 80vw;
	height: 80vh;
	border-radius: 0.5rem;
	overflow-y: auto;
}
.close-button {
	float: right;
	width: 1.5rem;
	line-height: 1.5rem;
	text-align: center;
	cursor: pointer;
	border-radius: 0.25rem;
	background-color: lightgray;
}
.close-button:hover {
	background-color: darkgray;
}
.show-modalPP {
	opacity: 1;
	visibility: visible;
	transform: scaleX(1.0) scaleY(1.0);
	transition: visibility 0s linear 0s, opacity 0.25s 0s, transform 0.25s;
}
@media only screen and (max-width: 50rem) {
	.modal-content {
		width: calc(100% - 5rem);
	}
}
/*ref modal form*/
.calc-form .wpcf7-form {
	flex-direction: column;
	gap:0px;
}
/*privacy policy*/
.privacy-policy-txt{
	width:100%;
}
.privacy-policy-txt>p{
	text-align: center;
	font-size: x-small;
	color:#626262;
}
.pptFirstrow {
	margin-top: 15px;
}
.privacy-policy-txt a {
	color:#626262;
}
.privacy-policy-txt a:hover {
	color:#262626;
}
.grid-row{
	grid-area: 2 / 1 / 3 / 3;
}
@media screen and (max-width: 660px) {
	.grid-row{
		grid-area: 3 / 1 / 4 / 2;
	}
}
/*footer*/
.footer-right{
	flex-direction: column;
	gap: 0px;
}
.row-footer{
	flex-direction: row;
  	display: flex;
  	gap: 30px;
}