@charset "UTF-8";
/* Google Fonts загружается через <link preconnect>+<link rel="stylesheet"> в header.php — НЕ через @import */
html {
  box-sizing: border-box;
  scroll-behavior: smooth;
  height: 100%;
}


.project-about__slider{
	position: relative;
}


body {
  height: 100%;
}

* {
  padding: 0;
  margin: 0;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

a:focus,
a:active {
  outline: none;
}

a, a:link, a:visited {
  text-decoration: none;
}

a:hover {
  text-decoration: none;
}

aside, nav, footer, header, section, main {
  display: block;
}

h1, h2, h3, h4, h5, h6, p {
  font-size: inherit;
  font-weight: inherit;
}

ul, ul li {
  list-style: none;
  margin: 0;
}

address {
  font-style: normal;
}

input, textarea, button, select {
  font-family: inherit;
  font-size: inherit;
  color: inherit;
  background-color: transparent;
}

input::-ms-clear {
  display: none;
}

button, input[type=submit] {
  display: inline-block;
  box-shadow: none;
  background-color: transparent;
  background: none;
  cursor: pointer;
}

input:focus, input:active,
button:focus, button:active {
  outline: none;
}

button::-moz-focus-inner {
  padding: 0;
  border: 0;
}

label {
  cursor: pointer;
}

legend {
  display: block;
}

button {
  background-color: transparent;
  padding: 0;
  border: none;
  cursor: pointer;
}

a {
  display: block;
}

html {
  scrollbar-gutter: auto;
  font-size: 0.6597222222vw;
}
@media (max-width: 1440px) {
  html {
    font-size: 0.6944444444vw;
  }
}
@media (max-width: 1050px) {
  html {
    font-size: 1.9230769231vw;
  }
}
@media (max-width: 600px) {
  html {
    font-size: 2.5641025641vw;
  }
}

.wrapper {
  height: 100%;
  display: flex;
  flex-direction: column;
}

body {
  scroll-behavior: smooth;
  font-family: "Inter", sans-serif;
  font-size: 1.6rem;
  background: #f7f2ee;
}
body.no-scroll {
  overflow: hidden;
}
body.hidden {
  overflow: hidden;
}

.container {
  max-width: 120rem;
  margin: 0 auto;
}
@media (max-width: 1050px) {
  .container {
    padding: 0 1.6rem;
  }
}

.nav-select__top{
	cursor: pointer;
}

.btn {
  padding: 1.6rem;
  border-radius: 1rem;
  box-shadow: inset 0 4px 4px 0 rgba(255, 255, 255, 0.25), 0 4px 4px 0 rgba(0, 0, 0, 0.25), inset 0 -4px 4px 0 rgba(76, 46, 38, 0.18);
  background: #570200;
  font: 400 1.6rem "Inter", sans-serif;
  color: #fff;
  text-align: center;
}

main {
  flex: 1;
}

.hamburger {
  position: relative;
  width: 4rem;
  height: 4rem;
  display: none;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  cursor: pointer;
  background: transparent;
  border: none;
  padding: 0;
  transition: all 0.3s ease;
  margin-left: 1.6rem;
}

.hamburger {
  display: none;
}

@media (max-width: 1024px) {
  .hamburger {
    display: flex;
  }
}
.hamburger__line {
  position: absolute;
  width: 3rem;
  display: block;
  height: 0.3rem;
  background: #570200;
  border-radius: 0.3rem;
  transition: all 0.3s ease;
}

.hamburger__line:nth-child(1) {
  transform: translateY(-1rem);
}

.hamburger__line:nth-child(2) {
  /* Центральная линия */
}

.hamburger__line:nth-child(3) {
  transform: translateY(1rem);
}

/* Анимация при добавлении класса active */
.hamburger.active .hamburger__line:nth-child(1) {
  transform: translateY(0) rotate(45deg);
}

.hamburger.active .hamburger__line:nth-child(2) {
  opacity: 0;
  transform: scaleX(0);
}

.hamburger.active .hamburger__line:nth-child(3) {
  transform: translateY(0) rotate(-45deg);
}

.btn {
  transition: all 0.3s;
}
.btn:hover {
  background: #320302 !important;
}

.header {
  padding-top: 3rem;
  position: relative;
  z-index: 99999;
}
@media (max-width: 1024px) {
  .header {
    padding-top: 2rem;
  }
}
.header__tel {
  display: none;
}
@media (max-width: 1024px) {
  .header__tel {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 3.5rem;
    height: 3.5rem;
    border-radius: 50%;
    background: #570200;
    margin-left: auto;
  }
}
.header .container {
  display: flex;
  justify-content: space-between;
  align-items: center;
  z-index: 9999;
}
@media (max-width: 1024px) {
  .header .container {
    position: relative;
  }
}
.header__logo img {
  width: 22rem;
  height: 5.6rem;
}
@media (max-width: 1024px) {
  .header__logo img {
    width: 17rem;
    height: auto;
  }
}
.header .nav {
  display: flex;
  gap: 2.4rem;
}
@media (max-width: 1024px) {
  .header .nav {
    display: none;
  }
}
.header .nav a {
  font: 400 1.6rem "Inter", sans-serif;
  color: #000;
  transition: all 0.3s;
}
.header .nav a:hover {
  color: #320302 !important;
}
.header .nav-select__top {
  display: flex;
  align-items: center;
  gap: 0.7rem;
}
.header__actions {
  display: flex;
  gap: 1rem;
}
@media (max-width: 1024px) {
  .header__actions {
    display: none;
  }
}
.header__actions svg, .header__actions img {
  width: 4.4rem;
  height: 4.4rem;
}
.header button {
  display: flex;
  align-items: center;
  gap: 1rem;
  padding: 0.75rem 1.65rem;
  background: #570200;
  border-radius: 1rem;
  font: 400 1.6rem "Inter", sans-serif;
  color: #fff;
  height: 4.4rem;
  transition: all 0.3s;
}
.header button:hover {
  background: #320302 !important;
}
.header button svg {
  width: 2.9rem;
  height: 2.9rem;
}

.mobile-menu {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #f7f2ee;
  display: none;
}
@media (max-width: 1024px) {
  .mobile-menu {
    display: flex;
    flex-direction: column;
    opacity: 0;
    visibility: hidden;
    transition: all 0.3s;
    padding: 11rem 1.6rem 3rem;
	  overflow: auto;
  }
  .mobile-menu.visible {
    opacity: 1;
    visibility: visible;
  }
}
.mobile-menu .nav {
  display: flex;
  flex-direction: column;
}
.mobile-menu .header__actions {
  display: flex;
  flex-wrap: wrap;
  margin-top: auto;
}
.mobile-menu .btn {
  width: 100%;
  justify-content: center;
  padding: 1rem !important;
  height: auto;
}

.section__title {
  font: 400 3.6rem "New York", sans-serif;
  color: #42251d;
  margin-bottom: 2.5rem;
}
@media (max-width: 1024px) {
  .section__title {
    font-size: 2.4rem;
    max-width: 70%;
    text-align: center;
    margin: 0 auto 3.7rem;
  }
  .section__title br {
    display: none;
  }
	.mobile-menu .nav{
		margin-bottom: 3rem;
	}
}

.close {
  display: none;
}
@media (max-width: 1024px) {
  .close {
    display: block;
  }
}

.filter-more {
  display: none !important;
}
@media (max-width: 1024px) {
  .filter-more {
    display: flex !important;
  }
}

.section__descr {
  font: 400 1.6rem "Inter", sans-serif;
  color: #000;
  margin-bottom: 3.7rem;
}
@media (max-width: 1024px) {
  .section__descr {
    width: 80%;
    margin: 0 auto 3.7rem;
    text-align: center;
  }
  .section__descr br {
    display: none;
  }
}

.swiper-pagination {
  display: flex;
  justify-content: center;
  position: static;
  gap: 1.1rem;
}

.swiper-pagination-bullet {
  width: 1.2rem;
  height: 1.2rem;
  border-radius: 50%;
  background: #e9d2c0;
  display: block;
  margin: 0 !important;
  opacity: 1;
  transition: all 0.3s;
}

.swiper-pagination-bullet-active {
  background: #570200;
}

.range {
  margin-bottom: 7rem;
}
@media (max-width: 1024px) {
  .range {
    margin-bottom: 5rem !important;
  }
}
.range .range-wrapper {
  width: 100%;
  margin: 2.4rem 0;
  position: relative;
}
.range #slider {
  margin: 1.4rem 0;
}
.range .range-values {
  display: flex;
  justify-content: space-between;
  margin-bottom: 1.4rem;
}
.range .range-values span {
  font: 400 1.8rem "Inter", sans-serif;
  color: rgba(87, 2, 0, 0.4);
}
.range .noUi-horizontal .noUi-handle {
  width: 4.2rem;
  height: 4.2rem;
  border-radius: 50%;
  background: #570200;
  box-shadow: none;
  border: 0.8rem solid #f7f2ee;
  top: -2.1rem;
}
.range .noUi-connect {
  background: #570200;
}
.range .noUi-target {
  box-shadow: none;
  border: 1px solid #570200;
  background: transparent;
  height: 0.7rem;
}
.range .noUi-handle:after, .range .noUi-handle:before {
  display: none;
}
.range .tooltip {
  position: absolute;
  bottom: -4.5rem;
  transform: translateX(-50%);
  font: 400 1.8rem "Inter", sans-serif;
  color: #570200;
	white-space: nowrap;
}
@media (max-width: 1024px) {
  .range .tooltip {
    font-size: 1.4rem;
    bottom: -3rem;
  }
}

.footer {
  padding-bottom: 3rem;
}
@media (max-width: 1024px) {
  .footer {
    padding-bottom: 0;
  }
}
.footer .header__actions {
  display: flex;
}
.footer__top {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 3rem;
}
@media (max-width: 1024px) {
  .footer__top {
    flex-direction: column;
    align-items: flex-start;
    gap: 2rem;
  }
}
.footer__nav-title {
  font: 700 1.6rem "Inter", sans-serif;
  color: #000;
  margin-bottom: 2.5rem;
  display: block;
  transition: all 0.3s;
}
.footer__nav-title:hover {
  color: #320302 !important;
}
.footer__nav-title.active svg {
  transform: rotate(180deg);
}
.footer__nav-title svg {
  display: none;
  transition: all 0.3s;
}
.footer__nav-title a {
  color: #000;
}
@media (max-width: 1024px) {
  .footer__nav-title {
    margin-bottom: 1.6rem !important;
    display: flex;
    align-items: center;
    justify-content: space-between;
  }
  .footer__nav-title svg {
    display: block;
    width: 1.6rem;
    height: 1.6rem;
  }
}
.footer__nav {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 3rem 4rem;
  align-items: start;
  max-height: none;
  margin-bottom: 5rem;
}
@media (max-width: 1024px) {
  .footer__nav {
    display: flex;
    flex-direction: column;
    max-height: 100%;
    margin-bottom: 3rem;
  }
}
.footer__nav-wrap {
  margin-bottom: 2.6rem;
  display: flex;
  flex-direction: column;
  gap: 1.7rem;
}
@media (max-width: 1024px) {
  .footer__nav-wrap {
    overflow: hidden;
    max-height: 0;
    margin-bottom: 0;
    transition: all 0.3s;
    gap: 1rem !important;
  }
}
.footer__nav-wrap a {
  font: 400 1.4rem/120% "PT Sans", sans-serif;
  letter-spacing: -0.02em;
  color: #6b6b6b;
  transition: all 0.3s;
}
.footer__nav-wrap a:hover {
  color: #320302 !important;
}
@media (max-width: 1024px) {
  .footer__nav-wrap a {
    font-size: 1.3rem;
    width: calc(50% - 0.5rem) !important;
  }
}
.footer__nav-wrap a:last-child {
  margin-bottom: 2rem;
}
@media (max-width: 1024px) {
  .footer__nav-column {
    width: 100% !important;
	max-width: 100% !important;
  }
}
.footer__nav-column:first-child {
  width: auto;
}
.footer__nav-column:nth-child(2){
	width: auto;
	max-width: none;
}
.footer__nav-column:nth-child(3){
	width: auto;
	max-width: none;
}
.footer__nav-column:first-child .footer__nav-wrap {
  display: flex;
  flex-wrap: wrap;
  gap: 1.7rem 4.6rem;
  flex-direction: row;
  margin-bottom: 0;
}
.footer__nav-column:first-child .footer__nav-wrap a {
  width: calc(50% - 2.3rem);
}
.footer__nav-title {
  font: 700 1.6rem "Inter", sans-serif;
  color: #000;
  margin-bottom: 2.5rem;
}
@media (max-width: 1024px) {
  .footer__nav-title {
    padding-bottom: 1rem;
    border-bottom: 1px solid #000;
  }
}
.footer .btn {
  display: flex;
  align-items: center;
  gap: 1rem;
  padding: 0.75rem 1.65rem;
  background: #570200;
  border-radius: 1rem;
  font: 400 1.6rem "Inter", sans-serif;
  color: #fff;
  height: 4.4rem;
  width: 20.3rem;
}
.footer .btn svg {
  width: 2.9rem;
  height: 2.9rem;
}
.footer .container {
  padding: 3.2rem 3.4rem;
  background: #f1e2d7;
  border-radius: 2.3rem;
}
@media (max-width: 1024px) {
  .footer .container {
    border-radius: 2.3rem 2.3rem 0 0;
    padding: 3rem 1.6rem;
  }
}
.footer__bottom {
  display: flex;
  justify-content: space-between;
}
@media (max-width: 1024px) {
  .footer__bottom {
    flex-direction: column;
    gap: 1rem;
  }
}
.footer__bottom p, .footer__bottom a {
  font: 400 1.6rem "Inter", sans-serif;
  color: #000;
}
@media (max-width: 1024px) {
  .footer__bottom p, .footer__bottom a {
    font-size: 1.4rem;
  }
}
.footer__bottom a {
  transition: all 0.3s;
}
.footer__bottom a:hover {
  color: #320302 !important;
}
.footer__bottom .links {
  display: flex;
  gap: 3rem;
}
@media (max-width: 1024px) {
  .footer__bottom .links {
    flex-direction: column;
    gap: 1rem;
  }
}

.breacrumbs {
  padding: 5rem 0 9rem;
}
@media (max-width: 1024px) {
  .breacrumbs {
    padding: 4rem 0;
  }
}
.breacrumbs .container {
  display: flex !important;
  flex-direction: row !important;
  align-items: center;
  gap: 3.2rem;
}
@media (max-width: 1024px) {
  .breacrumbs .container {
    gap: 2rem;
  }
}
.breacrumbs .container a {
  font: 400 1.2rem/120% "Inter", sans-serif;
  letter-spacing: -0.02em;
  color: #303030;
  position: relative;
}

@media (max-width: 1024px) {
	.breacrumbs .container{
		display: inline-block !important
	}
  .breacrumbs .container a{
		display: inline-block;
	  	margin-right: 2rem;
	}
}
.breacrumbs .container a::before {
  content: "";
  position: absolute;
  width: 1.2rem;
  height: 1.2rem;
  background-image: url("data:image/svg+xml,%3Csvg width='12' height='12' viewBox='0 0 12 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M9.74274 6.50003L0.843263 6.49989L0.843262 5.50004L9.74239 5.49982L5.29294 1.05037L6.00004 0.343262L11.6569 6.0001L6.00003 11.657L5.29292 10.9498L9.74274 6.50003Z' fill='%23303030' /%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  right: -2.3rem;
}
.breacrumbs .container span {
  font: 400 1.2rem/120% "Inter", sans-serif;
  letter-spacing: -0.02em;
  color: #303030;
}

.paginations {
  display: flex;
  align-items: flex-end;
  gap: 1.7rem;
}
.paginations a {
  font: 400 2.8rem "New York", sans-serif;
  color: rgba(66, 37, 29, 0.4);
}
.paginations a.active {
  font: 400 2.8rem "New York", sans-serif;
  text-decoration: underline;
  text-decoration-skip-ink: none;
  color: #42251d;
}
.paginations span {
  font: 400 2.8rem "New York", sans-serif;
  color: #42251d;
}

.select__top {
  padding: 1.4rem 2.4rem;
  background: #f7f2ee;
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  cursor: pointer;
}

@font-face {
  font-family: "New York";
  src: url("../fonts/NewYork.woff") format("woff"),
       url("../fonts/NewYork.ttf") format("truetype");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
.hero {
  padding-top: 11.5rem;
  margin-top: -9rem;
  height: 77.5rem;
  margin-bottom: 7rem;
  position: relative;
  padding-bottom: 6rem;
}
@media (max-width: 1024px) {
  .hero {
    height: 100vh;
    margin-bottom: 6rem;
  }
	.breacrumbs .container a::before{
		right: -1.6rem;
	}
}
.hero .bg {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  border-radius: 4.6rem;
  object-fit: cover;
}
.hero .container {
  position: relative;
  z-index: 9;
  display: flex;
  flex-direction: column;
  height: 100%;
}
.hero__title {
  font: 400 5.2rem "New York", sans-serif;
  color: #42251d;
  margin-bottom: 3.7rem;
  max-width: 68rem;
  line-height: 1.05;
}
@media (max-width: 1024px) {
  .hero__title {
    font-size: 3rem;
    text-align: center;
    max-width: 100%;
  }
  .hero__title br {
    display: none;
  }
}
.hero__stats {
  display: flex;
  gap: 5rem;
}
@media (max-width: 1024px) {
  .hero__stats {
    flex-wrap: wrap;
    gap: 2rem;
    margin-bottom: 2rem;
  }
}
.hero__stat {
  width: 15.9rem;
}
@media (max-width: 1024px) {
  .hero__stat {
    width: 10rem;
  }
}
.hero__stat span {
  font: 700 2.4rem "Inter", sans-serif;
  color: #570200;
  padding-bottom: 1.5rem;
  border-bottom: 1px solid #000;
  margin-bottom: 1.5rem;
  display: block;
}
@media (max-width: 1024px) {
  .hero__stat span {
    font-size: 2rem;
    padding-bottom: 1rem;
    margin-bottom: 1rem;
  }
}
.hero__stat p {
  font: 400 1.6rem "Inter", sans-serif;
  color: #000;
  margin-bottom: 3.8rem;
}
@media (max-width: 1024px) {
  .hero__stat p {
    margin-bottom: 0;
    font-size: 1.4rem;
  }
}
.hero__cta {
  margin-top: auto;
  box-shadow: 0 12px 4px 0 rgba(0, 0, 0, 0.25);
  background: #f7f2ee;
  border-radius: 2.3rem;
  padding: 1rem;
  width: 48.8rem;
}
@media (max-width: 1024px) {
  .hero__cta {
    width: 100%;
  }
}
.hero__cta p {
  font: 400 1.6rem "Inter", sans-serif;
  color: #000;
  margin-bottom: 2.4rem;
  line-height: 1.45;
}
@media (max-width: 1024px) {
  .hero__cta p {
    margin-bottom: 1.6rem;
  }
}
.hero__cta-wrap {
  padding: 2.9rem;
  border: 1px solid #570200;
  border-radius: 2.3rem;
}
@media (max-width: 1024px) {
  .hero__cta-wrap {
    padding: 2rem 1.6rem;
  }
}
.hero__cta-title {
  font: 400 2.8rem "New York", sans-serif;
  color: #42251d;
  margin-bottom: 2.3rem;
  line-height: 1.08;
}
@media (max-width: 1024px) {
  .hero__cta-title {
    font-size: 2rem;
    margin-bottom: 1.6rem;
  }
}
.hero__trust {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  margin-top: 2rem;
  max-width: 72rem;
}
.hero__trust span {
  display: inline-flex;
  align-items: center;
  gap: 0.8rem;
  padding: 1rem 1.4rem;
  border-radius: 999px;
  background: rgba(247, 242, 238, 0.9);
  border: 1px solid rgba(87, 2, 0, 0.16);
  color: #42251d;
  font: 500 1.4rem "Inter", sans-serif;
  box-shadow: 0 8px 20px rgba(87, 2, 0, 0.08);
}
.hero__trust span::before {
  content: "✓";
  color: #570200;
  font-weight: 700;
  flex: 0 0 auto;
}
@media (max-width: 1024px) {
  .hero__trust {
    justify-content: center;
    gap: 0.8rem;
  }
  .hero__trust span {
    font-size: 1.2rem;
    padding: 0.8rem 1rem;
  }
}

.calculation {
  margin-bottom: 12rem;
  position: relative;
}
@media (max-width: 1024px) {
  .calculation {
    margin-bottom: 6rem;
  }
}
@media (max-width: 1024px) {
  .calculation .section__title {
    font-weight: 700;
  }
}
.calculation .foliage {
  top: -11rem;
  position: absolute;
  right: 3.5rem;
  width: 46.4rem;
  height: 46.4rem;
}
@media (max-width: 1024px) {
  .calculation .foliage {
    display: none;
  }
}
.calculation .container {
  position: relative;
  z-index: 777;
}
.calculation__wrapper {
  display: flex;
  gap: 2.5rem;
  box-shadow: 0 0 9px 0 rgba(0, 0, 0, 0.25);
  background: #fff7f0;
  padding: 1.7rem;
  border-radius: 2.3rem;
}
@media (max-width: 1024px) {
  .calculation__wrapper {
    flex-direction: column;
    padding: 1.6rem;
  }
}
.calculation__info {
  width: 59.5rem;
  border: 1px solid #570200;
  border-radius: 2.3rem;
  padding: 3rem 3.5rem;
}
@media (max-width: 1024px) {
  .calculation__info {
    width: 100%;
    padding: 2rem 1.6rem;
  }
}
.calculation__info p {
  font: 400 1.2rem "Inter", sans-serif;
  color: #570200;
}
.calculation__info .btn {
  align-items: center;
  gap: 1rem;
  padding: 1rem 9rem;
  position: relative;
  z-index: 1;
}
@media (max-width: 1024px) {
  .calculation__info .btn {
    width: 100%;
    padding: 1rem 2rem;
    display: flex;
  }
}
.calculation__info .btn img {
  width: 5.9rem;
  height: auto;
}
.calculation__info-title {
  font: 700 2rem "Inter", sans-serif;
  color: #570200;
  margin-bottom: 1rem;
}
.calculation__actions {
  background: #f1e2d7;
  padding: 3rem 5rem;
  border-radius: 2.3rem;
  width: 54.5rem;
  position: relative;
}
@media (max-width: 1024px) {
  .calculation__actions {
    width: 100%;
    padding: 2rem 1.6rem;
    height: 45rem;
  }
}
.calculation__actions .calc-img {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
}
.calculation__actions p {
  font: 400 1.6rem "Inter", sans-serif;
  color: #42251d;
  margin-bottom: 3rem;
}
@media (max-width: 1024px) {
  .calculation__actions p {
    font-size: 1.4rem;
  }
  .calculation__actions p br {
    display: none;
  }
}
.calculation__actions .btn {
  display: flex;
  align-items: center;
  gap: 1rem;
  padding: 1rem 9rem;
  position: relative;
  z-index: 1;
}
@media (max-width: 1024px) {
  .calculation__actions .btn {
    width: 100%;
    padding: 1rem 2rem;
    display: none;
  }
}
.calculation__actions .btn img {
  width: 5.9rem;
  height: auto;
}
.calculation__avatar {
  margin-bottom: 2rem;
}
.calculation__inputs {
  margin-bottom: 3rem;
}
.calculation__inputs:nth-child(4){
	margin-bottom: 0;
}
@media (max-width: 1024px) {
  .calculation__inputs {
    margin-bottom: 2.4rem;
  }
}
.calculation__inputs:last-child {
  margin-bottom: 0;
}
.calculation__inputs img {
  display: block;
  margin-bottom: 1rem;
}
.calculation__input.column label {
  flex-direction: column;
  padding: 1.2rem;
}
.calculation__input.column label svg {
  width: 3.2rem;
  height: 3.2rem;
}
.calculation__input span {
  font: 700 2.4rem "Inter", sans-serif;
  text-transform: uppercase;
  color: #42251d;
  margin-right: 1rem;
}
@media (max-width: 1024px) {
  .calculation__input {
    width: calc(50% - 0.5rem);
  }
}
.calculation__inputs-wrap {
  display: flex;
  gap: 1.8rem;
  margin-top: 1.8rem;
  flex-wrap: wrap;
}
@media (max-width: 1024px) {
  .calculation__inputs-wrap {
    flex-wrap: wrap;
    gap: 1rem;
  }
}
.calculation__inputs-wrap input {
  display: none;
}
.calculation__inputs-wrap input:checked ~ label {
  background: #e9d2c0;
}
.calculation__inputs-wrap label {
  border: 1px solid #570200;
  border-radius: 1rem;
  font: 400 1.2rem "Inter", sans-serif;
  color: #570200;
  display: flex;
  justify-content: center;
  align-items: center;
  min-width: 16.2rem;
  padding: 1.75rem;
  transition: all 0.3s;
}
@media (max-width: 1024px) {
  .calculation__inputs-wrap label {
    min-width: 100%;
    padding: 1rem 1.5rem;
  }
}

.catalog-projects {
  overflow: hidden;
  margin-bottom: 12.6rem;
}
@media (max-width: 1024px) {
  .catalog-projects {
    margin-bottom: 6rem;
  }
}
.catalog-projects .section__title {
  font: 400 3.6rem "New York", sans-serif;
  color: #42251d;
  margin-bottom: 4.6rem;
}
@media (max-width: 1024px) {
  .catalog-projects .section__title {
    font-size: 2.4rem;
    margin-bottom: 2.4rem;
    max-width: 100%;
  }
}
.catalog-projects .swiper-pagination {
  margin-bottom: 3rem;
  display: none;
}
@media (max-width: 1024px) {
  .catalog-projects .swiper-pagination {
    display: flex;
  }
}
.catalog-projects .swiper-wrapper {
  margin-bottom: 7.7rem;
}
@media (max-width: 1024px) {
  .catalog-projects .swiper-wrapper {
    margin-bottom: 4rem;
  }
}
.catalog-projects .catalog-project {
  cursor: pointer;
}
.catalog-projects .catalog-project img {
  width: 100%;
  height: 100%;
	border-radius: 2.3rem;
	object-fit: cover;
}
.catalog-projects__img {
  margin-bottom: 3rem;
  position: relative;
	height: 21.3rem;
}
@media (max-width: 1024px) {
  .catalog-projects__img {
    margin-bottom: 1.6rem;
  }
}
.catalog-projects__img span {
  font: 400 1.2rem "Inter", sans-serif;
  color: #570200;
  padding: 1.3rem 1.4rem;
  background: #f7f2ee;
  border-radius: 1rem;
  position: absolute;
  z-index: 7;
  top: 1.5rem;
  right: 1.5rem;
}
.catalog-projects__title {
  font: 700 2rem "Inter", sans-serif;
  color: #570200;
  margin-bottom: 2rem;
}
@media (max-width: 1024px) {
  .catalog-projects__title {
    margin-bottom: 1.6rem;
  }
}
.catalog-projects__price {
  font: 400 2.8rem "New York", sans-serif;
  color: #42251d;
  margin-bottom: 3rem;
}
@media (max-width: 1024px) {
  .catalog-projects__price {
    margin-bottom: 1.6rem;
  }
}
.catalog-projects .catalog-all {
  font: 400 1.6rem "Inter", sans-serif;
  text-decoration: underline;
  text-decoration-skip-ink: none;
  color: #570200;
  text-align: center;
}
.catalog-projects__wrapper {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 3.6rem 2.1rem;
  margin-bottom: 7.7rem;
}
@media (max-width: 1024px) {
  .catalog-projects__wrapper {
    grid-template-columns: repeat(1, 1fr);
    margin-bottom: 4rem;
  }
}
.catalog-projects__descr {
  margin-bottom: 3rem;
}
@media (max-width: 1024px) {
  .catalog-projects__descr {
    margin-bottom: 1.6rem;
  }
}
.catalog-projects__wrap {
  display: flex;
  gap: 7.7rem;
}

.why-us__wrapper {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1.8rem;
  margin-bottom: 13.2rem;
}
@media (max-width: 1024px) {
  .why-us__wrapper {
    grid-template-columns: repeat(1, 1fr);
    margin-bottom: 4rem;
  }
  .why-us__wrapper.direction {
    display: flex;
    flex-direction: column;
    flex-direction: column-reverse;
  }
}
.why-us__list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1.8rem;
}
@media (max-width: 1024px) {
  .why-us__list {
    grid-template-columns: repeat(1, 1fr);
  }
}
@media (max-width: 1024px) {
  .why-us__item-top {
    display: flex;
    align-items: center;
    gap: 1.6rem;
  }
}
.why-us__item-icon {
  width: 3.6rem;
  height: 3.6rem;
  min-width: 3.6rem;
  min-height: 3.6rem;
}
.why-us__item-icon img {
  width: 100%;
  height: 100%;
}
.why-us__title {
  font: 400 3.6rem "New York", sans-serif;
  color: #42251d;
  margin-bottom: 2rem;
}
@media (max-width: 1024px) {
  .why-us__title {
    font-size: 2.4rem;
    max-width: 70%;
    margin: 0 auto 2rem;
    text-align: center;
  }
}
.why-us__descr {
  font: 400 1.6rem "Inter", sans-serif;
  color: #000;
  margin-bottom: 7rem;
}
@media (max-width: 1024px) {
  .why-us__descr {
    margin-bottom: 4rem;
    max-width: 70%;
    margin: 0 auto 2rem;
    text-align: center;
  }
  .why-us__descr br {
    display: none;
  }
}
.why-us__item-icon {
  margin-bottom: 2.5rem;
}
.why-us__item-title {
  font: 700 1.6rem "Inter", sans-serif;
  text-transform: uppercase;
  color: #570200;
  margin-bottom: 3rem;
}
.why-us__img {
  width: 58.3rem;
  height: 40.8rem;
}
@media (max-width: 1024px) {
  .why-us__img {
    width: 100%;
    height: auto;
  }
}
.why-us__img img {
  width: 100%;
  height: 100%;
}

.section-form {
  margin-bottom: 15rem;
}
@media (max-width: 1024px) {
  .section-form {
    margin-bottom: 6rem;
  }
}
.section-form .container {
  display: flex;
  border-radius: 2.3rem;
  box-shadow: 0 0 9px 0 rgba(0, 0, 0, 0.25);
  background: #fff7f0;
  padding: 1.7rem 2rem;
  gap: 2.5rem;
}
@media (max-width: 1024px) {
  .section-form .container {
    flex-direction: column;
    margin: 0 1.6rem;
  }
}
.section-form__info {
  padding: 3rem 2.7rem;
  border: 1px solid #570200;
  border-radius: 2.3rem;
  display: flex;
  flex-direction: column;
	width: 100%;
}
@media (max-width: 1024px) {
  .section-form__info {
    padding: 2rem 1.6rem;
  }
}
.modal-form__title {
  font: 400 3.6rem "New York", sans-serif;
  color: #42251d;
  margin-bottom: 3.6rem;
}
@media (max-width: 1024px) {
  .modal-form__title{
    font-size: 2.4rem;
    margin-bottom: 2.4rem;
  }
}
.section-form__info p {
  font: 400 1.6rem "Inter", sans-serif;
  color: #000;
  margin-bottom: 5.7rem;
}
@media (max-width: 1024px) {
  .section-form__info p {
    margin-bottom: 3rem;
  }
}
.section-form__img {
  min-width: 54.5rem;
}
@media (max-width: 1024px) {
  .section-form__img {
    min-width: 100%;
  }
}
.section-form__img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 2.3rem;
}
.section-form__wrap {
  display: flex;
  gap: 3.3rem;
}
@media (max-width: 1024px) {
  .section-form__wrap {
    flex-wrap: wrap;
    gap: 2.4rem;
    margin-bottom: 2.4rem;
  }
}
.section-form__item {
  padding-top: 1.5rem;
  border-top: 1px solid #000;
}
@media (max-width: 1024px) {
  .section-form__item {
    border-top: none;
    border-bottom: 1px solid #000;
    padding-top: 0rem;
    padding-bottom: 1.5rem;
  }
}
.section-form__item p {
  margin-bottom: 0;
}
.section-form__text {
  font: 700 2rem "Inter", sans-serif;
  color: #000;
  margin: auto 0;
}
@media (max-width: 1024px) {
  .section-form__text {
    margin-bottom: 2.4rem;
    font-size: 1.8rem;
  }
  .section-form__text br {
    display: none;
  }
}

.form {
  display: flex;
  flex-direction: column;
  gap: 3.6rem;
}
@media (max-width: 1024px) {
  .form {
    gap: 1.6rem;
  }
}
.form input {
  border: 1px solid #570200;
  border-radius: 1rem;
  padding: 1.75rem;
  width: 100%;
}
.form__input-title {
  font: 700 2rem "Inter", sans-serif;
  color: #570200;
  margin-bottom: 1.8rem;
}
@media (max-width: 1024px) {
  .form__input-title {
    font-size: 1.6rem;
    margin-bottom: 1.4rem;
  }
}
.form__wrap {
  display: flex;
  gap: 2rem;
  margin-top: 1.5rem;
}
@media (max-width: 1024px) {
  .form__wrap {
    flex-direction: column;
    margin-top: 0;
  }
}
.form__wrap button {
  padding: 3rem 5rem;
  box-shadow: inset 0 4px 4px 0 rgba(255, 255, 255, 0.25), 0 4px 4px 0 rgba(0, 0, 0, 0.25), inset 0 -4px 4px 0 rgba(76, 46, 38, 0.18);
  background: #570200;
  border-radius: 1rem;
  font: 400 1.6rem "Inter", sans-serif;
  color: #fff;
  white-space: nowrap;
}
@media (max-width: 1024px) {
  .form__wrap button {
    padding: 1.5rem 3rem;
    width: 100%;
  }
}
.form__wrap p {
  margin-bottom: 0;
}
@media (max-width: 1024px) {
  .form__wrap p {
    font-size: 1.4rem !important;
  }
  .form__wrap p br {
    display: none;
  }
}

.garant {
  overflow: hidden;
  margin-bottom: 13.3rem;
  position: relative;
}
@media (max-width: 1024px) {
  .garant {
    margin-bottom: 6rem;
  }
}
.garant .why-us__wrapper {
  margin-bottom: 4rem;
}
.garant .why-us__img {
  position: absolute;
  right: 0;
  top: 3.7rem;
}
@media (max-width: 1024px) {
  .garant .why-us__img {
    width: 100%;
    height: auto;
    position: static;
  }
}
.garant .cloud1 {
  position: absolute;
  z-index: 1;
  bottom: -16.7rem;
  right: -19.9rem;
}
.garant .cloud1 img {
  width: 63.8rem;
  height: 30.5rem;
}
.garant .cloud2 {
  width: 55.9rem;
  height: 31.1rem;
  position: absolute;
  left: -2rem;
  bottom: -13rem;
  z-index: 3;
}
.garant .cloud2 img {
  width: 100%;
  height: 100%;
}
.garant .why-us__labels {
  font: 400 1.6rem "Inter", sans-serif;
  color: #42251d;
  display: flex;
  gap: 1.6rem;
  position: relative;
  z-index: 3;
}
@media (max-width: 1024px) {
  .garant .why-us__labels {
    display: none;
  }
}
.garant .why-us__labels span {
  padding: 1.55rem 3rem;
  background: #e9d2c0;
  border-radius: 2.8rem;
  white-space: nowrap;
}

.video-reviews .section__title {
  margin-bottom: 2.5rem;
}
@media (max-width: 1024px) {
  .video-reviews .section__title {
    max-width: 100%;
  }
  .video-reviews .section__title br {
    display: none;
  }
}
.video-reviews .catalog-project P {
  margin-bottom: 3.7rem;
}
@media (max-width: 1024px) {
  .video-reviews .catalog-project P {
    margin-bottom: 2.4rem;
  }
}
.video-reviews .catalog-projects__video {
  margin-bottom: 2rem;
  position: relative;
}
.video-reviews .play {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.video-reviews .catalog-projects__wrapper {
  margin-bottom: 3.7rem;
}
@media (max-width: 1024px) {
  .video-reviews .catalog-projects__wrapper {
    margin-bottom: 2.4rem;
  }
}

.reviews {
  margin-bottom: 14rem;
  overflow: hidden;
}
@media (max-width: 1024px) {
  .reviews {
    margin-bottom: 6rem;
  }
}
.reviews .swiper-slide {
  background: #f1e2d7;
  border-radius: 2.3rem;
  padding: 1rem;
  height: 40.3rem;
}
@media (max-width: 1024px) {
  .reviews .swiper-slide {
    width: 30rem !important;
  }
}
.reviews .swiper-slide P {
  font: 400 1.6rem "Inter", sans-serif;
  color: #000;
}
@media (max-width: 1024px) {
  .reviews__avatar {
    width: 5rem;
    height: 5rem;
  }
  .reviews__avatar img {
    width: 100%;
    height: 100%;
  }
}
.reviews .wrap {
  border: 1px solid #570200;
  border-radius: 2.3rem;
  padding: 1.5rem;
  height: 100%;
}
.reviews__top {
  display: flex;
  align-items: center;
  gap: 1.6rem;
  margin-bottom: 3rem;
}
.reviews__top span {
  font: 400 2rem "New York", sans-serif;
  color: #42251d;
}
.reviews .swiper-wrapper {
  margin-bottom: 3rem;
}

.exchange {
  margin-bottom: 8rem;
}
@media (max-width: 1024px) {
  .exchange {
    margin-bottom: 6rem;
  }
}

input.row {
  width: calc(50% - 1.1rem);
  font: 400 1.2rem "Inter", sans-serif;
  border: 1px solid #570200;
  border-radius: 1rem;
  padding: 1.7rem 3rem;
  text-align: center;
  display: block;
}
input.row::placeholder {
  color: rgba(87, 2, 0, 0.2);
}
@media (max-width: 1024px) {
  input.row {
    width: 100%;
  }
}

.mortgage .form__wrap p {
  font: 400 1.6rem "Inter", sans-serif;
  color: #42251d;
  margin-bottom: 0;
}
.mortgage .form__wrap button {
  min-width: 30.3rem;
}
.mortgage .calculation__actions {
  padding: 3rem 4rem;
}
@media (max-width: 1024px) {
  .mortgage .calculation__actions {
    padding: 2rem 1.6rem;
    height: 47rem;
  }
}
.mortgage .results {
  display: flex;
  flex-wrap: wrap;
  gap: 3.6rem 10rem;
}
@media (max-width: 1024px) {
  .mortgage .results {
    gap: 2rem;
  }
}
.mortgage .results__item {
  width: 14rem;
}
@media (max-width: 1024px) {
  .mortgage .results__item {
    width: calc(50% - 1rem);
  }
}
.mortgage .results__item span {
  font: 700 2rem "Inter", sans-serif;
  color: #42251d;
}
.mortgage .results__item-name {
  font: 400 1.2rem "Inter", sans-serif;
  color: #42251d;
  margin-bottom: 1.2rem;
}
.mortgage__wrapper {
  padding: 3rem 10rem;
  background: #f1e2d7;
  border-radius: 2.3rem;
  margin-top: 3rem;
  display: flex;
  justify-content: space-between;
}
@media (max-width: 1024px) {
  .mortgage__wrapper {
    padding: 3rem 1.6rem;
    flex-direction: column;
  }
}
.mortgage__item {
  padding: 1.7rem 0;
  position: relative;
}
@media (max-width: 1024px) {
  .mortgage__item {
    border-bottom: 1px solid #000;
    padding-bottom: 2.4rem;
  }
}
.mortgage__item:last-child::before {
  display: none;
}
.mortgage__item::before {
  content: "";
  position: absolute;
  width: 1px;
  height: 100%;
  background: #000;
  top: 0;
  right: -9rem;
}
@media (max-width: 1024px) {
  .mortgage__item::before {
    display: none;
  }
}
.mortgage__item-title {
  font: 700 1.6rem "Inter", sans-serif;
  text-transform: uppercase;
  color: #570200;
  margin-bottom: 4.4rem;
}
@media (max-width: 1024px) {
  .mortgage__item-title {
    margin-bottom: 2.4rem;
  }
}
.mortgage__item-icon {
  display: block;
  width: 4.8rem;
  height: 4.8rem;
  margin-bottom: 1.2rem;
  object-fit: contain;
}
@media (max-width: 1024px) {
  .mortgage__item-icon {
    width: 4rem;
    height: 4rem;
    margin-bottom: 1rem;
  }
}

.calculation__actions-wrap {
  display: flex;
  align-items: center;
  gap: 2.7rem;
}
@media (max-width: 1024px) {
  .calculation__actions-wrap {
    gap: 1.6rem;
  }
}
.calculation__actions-wrap .calculation__avatar {
  min-width: 7.2rem;
  min-height: 7.2rem;
}
.calculation__actions-wrap .calculation__avatar img {
  width: 100%;
  height: 100%;
}

.contacts {
  position: relative;
  margin-bottom: 8.8rem;
  overflow: visible;
}
.contacts .container {
  position: relative;
}
.contacts .cloud {
  position: absolute;
  left: 37.7rem;
  width: 99.2rem;
  max-width: calc(100vw - 3.2rem);
  height: 46.3rem;
  pointer-events: none;
}
@media (max-width: 1024px) {
  .contacts .cloud {
    width: 100%;
    height: auto;
    right: 0;
    left: auto;
  }
}
.contacts .cloud img {
  width: 100%;
  height: 100%;
}
.contacts__title {
  font: 400 5.2rem "New York", sans-serif;
  color: #42251d;
  margin-bottom: 8.7rem;
}
@media (max-width: 1024px) {
  .contacts__title {
    font-size: 4rem;
    margin-bottom: 3rem;
  }
}
.contacts .dec {
  width: 39.7rem;
  height: auto;
  position: absolute;
  right: 0;
  top: -20rem;
  max-width: calc(100vw - 3.2rem);
  pointer-events: none;
}
@media (max-width: 1024px) {
  .contacts .dec {
    display: none;
  }
}
.contacts .dec img {
  width: 100%;
  height: 100%;
}
.contacts__wrapper {
  box-shadow: 0 0 9px 0 rgba(0, 0, 0, 0.25);
  background: #fff7f0;
  border-radius: 2.3rem;
  padding: 1.7rem 1.5rem;
  position: relative;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 2.2rem;
}
@media (max-width: 1024px) {
  .contacts__wrapper {
    display: flex;
    flex-direction: column;
  }
}
@media (max-width: 1024px) {
  .contacts__info {
    width: 100%;
  }
}
.contacts__info .wrap {
  border: 1px solid #570200;
  padding: 4.6rem 2.6rem;
  border-radius: 2.3rem;
}
@media (max-width: 1024px) {
  .contacts__info .wrap {
    padding: 2rem 1.6rem;
    width: 100%;
  }
}
.contacts__info p {
  font: 400 1.8rem/132% "Inter", sans-serif;
  letter-spacing: -0.02em;
  color: #303030;
  margin-bottom: 3.7rem;
}
.contacts__info a {
  font: 400 1.8rem/132% "Inter", sans-serif;
  letter-spacing: -0.02em;
  text-decoration: underline;
  text-decoration-skip-ink: none;
  color: #303030;
  margin-bottom: 3.7rem;
  transition: all 0.3s;
}
.contacts__info a:hover {
  color: #320302 !important;
}
.contacts__info .header__actions {
  margin-bottom: 7rem;
}
.contacts__info .header__actions a {
  margin-bottom: 0;
}
.contacts__info .btn {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  padding: 0.75rem 1.65rem;
  background: #570200;
  border-radius: 1rem;
  font: 400 1.6rem "Inter", sans-serif;
  color: #fff;
  height: 4.4rem;
  width: 32rem;
}
@media (max-width: 1024px) {
  .contacts__info .btn {
    width: 100%;
  }
}
.contacts__info-title {
  font: 700 2rem "Inter", sans-serif;
  text-transform: uppercase;
  color: #570200;
  margin-bottom: 3rem;
}
.contacts__map {
  overflow: hidden;
  border-radius: 3.4rem;
}
.contacts__map iframe {
  display: block;
  width: 100%;
  height: 100%;
  border-radius: 3.4rem;
  border: 0;
  pointer-events: none;
}
@media (max-width: 1024px) {
  .contacts__map iframe {
    height: 25rem;
  }
}

.projects {
  margin-bottom: 17rem;
}
@media (max-width: 1024px) {
  .projects {
    margin-bottom: 6rem;
  }
}
.projects .container {
  position: relative;
  z-index: 9999;
}
.projects .dec {
  position: absolute;
  left: 0;
  width: 27.9rem;
  top: 38rem;
  z-index: 1;
}
@media (max-width: 1024px) {
  .projects .dec {
    display: none;
  }
}
.projects .dec img {
  width: 100%;
  height: 100%;
}
.projects__title {
  font: 400 5.2rem "New York", sans-serif;
  color: #42251d;
  max-width: 79.3rem;
  margin-bottom: 3.7rem;
}
@media (max-width: 1024px) {
  .projects__title {
    font-size: 3rem;
    margin-bottom: 2rem;
  }
}
.projects__descr {
  font: 400 1.6rem "Inter", sans-serif;
  color: #000;
  margin-bottom: 7.7rem;
}
@media (max-width: 1024px) {
  .projects__descr {
    margin-bottom: 4rem;
  }
}
.projects__filter {
  border: 1px solid #570200;
  border-radius: 2.3rem;
  padding: 3rem 1.8rem;
  width: 28.5rem;
  box-shadow: 0 0 9px 0 rgba(0, 0, 0, 0.25);
  background: #fff7f0;
}
@media (max-width: 1024px) {
  .projects__filter {
    position: fixed;
    top: 9rem;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    z-index: 999999;
    visibility: hidden;
    transition: all 0.3s;
    height: calc(100vh - 9rem);
    border: none;
    border-radius: 1rem 1rem 0 0;
  }
  .projects__filter .close {
    position: absolute;
    top: 3rem;
    right: 3rem;
  }
  .projects__filter.visible {
    opacity: 1;
    visibility: visible;
    overflow: auto;
  }
}
.projects__filter-title {
  font: 400 3.2rem "New York", sans-serif;
  color: #42251d;
  margin-bottom: 2.6rem;
}
.projects__filter-block-title {
  font: 600 1.7rem/141% "New York", sans-serif;
  letter-spacing: -0.02em;
  color: #303030;
  margin-bottom: 2.6rem;
}
.projects__filter-block-wrap {
  display: flex;
  flex-direction: column;
  gap: 0.4rem;
}
.projects__filter-block {
  margin-bottom: 2.6rem;
}
.projects__filter-input input {
  display: none;
}
.projects__filter-input input:checked ~ label::after {
  opacity: 1;
}
.projects__filter-input label {
  display: flex;
  gap: 0.4rem;
  position: relative;
  font: 400 1.4rem/120% "Inter", sans-serif;
  letter-spacing: -0.02em;
  color: #6b6b6b;
}
.projects__filter-input label::before {
  content: "";
  border: 1px solid #d9d9d9;
  border-radius: 0.4rem;
  width: 2rem;
  height: 2rem;
  display: block;
}
.projects__filter-input label::after {
  content: "";
  position: absolute;
  width: 1.1rem;
  height: 0.9rem;
  top: 0.55rem;
  left: 0.45rem;
  background-image: url("data:image/svg+xml,%3Csvg width='13' height='11' viewBox='0 0 13 11' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 5.15385L5.17031 9.16808C6.62015 9.60108 7.35238 9.52053 7.69734 9.0001L12 1' stroke='%23570200' stroke-width='2' stroke-linecap='round' /%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: cover !important;
  transition: all 0.3s;
  opacity: 0;
}
.projects__wrapper {
  display: flex;
  align-items: flex-start;
  gap: 2rem;
}
@media (max-width: 1024px) {
  .projects__wrapper {
    flex-direction: column;
  }
}
.projects__content {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 4.4rem 1.8rem;
  flex: 1;
}
@media (max-width: 1024px) {
  .projects__content {
    display: flex;
    flex-direction: column;
    gap: 2.4rem;
	  width: 100%;
  }
}
.projects .filter-more {
  display: flex;
  align-items: center;
  gap: 1rem;
  background: #570200;
  padding: 1.1rem 1.8rem;
  font: 400 1.6rem/120% "Inter", sans-serif;
  color: #fff;
  border-radius: 1.2rem;
}
.projects .filter-more svg {
  width: 2rem;
  height: 2rem;
}
.projects .catalog-projects__img {
  width: 28.4rem;
  height: 21.3rem;
  margin-bottom: 2rem;
}
@media (max-width: 1024px) {
  .projects .catalog-projects__img {
    width: 100%;
  }
}
.projects .catalog-projects__img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 2.3rem;
}
.projects .catalog-projects__title {
  font: 700 2rem "Inter", sans-serif;
  color: #570200;
  margin-bottom: 1.8rem;
}
.projects .catalog-projects__price {
  margin-bottom: 2.3rem;
}
.projects .catalog-projects__chars {
  display: flex;
  gap: 0.5rem;
  margin-bottom: 2.5rem;
}
.projects .catalog-projects__chars span {
  font: 400 0.9rem "Inter", sans-serif;
  color: #570200;
  padding: 0.7rem;
  border: 1px solid #570200;
  border-radius: 1rem;
  height: 3rem;
}
.projects .catalog-project p {
  font: 400 1.4rem/120% "Inter", sans-serif;
  letter-spacing: -0.02em;
  color: #6b6b6b;
  margin-bottom: 1.5rem;
  max-width: 21.8rem;
}
.projects__filter-block-wrapper {
  display: flex;
  gap: 0.8rem;
}
.projects__filter-block-input-text {
  width: 12.3rem;
  background: #f7f2ee;
  display: flex;
  align-items: center;
  gap: 0.4rem;
  padding: 1.55rem 2.4rem;
}
@media (max-width: 1024px) {
  .projects__filter-block-input-text {
    width: calc(50% - 0.4rem);
  }
}
.projects__filter-block-input-text input {
  width: 100%;
  border: none;
  outline: none;
}
.projects__filter-actions {
  display: flex;
  flex-direction: column;
  gap: 2rem;
}
.projects .cloud {
  position: absolute;
  width: 100%;
  height: auto;
}
.projects .cloud img {
  width: 100%;
}

.projects-descr {
  margin-bottom: 15.6rem;
}
@media (max-width: 1024px) {
  .projects-descr {
    margin-bottom: 6rem;
  }
}
.projects-descr p {
  font: 400 1.6rem "Inter", sans-serif;
  color: #000;
}

.services-hero {
  padding-top: 14.2rem;
  margin-bottom: 16rem;
}
@media (max-width: 1024px) {
  .services-hero {
    padding-top: 12rem;
    margin-bottom: 6rem;
  }
}
.services-hero .breacrumbs {
  padding-top: 0 !important;
  padding-bottom: 7rem;
}
.services-hero .breacrumbs .container {
  padding: 0;
}

.included {
  margin-bottom: 16rem;
}
@media (max-width: 1024px) {
  .included {
    margin-bottom: 6rem;
  }
}
.included__wrapper {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.2rem 2rem;
}
@media (max-width: 1024px) {
  .included__wrapper {
    grid-template-columns: repeat(1, 1fr);
  }
}
.included .section__title {
  margin-bottom: 6rem;
}
@media (max-width: 1024px) {
  .included .section__title {
    max-width: 100%;
    margin-bottom: 4rem;
  }
}
.included__item {
  padding: 2.8rem 2rem;
  background: #f1e2d7;
  border-radius: 2.3rem;
  height: 17.8rem;
}
.included__item-title {
  font: 700 1.6rem "Inter", sans-serif;
  text-transform: uppercase;
  color: #570200;
  margin-bottom: 1.5rem;
}
.included .btn {
  display: block;
  width: 41.2rem;
  margin: 4rem auto 0;
}
@media (max-width: 1024px) {
  .included .btn {
    max-width: 100%;
  }
}

.project {
  margin-bottom: 8rem;
  position: relative;
}
@media (max-width: 1024px) {
  .project {
    margin-bottom: 6rem;
  }
}
.project .cloud {
  width: 99.2rem;
  height: 46.3rem;
  position: absolute;
  left: 37.7rem;
  top: -1.9rem;
}
@media (max-width: 1024px) {
  .project .cloud {
    left: 0;
    width: 100%;
    height: auto;
  }
}
.project .cloud img {
  width: 100%;
  height: 100%;
}
.project .sheet {
  position: absolute;
  width: 30rem;
  right: 0;
  top: -20rem;
}
@media (max-width: 1024px) {
  .project .sheet {
    display: none;
  }
}
.project .sheet img {
  width: 100%;
  height: 100%;
}
.project .container {
  position: relative;
}
.project__name {
  font: 400 5.2rem "New York", sans-serif;
  color: #42251d;
  margin-bottom: 2.7rem;
}
@media (max-width: 1024px) {
  .project__name {
    font-size: 3rem;
    margin-bottom: 2rem;
  }
}
.project__article {
  font: 400 2.6rem/105% "PT Sans", sans-serif;
  letter-spacing: -0.03em;
  color: #303030;
  margin-bottom: 5rem;
}
@media (max-width: 1024px) {
  .project__article {
    font-size: 2rem;
    margin-bottom: 3rem;
  }
}
.project__wrapper {
  display: flex;
}
@media (max-width: 1024px) {
  .project__wrapper {
    flex-direction: column;
    gap: 2.4rem;
  }
}
.project__img {
  min-width: 68.3rem;
  height: 69.1rem;
}
@media (max-width: 1024px) {
  .project__img {
    min-width: 100%;
    height: auto;
  }
}
.project__img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
	border-radius: 2.3rem;
}
.project__info {
  min-width: 62.5rem;
  box-shadow: 0 0 9px 0 rgba(0, 0, 0, 0.25);
  background: #fff7f0;
  margin-left: -10rem;
  border-radius: 2.3rem;
  padding: 1.7rem 1.5rem;
}
@media (max-width: 1024px) {
  .project__info {
    min-width: 100%;
    margin-left: 0;
  }
}
.project__info .wrap {
  border: 1px solid #570200;
  border-radius: 2.3rem;
  height: 100%;
  padding: 3.3rem 2rem;
}
@media (max-width: 1024px) {
  .project__info .wrap {
    padding: 2rem 1.6rem;
    width: 100%;
  }
}
.project__info-title {
  font: 700 2rem "Inter", sans-serif;
  color: #570200;
  margin-bottom: 2rem;
}
.project__info-wrap {
  display: flex;
  gap: 1.8rem;
  margin-bottom: 3.6rem;
}
@media (max-width: 1024px) {
  .project__info-wrap {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1rem;
    margin-bottom: 2.5rem;
  }
}
.project__info-item {
  border: 1px solid #570200;
  border-radius: 1rem;
  padding: 1.7rem 3rem;
  width: 12.4rem;
  height: 9.6rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 1rem;
  font: 400 1.2rem "Inter", sans-serif;
  text-align: center;
  color: #570200;
}
@media (max-width: 1024px) {
  .project__info-item {
    width: 100%;
    height: 7rem;
  }
}
.project__info-item span {
  font: 700 2rem "Inter", sans-serif;
  color: #570200;
}
.project__info-item span span {
  font: 400 1.2rem "Inter", sans-serif;
  color: #570200;
}
.project__info-list-title {
  font: 700 2rem "Inter", sans-serif;
  color: #570200;
  margin-bottom: 1.5rem;
}
.project__info-list {
  margin-bottom: 3.6rem;
  margin-bottom: 3rem;
}
@media (max-width: 1024px) {
  .project__info-list {
    margin-bottom: 2.4rem;
  }
}
.project__info-list li {
  margin-left: 3rem;
  font: 400 1.8rem/132% "Inter", sans-serif;
  letter-spacing: -0.02em;
  color: #303030;
}
.project__info-price {
  font: 700 4.8rem "Inter", sans-serif;
  color: #570200;
  margin-bottom: 4rem;
}
@media (max-width: 1024px) {
  .project__info-price {
    font-size: 3rem;
    margin-bottom: 2.4rem;
  }
}
.project__info-price span {
  font: 700 2.4rem "Inter", sans-serif;
}
.project__info-list-digit {
  padding: 1rem 4.5rem;
  border: 1px solid #570200;
  border-radius: 1rem;
  display: inline-block;
  font: 700 2.4rem "Inter", sans-serif;
  text-transform: uppercase;
  color: #570200;
  width: 32rem;
  margin-bottom: 1.9rem;
}
@media (max-width: 1024px) {
  .project__info-list-digit {
    width: 100%;
    font-size: 2rem;
  }
}
.project .btn {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  padding: 0.75rem 1.65rem;
  background: #570200;
  border-radius: 1rem;
  font: 400 1.6rem "Inter", sans-serif;
  color: #fff;
  height: 4.4rem;
  width: 32rem;
}
@media (max-width: 1024px) {
  .project .btn {
    width: 100%;
    height: 5rem;
  }
}

.project-descr {
  margin-bottom: 10rem;
}
@media (max-width: 1024px) {
  .project-descr {
    margin-bottom: 6rem;
  }
}
.project-descr .section__title {
  max-width: 100%;
  margin-bottom: 4rem;
}

.project-prices {
  margin-bottom: 16rem;
  position: relative;
}
@media (max-width: 1024px) {
  .project-prices {
    margin-bottom: 6rem;
  }
}
.project-prices .cloud {
  position: absolute;
  width: 100%;
}
@media (max-width: 1024px) {
  .project-prices .cloud {
    left: 0;
  }
}
.project-prices .cloud img {
  width: 100%;
}
.project-prices .cheet {
  position: absolute;
  right: 0;
  bottom: -21rem;
}
@media (max-width: 1024px) {
  .project-prices .cheet {
    display: none;
  }
}
.project-prices .container {
  position: relative;
}
.project-prices .section__title {
  margin-bottom: 4rem;
}
.project-prices__list {
  width: 63.3rem;
  display: flex;
  flex-direction: column;
  gap: 4rem;
}
@media (max-width: 1024px) {
  .project-prices__list {
    width: 100%;
  }
}
.project-prices__price {
  font: 400 2rem/120% "Inter", sans-serif;
  letter-spacing: -0.02em;
  color: #6b6b6b;
  display: flex;
  justify-content: space-between;
}
@media (max-width: 1024px) {
  .project-prices__price {
    font-size: 1.6rem;
  }
}

.project-about {
  margin-bottom: 16rem;
  overflow: hidden;
}
@media (max-width: 1024px) {
  .project-about {
    margin-bottom: 6rem;
  }
}
.project-about .section__title {
  margin-bottom: 5.3rem;
}
@media (max-width: 1024px) {
  .project-about .section__title {
    margin-bottom: 4rem;
  }
}
@media (max-width: 1024px) {
  .project-about__slider {
    width: 30rem !important;
  }
}
.project-about__slider img {
  width: 100%;
  height: 100%;
  border-radius: 2.3rem;
}
.project-about .swiper-wrapper {
  margin-bottom: 3.8rem;
}

.modal {
  display: flex;
  justify-content: center;
  align-items: center;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  visibility: hidden;
  z-index: 7777777777777777;
  background: rgba(0, 0, 0, 0.5);
  transition: all 0.3s;
}
.modal.active {
  opacity: 1;
  visibility: visible;
}
.modal .modal-content {
  width: 120rem;
  padding: 1.7rem 1.5rem;
  box-shadow: 0 0 9px 0 rgba(0, 0, 0, 0.25);
  background: #fff7f0;
  border-radius: 2.3rem;
}
@media (max-width: 1050px) {
  .modal .modal-content {
    width: 95%;
  }
}
.modal__info {
  display: flex;
  gap: 2.5rem;
}
.modal .section-form__info {
  width: 59.5rem;
}
@media (max-width: 1050px) {
  .modal .section-form__info {
    width: 100%;
  }
}
.modal .section-form__img {
  width: 54.5rem;
}
.modal .close {
  position: absolute;
}
.modal .inputs {
  display: flex;
  flex-direction: row;
  gap: 3.6rem;
}
.inputs.column{
	flex-direction: column;
}
@media (max-width: 1050px) {
  .modal .inputs {
    flex-direction: column;
    gap: 1rem;
  }
}
.modal .form__wrap button {
  min-width: 30.3rem;
}
.modal .form {
  height: 100%;
}
.modal .form__wrap {
  margin-top: auto;
}
.modal .section-form__info h2 {
  margin-bottom: 2.1rem;
}
@media (max-width: 1050px) {
  .modal .section-form__info p br {
    display: none;
  }
}
.modal__answers {
  margin-bottom: 2.4rem;
}
.modal__answers .wrap {
  display: flex;
  gap: 1.2rem;
}
@media (max-width: 1050px) {
  .modal__answers .wrap {
    flex-wrap: wrap;
  }
}
.modal__answers input {
  display: none;
}
.modal__answers span {
  font: 400 1.2rem "Inter", sans-serif;
  text-align: center;
  color: #570200;
  padding: 1rem 1.2rem;
  border: 1px solid #570200;
  border-radius: 1rem;
  width: auto;
  display: block;
}
.modal__thanks {
  padding: 3rem 2.7rem;
  border: 1px solid #570200;
  border-radius: 2.3rem;
  display: none;
  flex-direction: column;
  width: 59.5rem;
  justify-content: center;
}
.modal__thanks.visible {
  display: flex !important;
}
.modal__thanks-title {
  font: 400 6.4rem "New York";
  color: #42251d;
  margin-bottom: 8rem;
}
.modal__thanks-manage {
  display: flex;
  align-items: center;
  gap: 1.8rem;
  margin-bottom: 3.4rem;
}
.modal__thanks-manage img {
  width: 8.2rem;
  height: 8.2rem;
  border-radius: 50%;
}
.modal__thanks-socials {
  display: flex;
  align-items: center;
  gap: 2rem;
}
.modal__thanks-socials p {
  font: 700 1.6rem "Inter", sans-serif;
  color: #42251d;
}
@media (max-width: 1050px) {
  .modal .section-form__img {
    display: none;
  }
}
.select__content{
	max-height: 0;
	overflow: hidden;
	transition: all 0.3s;
}
.btn-mobile{
	display: none;
}
@media (max-width: 1050px) {
  .btn-mobile {
    display: flex;
  }
}

.header .nav-select{
	position: static;
}

.nav-select__content{
     position: absolute;
     top: 8.5rem;
     background: #f7f2ee;
     width: min(120rem, calc(100vw - 3.2rem));
     max-width: calc(100vw - 3.2rem);
     left: 50%;
     transform: translateX(-50%);
	opacity: 0;
	visibility: hidden;
	transition: opacity 0.3s, visibility 0.3s, height 0.3s;
	z-index: 7777;
	height: 0;
	overflow: hidden;
}

.nav-select.active .nav-select__content{
	opacity: 1;
	visibility: visible;
	height: 29rem;
	padding: 1.2rem 0;
}

.nav-select.active .nav-select__top svg{
	transform: rotate(180deg);
}

.nav-select .nav-select__top svg{
	transition: all 0.3s;
}

.nav-select__content .container{
     width: 100%;
     max-width: 120rem;
     align-items: unset;
     justify-content: flex-start;
     gap: 1.2rem;
     position: relative;
	height: 100%;
}

.nav-select__content-img{
     width: 45rem;
     height: auto;
}

.nav-select__content-img img{
     width: 100%;
     height: 100%;
	object-fit: cover;
}
.nav-select__content-link-wrap{
     position: absolute;
     width: calc(100% - 38.2rem);
     border: 1px solid rgba(87, 2, 0, 0.4);
     padding: 2.4rem;
     top: 0;
     right: 0;
     height: 100%;
     background: #f7f2ee;
     opacity: 0;
     visibility: hidden;
     transition: all 0.3s;
}

.nav-select__content-link-wrap .wrap{
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 1rem;
}

.nav-select__content-link.active .nav-select__content-link-wrap{
     opacity: 1;
     visibility: visible;
}

.nav-select__content-link.active .nav-select__content-link-top img{
    transform: rotate(-90deg); 
}

.nav-select__content-links{
     padding: 2.4rem;
     width: 100%;
     height: 100%;
     display: flex;
     flex-direction: column;
     gap: 1.6rem;
     border: 1px solid rgba(87, 2, 0, 0.4);
	overflow: auto;
}

.nav-select__content-link-top{
     display: flex;
     justify-content: space-between;
     align-items: center;
}

.nav-select__content-link-top img{
     transition: all 0.3s;
}

.nav-select__content-link-top a{
     font: 700 2.3rem / 105% "PT Sans", sans-serif !important;
     letter-spacing: -0.02em;
     text-transform: uppercase;
     color: #42251d !important;  
}

.nav-select__content-link-title{
      font: 700 2.3rem / 105% "PT Sans", sans-serif !important;
     letter-spacing: -0.02em;
     text-transform: uppercase;
     color: #42251d;
     margin-bottom: 3.2rem;
}

.nav-select__content-link-wrap a{
     font: 400 1.7rem / 105% "PT Sans", sans-serif !important;
     letter-spacing: -0.02em;
     color: #42251d !important;
     margin-bottom: 1rem;
}

.gallery .catalog-projects__img{
	margin-bottom: 0;
}

.mobile-nav-select__top{
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.mobile-nav-select__content{
	overflow: hidden;
	max-height: 0;
}

.mobile-nav-select.active .mobile-nav-select__content{
	max-height: unset;
}

.mobile-nav-select__content{
	display: flex;
	flex-direction: column;
	gap: 1rem;
}

.mobile-nav-select__content a:nth-child(1){
	padding-top: 1.6rem;
}

.mobile-nav-select__content a{
	padding-bottom: 1rem;
	border-bottom: 1px solid #570200;
}

.mobile-nav-select.active .mobile-nav-select__top svg{
	transform: rotate(180deg);
}

.mobile-nav-select .mobile-nav-select__top svg{
	transition: all 0.3s;
}

.modal .close{
	display: block;
	top: 5rem;
	right: 5rem;
	cursor: pointer;
}



.modal .modal-content{
	position: relative;
}

.section-form__info.hidden{
	display: none;
}

.modal__thanks.visible{
	display: flex;
}

.modal__thanks.active {
  display: flex !important;
}
/* ═══════════════════════════════════════════════════════════
   КАТАЛОГ ДОМОВ — стили
   ══════════════════════════════════════════════════════════ */

/* ── Хлебные крошки ─────────────────────────────────────── */
.breadcrumbs{display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px;font-size:13px;color:#888;padding:14px 0}
.breadcrumbs__link{color:#888;text-decoration:none;transition:color .2s}
.breadcrumbs__link:hover{color:#4C2E26}
.breadcrumbs__current{color:#4C2E26;font-weight:500}
.breadcrumbs__sep{color:#ccc}

/* ── Страница каталога ──────────────────────────────────── */
.catalog-page{padding:30px 0 60px}
.catalog-page__header{display:flex;align-items:baseline;gap:16px;margin-bottom:20px}
.catalog-page__h1{font-size:clamp(24px,4vw,40px);font-weight:700;color:#1a1a1a;margin:0}
.catalog-page__count{font-size:15px;color:#888;flex-shrink:0}
.catalog-page__description{font-size:15px;color:#555;line-height:1.7;max-width:820px;margin-bottom:32px}
.catalog-page__empty{text-align:center;padding:60px 20px}
.catalog-page__section-title{font-size:22px;font-weight:700;margin:40px 0 20px}

/* ── Навигационные блоки (уровни 1-2) ───────────────────── */
.catalog-page__nav-blocks{display:flex;flex-direction:column;gap:32px;margin-bottom:40px}
.catalog-nav-block__title{font-size:18px;font-weight:700;margin-bottom:14px;color:#1a1a1a}
.catalog-nav-block__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px}
.catalog-nav-block__grid--tags{display:flex;flex-wrap:wrap;gap:8px}
.catalog-nav-card{display:flex;flex-direction:column;gap:4px;padding:16px;background:#f9f5f0;border:1px solid #ede8e1;border-radius:8px;text-decoration:none;transition:box-shadow .2s,border-color .2s}
.catalog-nav-card:hover{border-color:#4C2E26;box-shadow:0 4px 16px rgba(76,46,38,.1)}
.catalog-nav-card__name{font-size:15px;font-weight:600;color:#1a1a1a}
.catalog-nav-card__count{font-size:13px;color:#888}
.catalog-nav-tag{display:inline-flex;align-items:center;padding:8px 14px;background:#fff;border:1px solid #e0d8d0;border-radius:20px;font-size:14px;color:#333;text-decoration:none;transition:all .2s}
.catalog-nav-tag:hover{background:#4C2E26;color:#fff;border-color:#4C2E26}

/* ── Сетка проектов ─────────────────────────────────────── */
.catalog-projects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:24px;margin-bottom:32px}
.project-card{background:#fff;border:1px solid #f0ebe4;border-radius:12px;overflow:hidden;transition:box-shadow .25s,transform .25s}
.project-card:hover{box-shadow:0 8px 32px rgba(0,0,0,.12);transform:translateY(-3px)}
.project-card__link{display:block;text-decoration:none;color:inherit;height:100%}
.project-card__img-wrap{aspect-ratio:4/3;overflow:hidden;background:#f5f0ea}
.project-card__img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}
.project-card:hover .project-card__img{transform:scale(1.04)}
.project-card__img-placeholder{width:100%;height:100%;background:linear-gradient(135deg,#f0ebe4,#e5ddd5)}
.project-card__body{padding:16px}
.project-card__title{font-size:16px;font-weight:700;color:#1a1a1a;margin-bottom:8px}
.project-card__specs{display:flex;gap:12px;font-size:13px;color:#777;margin-bottom:8px}
.project-card__price{font-size:17px;font-weight:700;color:#4C2E26;margin-bottom:10px}
.project-card__btn{font-size:13px;padding:8px 16px}

/* ── Пагинация каталога ─────────────────────────────────── */
.catalog-pagination{display:flex;flex-wrap:wrap;gap:6px;margin-top:24px}
.catalog-pagination__link{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border:1px solid #e0d8d0;border-radius:6px;font-size:14px;color:#555;text-decoration:none;transition:all .2s}
.catalog-pagination__link:hover,.catalog-pagination__link.is-active{background:#4C2E26;color:#fff;border-color:#4C2E26}

/* ── Блоки перелинковки ─────────────────────────────────── */
.catalog-page__interlinking{margin-top:60px;padding-top:40px;border-top:1px solid #f0ebe4}
.catalog-links-block{margin-bottom:32px}
.catalog-links-block__title{font-size:16px;font-weight:700;color:#1a1a1a;margin-bottom:12px}
.catalog-links-block__list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.catalog-links-block__link{display:inline-block;padding:7px 14px;background:#f9f5f0;border:1px solid #ede8e1;border-radius:6px;font-size:14px;color:#444;text-decoration:none;transition:all .2s}
.catalog-links-block__link:hover{background:#4C2E26;color:#fff;border-color:#4C2E26}
.catalog-links-block--up .catalog-links-block__link{background:#fff3ec;border-color:#f0d8c8;color:#4C2E26;font-weight:500}
.catalog-links-block--up .catalog-links-block__link:hover{background:#4C2E26;color:#fff}

/* ── Перелинковка на карточке проекта ───────────────────── */
.project-interlinking{padding:40px 0;background:#faf7f4}
.catalog-similar-projects{margin-top:32px}
.catalog-similar-projects__title{font-size:20px;font-weight:700;margin-bottom:16px;color:#1a1a1a}
.catalog-similar-projects__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px}
.catalog-project-card{display:block;background:#fff;border:1px solid #f0ebe4;border-radius:10px;overflow:hidden;text-decoration:none;color:inherit;transition:box-shadow .2s}
.catalog-project-card:hover{box-shadow:0 6px 20px rgba(0,0,0,.1)}
.catalog-project-card img{width:100%;aspect-ratio:4/3;object-fit:cover}
.catalog-project-card__body{padding:12px}
.catalog-project-card__title{font-size:14px;font-weight:600;color:#1a1a1a;margin-bottom:4px}
.catalog-project-card__area{font-size:12px;color:#888}
.catalog-project-card__price{font-size:14px;font-weight:700;color:#4C2E26;margin-top:4px}

@media(max-width:768px){
  .catalog-projects-grid{grid-template-columns:repeat(2,1fr);gap:12px}
  .catalog-page__header{flex-direction:column;gap:4px}
  .catalog-nav-block__grid{grid-template-columns:repeat(2,1fr)}
  .catalog-similar-projects__grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:480px){
  .catalog-projects-grid{grid-template-columns:1fr}
  .catalog-nav-block__grid{grid-template-columns:1fr}
}

@media(max-width: 962px){
	.mobile-catalog button{
		padding: 0;
		border: none;
		background: transparent !important;
		height: auto;
		font: 400 1.6rem "Inter", sans-serif;
    	color: #000;
   	 	transition: all 0.3s;
		justify-content: space-between;
	}
	.mobile-catalog button:hover{
		background: transparent !important;
	}
	.mobile-catalog__mat-trigger{
		padding: 1rem 0 !important;
	}
	.mobile-catalog button svg{
		width: 1.2rem;
		height: 1.2rem;
	}
}

.nav button{
	width: 5rem;
	height: 5rem;
	display: flex;
	justify-content: center;
	align-items: center;
	color: #570200;
	background: #fff;
	border-radius: 50%;
	top: 20rem;
}

.nav button.swiper-button-lock{
	display: none;
}

.swiper-button-next:after, .swiper-button-prev:after{
	font-size: 1.8rem !important;
}

.catalog-projects__slider{
	position: relative;
}


@media(max-width: 962px){
	.nav button{
		display: none;
	}
}

.form__consent a{
	display: inline;
}

.form__consent{
	margin-top: -1rem !important;
}

.page-404__code{
	margin-bottom: 3rem !important;
}

.gallery .catalog-projects__wrapper{
	margin-bottom: 0;
}

.footer__wrapper{
	display: grid;
	grid-template-columns: 1.15fr 1.3fr 1.05fr 0.8fr;
	gap: 3rem 3.2rem;
	align-items: start;
}

.footer__nav{
	display: contents;
}

.footer_rec{
	display: flex;
	flex-direction: column;
	gap: 2.4rem;
	margin-bottom: 0rem;
	max-width: none;
}

@media(max-width: 962px){
	.footer__wrapper{
		display: flex;
		flex-direction: column;
		gap: 2.4rem;
	}
}

/* Оверлей + контейнер */
.mobile-menu {
  position: fixed;
  inset: 0;
  background: #f7f2ee;
  display: flex;
  flex-direction: column;
  z-index: 999;
  overflow-y: auto;
  opacity: 0;
  visibility: hidden;
  transform: translateX(100%);
  transition: opacity .28s ease, visibility .28s ease, transform .28s ease;
}
@media (max-width: 1024px) {
  .mobile-menu.visible {
    opacity: 1;
    visibility: visible;
    transform: translateX(0);
  }
	.catalog__wrapper{
		width: 100%;
	}
	.calculation__info .btn{
		margin-top: 1rem;
	}
}

/* Шапка */
.mm-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 1.8rem 2rem;
  border-bottom: 1px solid rgba(66,37,29,.12);
  flex-shrink: 0;
}
.mm-head__logo img { display: block; height: 3.6rem; width: auto; }
.mm-close {
  background: none;
  border: none;
  cursor: pointer;
  padding: .6rem;
  line-height: 0;
  border-radius: .4rem;
  transition: background .15s;
}
.mm-close:hover { background: rgba(66,37,29,.08); }

/* Навигация */
.mm-nav {
  flex: 1;
  display: flex;
  flex-direction: column;
  padding: .8rem 0;
}

/* Базовая ссылка верхнего уровня */
.mm-nav__link {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 1.4rem 2rem;
  font: 500 1.6rem/1.2 "Inter", sans-serif;
  color: #1a1a1a;
  text-decoration: none;
  border-bottom: 1px solid rgba(66,37,29,.07);
  transition: background .15s, color .15s;
}
.mm-nav__link:last-child { border-bottom: none; }
.mm-nav__link:active { background: rgba(66,37,29,.05); color: #570200; }

/* Аккордеон */
.mm-accordion { border-bottom: 1px solid rgba(66,37,29,.07); }
.mm-accordion:last-child { border-bottom: none; }

.mm-accordion__trigger {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  background: none;
  border: none;
  cursor: pointer;
  text-align: left;
  border-bottom: none !important; /* перекрываем .mm-nav__link */
}
/* Стрелка */
.mm-accordion__arrow {
  flex-shrink: 0;
  margin-left: .8rem;
  transition: transform .22s ease;
}
.mm-accordion__trigger[aria-expanded="true"] .mm-accordion__arrow {
  transform: rotate(180deg);
}

/* Тело аккордеона */
.mm-accordion__body {
  background: rgba(66,37,29,.03);
  padding: .6rem 0 1rem;
}
.mm-accordion__body[hidden] { display: none; }

/* Уровень 2 — материал */
.mm-accordion--l2 {
  border-bottom: 1px solid rgba(66,37,29,.06);
  border-top: none;
}
.mm-accordion--l2:last-child { border-bottom: none; }
.mm-accordion__trigger--l2 {
  padding: 1.1rem 2rem 1.1rem 2.4rem;
  font: 500 1.5rem/1.2 "Inter", sans-serif;
  color: #42251d;
}
.mm-accordion__trigger--l2:hover { background: rgba(66,37,29,.05); }

/* Уровень 3 — этажность */
.mm-accordion--l3 {
  border-bottom: 1px solid rgba(66,37,29,.05);
}
.mm-accordion--l3:last-child { border-bottom: none; }
.mm-accordion__trigger--l3 {
  padding: .9rem 2rem .9rem 3.2rem;
  font: 400 1.4rem/1.2 "Inter", sans-serif;
  color: #555;
}

/* Ссылки каталога */
.mm-cat-link {
  display: block;
  padding: .8rem 2rem .8rem 4rem;
  font: 400 1.3rem/1.4 "Inter", sans-serif;
  color: #555;
  text-decoration: none;
  transition: color .15s, background .15s;
}
.mm-cat-link--all {
  font-weight: 600;
  color: #42251d;
  padding-left: 3.2rem;
}
.mm-cat-link--section {
  font-weight: 600;
  color: #570200;
  padding-left: 2.4rem;
  font-size: 1.4rem;
  border-bottom: 1px solid rgba(66,37,29,.08);
  margin-bottom: .4rem;
  padding-bottom: 1rem;
}

/* Подвал */
.mm-footer {
  flex-shrink: 0;
  border-top: 1px solid rgba(66,37,29,.12);
  display: flex;
  flex-direction: column;
  gap: 1.2rem;
	padding-top: 3rem;
}
.mm-socials {
  display: flex;
  gap: 1rem;
}
.mm-socials__link { line-height: 0; opacity: .8; transition: opacity .15s; }
.mm-socials__link:hover { opacity: 1; }
.mm-socials__link img { width: 3.2rem; height: 3.2rem; }
.mm-phone {
  display: flex;
  align-items: center;
  gap: .8rem;
  font: 600 1.7rem/1 "Inter", sans-serif;
  color: #1a1a1a;
  text-decoration: none;
  transition: color .15s;
}
.mm-phone:hover { color: #570200; }
.mm-cta {
  width: 100%;
  justify-content: center;
  padding: 1.4rem 2rem !important;
  height: auto;
  font-size: 1.5rem;
}
.header button svg{
	width: 1.2rem;
	height: 1.2rem;
}
.header button svg path{
	stroke: #fff;
}
.reviews__slider {
	position: relative;
}

.ivy-col-md-20{
	width: auto !important;
}

.ivy-rev-cont.ivy-row{
	justify-content: space-between;
}

.ivy-source-link{
	display: none !important;
}

.ivy-nas .ivy-rev-cont{
	height: 100%;
	display: flex;
	flex-direction: column;
}

.ivy-date{
	margin-top: auto;
}

.ivy-rev-text{
	text-align: left !important;
}

div#ivy-reviews-widget{
	    background: #fff7f0 !important;
	box-shadow: 0 0 9px 0 rgba(0, 0, 0, 0.25);
}

.cookie-banner{position:fixed;left:1.6rem;right:1.6rem;bottom:1.6rem;z-index:9990;display:none;pointer-events:none}
.cookie-banner.is-visible{display:block;pointer-events:auto}
.cookie-banner__inner{display:flex;align-items:center;justify-content:space-between;gap:1.2rem;padding:1.4rem 1.6rem;background:#f3e4da;border:1px solid rgba(76,46,38,.14);border-radius:1.6rem;box-shadow:0 1.6rem 4rem rgba(76,46,38,.12)}
.cookie-banner__text{margin:0;max-width:82rem;font-size:1.4rem;line-height:1.45;color:#2b1d18}
.cookie-banner__actions{display:flex;align-items:center;gap:1rem;flex-shrink:0}
.cookie-banner__link{color:#4c2e26;text-decoration:underline;text-underline-offset:.2em;font-size:1.4rem;white-space:nowrap}
.cookie-banner__btn{display:inline-flex;align-items:center;justify-content:center;padding:.95rem 1.6rem;border-radius:1rem;background:#6b140f;color:#fff;font-size:1.4rem;font-weight:600;box-shadow:0 .8rem 1.6rem rgba(107,20,15,.22)}
body.cookie-banner-visible{padding-bottom:calc(var(--dnv-cookie-banner-height, 0px) + 1.6rem)}
.dnv-cookie-policy,
.dnv-privacy-cookie-block{max-width:86rem}
.dnv-cookie-policy p,
.dnv-privacy-cookie-block p{margin:0 0 1.6rem}
.dnv-privacy-cookie-block{margin-top:4rem;padding-top:2.8rem;border-top:1px solid #e8ddd7}
.dnv-privacy-cookie-block h2{margin:0 0 1.6rem;font-size:2.4rem;line-height:1.25;color:#1a1a1a}
@media (max-width: 768px){
.cookie-banner{left:.8rem;right:.8rem;bottom:.8rem}
.cookie-banner__inner{padding:1rem 1.2rem;gap:.8rem;flex-wrap:wrap;max-height:15vh;overflow:auto}
.cookie-banner__text{font-size:1.2rem;line-height:1.35;max-width:none;flex:1 1 100%}
.cookie-banner__actions{width:100%;justify-content:space-between;gap:.8rem}
.cookie-banner__link,.cookie-banner__btn{font-size:1.2rem}
.cookie-banner__btn{padding:.8rem 1.2rem}
body.cookie-banner-visible{padding-bottom:calc(var(--dnv-cookie-banner-height, 0px) + 1rem)}
}

html,
body{max-width:100%;overflow-x:hidden}
.hero__trust span::before{content:"\2713"}
@media (min-width:1025px){
.hero{height:auto;min-height:76.8rem;padding-top:10.5rem;padding-bottom:3.5rem}
.hero .container{height:auto;min-height:62rem}
.hero__title{font-size:4.65rem;line-height:1.04;max-width:78rem;margin-bottom:2.4rem}
.hero__stats{gap:3.2rem}
.hero__stat p{margin-bottom:0}
.hero__cta{width:45.5rem;margin-top:2.2rem}
.hero__cta-wrap{padding:2rem}
.hero__cta-title{font-size:2.35rem;line-height:1.12;margin-bottom:1.4rem}
.hero__cta p{font-size:1.45rem;line-height:1.38;margin-bottom:1.6rem}
.hero__trust{max-width:66rem;margin-top:1.2rem;gap:.8rem}
.hero__trust span{font-size:1.25rem;padding:.85rem 1.1rem}
}
@media (max-width:1024px){
.hero{height:auto;min-height:0;padding-top:8.5rem;padding-bottom:3rem;margin-top:-7.5rem;overflow:hidden}
.hero .bg{border-radius:0 0 2.4rem 2.4rem;object-position:center top}
.hero .container{height:auto;min-height:0}
.hero__title{font-size:clamp(2.15rem,6vw,2.7rem);line-height:1.08;text-align:left;max-width:100%;margin:1.8rem 0 2rem}
.hero__title br{display:none}
.hero__stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-bottom:1.6rem}
.hero__stat{width:auto;min-width:0}
.hero__stat span{font-size:1.8rem;padding-bottom:.8rem;margin-bottom:.8rem}
.hero__stat p{font-size:1.2rem;line-height:1.25}
.hero__cta{width:100%;margin-top:0;padding:.8rem}
.hero__cta-wrap{padding:1.6rem}
.hero__cta-title{font-size:1.9rem;line-height:1.15;margin-bottom:1.2rem}
.hero__cta p{font-size:1.35rem;line-height:1.35;margin-bottom:1.3rem}
.hero__trust{justify-content:flex-start;margin-top:1.2rem;gap:.7rem}
.hero__trust span{font-size:1.1rem;padding:.7rem .9rem}
.cookie-banner__actions{justify-content:flex-start;flex-wrap:wrap}
}

/* DNV homepage polish pass */
.main > section{margin-bottom:9rem}
.main > section:last-child{margin-bottom:0}
.section__title,
.catalog-projects .section__title,
.why-us__title,
.modal-form__title{line-height:1.12;letter-spacing:0}
.section__descr,
.why-us__descr{line-height:1.55}
.calculation,
.catalog-projects,
.why-us,
.section-form,
.reviews,
.garant,
.exchange{margin-bottom:9rem}
.calculation__wrapper,
.section-form .container{align-items:stretch}
.calculation__info,
.calculation__actions,
.section-form__info,
.section-form__img{min-width:0}
.calculation__actions{flex:1;overflow:hidden}
.calculation__actions .calc-img{max-width:100%;height:auto;object-fit:contain}
.calculation__actions p{line-height:1.45}
.calculation__inputs-wrap{gap:1.2rem}
.catalog-projects__slider{overflow:hidden}
.catalog-projects .swiper-wrapper{display:flex;align-items:stretch;height:auto!important}
.catalog-projects .swiper-slide{flex:0 0 auto;width:calc((100% - 4rem)/3);height:auto}
.catalog-projects .catalog-project{display:flex}
.catalog-project__link{display:flex;flex-direction:column;width:100%;text-decoration:none;color:inherit}
.catalog-projects .catalog-project .btn{margin-top:auto}
.catalog-projects__wrapper{gap:2.4rem;margin-bottom:4rem}
.catalog-projects__img{height:auto;aspect-ratio:1.35/1;margin-bottom:1.8rem}
.gallery .catalog-projects__wrapper{margin-bottom:2rem}
.why-us__wrapper{margin-bottom:4.8rem;align-items:center}
.why-us__wrapper:last-child{margin-bottom:0}
.why-us__list{gap:1.6rem}
.why-us__item{padding:2rem;border:1px solid rgba(87,2,0,.16);border-radius:2.3rem;background:rgba(255,247,240,.72)}
.why-us__item-icon{margin-bottom:1.4rem}
.why-us__item-title{margin-bottom:1.2rem;line-height:1.25}
.why-us__item p{line-height:1.45}
.why-us__img{width:100%;height:auto;aspect-ratio:1.43/1}
.why-us__img img{object-fit:cover;border-radius:2.3rem}
.section-form .container{display:grid;grid-template-columns:minmax(0,1fr) minmax(34rem,46%);padding:1.4rem;gap:1.6rem}
.section-form__info{padding:2.6rem}
.section-form__info p{margin-bottom:3.2rem;line-height:1.5}
.section-form__img{min-width:0;min-height:100%}
.section-form__img img{min-height:100%}
.form{gap:2.2rem}
.form__wrap button{padding:1.8rem 3rem}
.garant{overflow:hidden}
.garant .why-us__wrapper{grid-template-columns:minmax(0,1fr) minmax(32rem,44%);margin-bottom:3rem}
.garant .why-us__img{position:relative;right:auto;top:auto;width:100%;z-index:1}
.garant .cloud1,
.garant .cloud2{display:none}
.garant .why-us__labels{flex-wrap:wrap;gap:1rem}
.garant .why-us__labels span{padding:1rem 1.6rem;font-size:1.4rem}
.mortgage__wrapper{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;align-items:stretch;justify-content:normal;padding:3.4rem 0!important;gap:0;overflow:hidden}
.mortgage__item{display:flex;flex-direction:column;align-items:flex-start;box-sizing:border-box;min-width:0;position:relative;padding:1.8rem clamp(2.4rem,4vw,6rem) 0 clamp(5.6rem,7.8vw,11.2rem);border-right:0!important}
.mortgage__item:not(:last-child)::after{content:"";position:absolute;top:0;right:0;width:1px;height:100%;background:#000}
.mortgage__item::before{display:none!important}
.mortgage__item-title{margin-bottom:5.2rem;line-height:1.2;white-space:nowrap}
.mortgage__item p{max-width:24rem;line-height:1.25}
.home-text-before-footer{margin:0 0 8rem}
.home-text-before-footer .container{max-width:96rem}
.home-text-before-footer h2{font:400 3rem/1.18 "New York",sans-serif;color:#42251d;margin:0 0 1.6rem}
.home-text-before-footer p,
.home-text-before-footer li{font:400 1.6rem/1.65 "Inter",sans-serif;color:#2b1d18}
.home-text-before-footer p,
.home-text-before-footer ul{margin:0 0 2.2rem}
.home-text-before-footer ul{padding-left:2rem}
.footer{margin-top:0;padding-bottom:3rem}
.footer .container{padding:3.2rem;background:#f1e2d7;border-radius:2.3rem;overflow:hidden}
.footer__top{margin-bottom:3.2rem;gap:2rem}
.footer__top .header__logo img{width:24rem;height:auto}
.footer__wrapper{display:grid;grid-template-columns:minmax(25rem,1.05fr) minmax(0,1.45fr) minmax(20rem,.95fr) minmax(20rem,.85fr);gap:3rem;align-items:start}
.footer__nav{display:contents}
.footer_rec{gap:1.8rem;min-width:0}
.footer_rec p,
.footer__contacts-title,
.footer__contacts-address,
.footer__contacts-cities,
.footer__contacts-phone{font:400 1.5rem/1.3 "Inter",sans-serif;color:#000}
.footer_rec p{margin:0}
.footer__contacts{display:flex;flex-direction:column;gap:.25rem}
.footer__contacts-phone{display:inline-flex;margin-top:.3rem;color:#000}
.footer__nav-column{min-width:0;width:auto;max-width:none}
.footer__nav-title{margin-bottom:1.6rem}
.footer__nav-wrap{gap:1.15rem;margin-bottom:0}
.footer__nav-wrap a{letter-spacing:0;line-height:1.35}
.footer__nav-wrap a:last-child{margin-bottom:0}
.footer__nav-column:first-child .footer__nav-wrap{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.15rem 2rem}
.footer__nav-column:first-child .footer__nav-wrap a{width:auto}
.footer__bottom{margin-top:3rem;padding-top:2rem;border-top:1px solid rgba(66,37,29,.14)}
@media (max-width:1024px){
.main > section,
.calculation,
.catalog-projects,
.why-us,
.section-form,
.reviews,
.garant,
.exchange{margin-bottom:5.6rem}
.section__title,
.catalog-projects .section__title,
.why-us__title,
.modal-form__title{font-size:2.4rem;max-width:none;text-align:left;margin-bottom:1.6rem}
.section__descr,
.why-us__descr{max-width:none;text-align:left;margin:0 0 2.4rem}
.calculation__wrapper{gap:1.2rem}
.calculation__info{padding:1.8rem 1.4rem}
.calculation__actions{height:auto;padding:1.8rem 1.4rem}
.calculation__actions .calc-img{max-height:24rem;margin:0 auto}
.calculation__inputs-wrap:has(> .calculation__input){display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem 1.2rem}
.calculation__inputs-wrap:has(> .calculation__input) > .calculation__input{width:auto;min-width:0}
.calculation__inputs-wrap:has(> .calculation__input) label{width:100%;min-width:0;box-sizing:border-box;text-align:center;line-height:1.2;padding:1rem .8rem}
.calculation__inputs-wrap:has(> .calculation__input) .calculation__input:not(.column) label{min-height:4.4rem}
.calculation__inputs-wrap:has(> .calculation__input) .calculation__input.column label{min-height:10rem;padding:1.2rem .8rem}
.catalog-projects .swiper-slide{width:82%}
.catalog-projects__wrapper{gap:2rem}
.why-us__wrapper{margin-bottom:2.4rem}
.why-us__list{gap:1.2rem}
.why-us__item{padding:1.6rem}
.section-form .container{display:flex;margin:0 1.6rem;padding:1rem}
.section-form__info{padding:1.8rem 1.4rem}
.section-form__info p{margin-bottom:2rem}
.section-form__img{min-width:0}
.garant .why-us__wrapper{grid-template-columns:1fr}
.garant .why-us__labels{display:flex}
.mortgage .calculation__actions{height:auto}
.mortgage__wrapper{display:flex!important;grid-template-columns:none!important;flex-direction:column;padding:1.6rem!important;gap:0}
.mortgage__item{padding:1.6rem 0}
.mortgage__item:not(:last-child){border-right:0;border-bottom:1px solid rgba(0,0,0,.75)}
.mortgage__item:not(:last-child)::after{display:none}
.mortgage__item-title{margin-bottom:2.4rem;white-space:normal}
.mortgage__item p{max-width:none}
.home-text-before-footer{margin-bottom:5.6rem}
.home-text-before-footer .container{padding:0 1.6rem}
.home-text-before-footer h2{font-size:2.4rem}
.footer .container{border-radius:2.3rem 2.3rem 0 0;padding:2.4rem 1.6rem}
.footer__top{align-items:flex-start;margin-bottom:2.4rem}
.footer__top .header__logo img{width:21rem}
.footer__wrapper{display:flex;flex-direction:column;gap:2rem}
.footer__nav{display:flex;flex-direction:column;width:100%;gap:0}
.footer_rec{gap:1.4rem}
.footer__nav-title{margin-bottom:0!important}
.footer__nav-wrap a{width:100%!important}
.footer__bottom{margin-top:2rem}
}
@media (max-width:520px){
.hero__title{font-size:clamp(2.15rem,6vw,2.45rem);max-width:100%}
.hero__stats{gap:.8rem}
.hero__stat span{font-size:1.6rem}
.hero__stat p{font-size:1.1rem}
.hero__cta-title{font-size:1.72rem}
.hero__cta p{font-size:1.25rem}
.hero__trust span{max-width:100%}
.footer__nav-column:first-child .footer__nav-wrap{grid-template-columns:1fr}
}
