@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Lora:ital,wght@0,400..700;1,400..700&family=Montserrat:ital,wght@0,100..900;1,100..900&display=swap");
/*-------------Миксины----------------*/
@font-face {
  font-family: "Anticva";
  font-weight: 400;
  src: url("./fonts/Anticva.woff"), url("./fonts/Anticva.woff2");
}
/*--------------*/
:root {
  --grey: #3F3A33;
  --grey3: #C2BDB8;
  --grey2: #C2BDB880;
  --green: #31443A;
  --orange: #ff9d00;
  --brown: #6A5847;
  --brown2: #333333;
  --brown3: #3F3A33;
  --white: #FCFAF2;
  --white2: #F0EEDD;
  --green-transparent: #31443A99;
  --background: #f0eedd;
  --black: #000000;
  --lora: "Lora", serif;
  --anticva: "Anticva";
  --main-font: "Montserrat", sans-serif;
}

/*--------Обнуление----------*/
* {
  padding: 0;
  margin: 0;
  border: 0;
}

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

:focus, :active {
  outline: none;
}

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

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

[inert], [inert] * {
  opacity: 0.3;
}

html, body {
  max-width: 100%;
  min-width: 320px;
  font-size: 100%;
  font-weight: 400;
  line-height: 1;
  font-size: 14px;
  font-family: var(--main-font);
  -ms-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
  scroll-behavior: smooth;
  color: var(--green);
  background: var(--background);
}

input, button, textarea {
  font-family: inherit;
}

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

button {
  cursor: pointer;
  background: transparent;
}

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

a, a:visited {
  text-decoration: none;
  color: var(--text-color-light);
}

a:hover {
  text-decoration: none;
}

ul li {
  list-style: none;
}

img {
  vertical-align: top;
}

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

input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:active,
input:-webkit-autofill:focus {
  color: var(--text-color-light) !important;
  -webkit-transition: background-color 0s 600000s, color 0s 600000s;
  transition: background-color 0s 600000s, color 0s 600000s;
  box-shadow: 0 0 0px 1000px white inset !important; /* Заливаем белым */
  -webkit-transition: background-color 5000s ease-in-out 0s;
  transition: background-color 5000s ease-in-out 0s; /* Убираем анимацию */
}

body {
  display: flex;
  flex-direction: column;
  min-height: 100dvh;
  overflow: hidden;
}

input::-moz-placeholder {
  color: var(--grey);
}

input::placeholder {
  color: var(--grey);
}
@media (max-width: 768px) {
  input::-moz-placeholder {
    font-size: calc(14px + 3.4 * (100vw - 390px) / 1920);
  }
  input::placeholder {
    font-size: calc(14px + 3.4 * (100vw - 390px) / 1920);
  }
}
@media (min-width: 768px) {
  input::-moz-placeholder {
    font-size: calc(14px + 2 * 0.0520833333vw);
  }
  input::placeholder {
    font-size: calc(14px + 2 * 0.0520833333vw);
  }
}

input {
  border-radius: 0 !important;
}

img {
  -moz-user-select: none;
  -webkit-user-select: none;
  user-select: none;
  -webkit-user-drag: none;
  -moz-user-select: none;
  -ms-user-select: none;
}

.container {
  width: 100%;
  max-width: 1192px;
  padding-left: 16px;
  padding-right: 16px;
  margin: 0 auto;
}

.noselect {
  -moz-user-select: none;
  -webkit-user-select: none;
  -o-user-select: none;
  user-select: none;
}

.chat_button {
  position: fixed;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
  display: flex;
  align-items: center;
  justify-content: center;
  height: 60px;
  width: 60px;
  border-radius: 50%;
  border: 3px solid var(--white2);
  outline: 10px solid transparent;
  background-color: var(--brown);
  transition: outline 0.3s, border 0.3s;
  z-index: 100;
}
.chat_button img {
  position: relative;
  top: 1px;
}
@media screen and (max-width: 768px) {
  .chat_button {
    top: unset;
    bottom: 100px;
    transform: translate(0, 0);
  }
}
@media screen and (min-width: 991px) {
  .chat_button:hover {
    border-color: var(--grey3);
    outline-color: var(--grey3);
  }
}

.chat_modal {
  position: fixed;
  right: 0px;
  top: 50%;
  transform: translateY(-25%);
  transform-origin: top;
  width: 285px;
  background-color: var(--brown);
  padding: 24px 30px;
  border-radius: 16px 0 0 16px;
  z-index: 100;
  transition: 0.7s;
  opacity: 0;
  pointer-events: none;
}
@media screen and (max-width: 768px) {
  .chat_modal {
    top: unset;
    bottom: 100px;
    transform: translate(0, 0);
  }
}
.chat_modal.open {
  pointer-events: all;
  opacity: 1;
}
.chat_modal h4 {
  font-weight: 600;
  font-size: 16px;
  margin-bottom: 15px;
  color: var(--white);
  text-align: center;
  transition: opacity 0.5s;
}
.chat_modal .body .tabs {
  height: 41px;
  width: 100%;
  width: 100%;
  background-color: var(--white);
  border-radius: 10px;
  margin-bottom: 15px;
  transition: 0.4s cubic-bezier(0.42, 0, 0.27, 1.49);
  cursor: pointer;
}
.chat_modal .body .tabs.open {
  height: 61px;
}
.chat_modal .body .tabs.open .tab_title {
  display: none;
}
.chat_modal .body .tabs.open .tab_list {
  display: flex;
}
.chat_modal .body .tabs .tab_title {
  padding: 10px;
  width: 100%;
  font-size: 16px;
  color: var(--brown);
  display: flex;
  align-items: center;
  justify-content: space-between;
  animation: Open 0.5s forwards;
}
.chat_modal .body .tabs .tab_list {
  height: 100%;
  padding: 10px;
  display: none;
  flex-direction: column;
  justify-content: space-between;
  opacity: 0;
  gap: 9px;
  animation: Open 0.5s forwards;
}
.chat_modal .body .tabs .tab_list .tab_item {
  font-size: 16px;
  color: var(--brown);
  transition: 0.3s;
  width: -moz-max-content;
  width: max-content;
}
.chat_modal .body .tabs .tab_list .tab_item::before {
  content: "";
  position: absolute;
  bottom: -3px;
  left: 0;
  width: 100%;
  height: 1px;
  background-color: var(--brown);
  opacity: 0;
  transition: 0.3s;
}
@media screen and (min-width: 993px) {
  .chat_modal .body .tabs .tab_list .tab_item:hover {
    transform: scale(1.1);
    transform-origin: top left;
  }
  .chat_modal .body .tabs .tab_list .tab_item:hover::before {
    opacity: 1;
  }
}
.chat_modal .body .tab_content {
  overflow: hidden;
  height: 0;
  transition: 1s cubic-bezier(0.42, 0, 0.27, 1.49);
}
.chat_modal .body .tab_content .form {
  display: none;
  flex-direction: column;
  gap: 15px;
}
.chat_modal .body .tab_content .form input, .chat_modal .body .tab_content .form textarea {
  width: 100%;
  padding: 10px;
  font-size: 16px;
  background-color: var(--white);
  border-radius: 10px !important;
  resize: none;
}
.chat_modal .body .tab_content .form input::-moz-placeholder, .chat_modal .body .tab_content .form textarea::-moz-placeholder {
  color: var(--brown);
}
.chat_modal .body .tab_content .form input::placeholder, .chat_modal .body .tab_content .form textarea::placeholder {
  color: var(--brown);
}
.chat_modal .body .tab_content .form.active {
  display: flex;
}
.chat_modal .success_message {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  gap: 20px;
  display: none;
  opacity: 0;
  animation: Open 0.7s forwards;
  animation-delay: 0.5s;
  z-index: 1;
}
.chat_modal .success_message.active {
  display: flex;
}
.chat_modal .success_message h4 {
  max-width: 120px;
}
.chat_modal .button_block {
  text-align: center;
}
.chat_modal .button_block button {
  position: relative;
  font-size: 16px;
  font-weight: 600;
  margin-top: 10px;
  color: var(--white);
}
.chat_modal .button_block button:disabled {
  opacity: 0.5;
  pointer-events: none;
}
.chat_modal .button_block button::before {
  content: "";
  position: absolute;
  bottom: -3px;
  left: 0;
  width: 100%;
  height: 1px;
  background-color: var(--white);
  opacity: 0;
  transition: 0.3s;
}
@media screen and (min-width: 993px) {
  .chat_modal .button_block button:hover::before {
    opacity: 1;
  }
}

.loading {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: var(--background);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 20px;
  z-index: 200;
  transition: 1s;
  opacity: 1;
  padding: 60px 16px;
}
.loading .stop_loading {
  position: absolute;
  bottom: 50px;
  left: 50%;
  transform: translateX(-50%);
  font-size: 16px;
  cursor: pointer;
}
.loading .logo {
  position: relative;
  flex-shrink: 0;
}
@media (max-width: 768px) {
  .loading .logo {
    width: calc(100px + 170 * (100vw - 390px) / 1920);
  }
}
@media (min-width: 768px) {
  .loading .logo {
    width: calc(100px + 100 * 0.0520833333vw);
  }
}
@media (max-width: 768px) {
  .loading .logo {
    height: calc(100px + 170 * (100vw - 390px) / 1920);
  }
}
@media (min-width: 768px) {
  .loading .logo {
    height: calc(100px + 100 * 0.0520833333vw);
  }
}
.loading .logo .dot_out {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  border-radius: 50%;
  border: 3.4px solid transparent;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: 0.6s;
}
@media (max-width: 768px) {
  .loading .logo .dot_out {
    width: calc(40px + 30.6 * (100vw - 390px) / 1920);
  }
}
@media (min-width: 768px) {
  .loading .logo .dot_out {
    width: calc(40px + 18 * 0.0520833333vw);
  }
}
@media (max-width: 768px) {
  .loading .logo .dot_out {
    height: calc(40px + 30.6 * (100vw - 390px) / 1920);
  }
}
@media (min-width: 768px) {
  .loading .logo .dot_out {
    height: calc(40px + 18 * 0.0520833333vw);
  }
}
.loading .logo .dot_out .dot_in {
  background-color: var(--green);
  border-radius: 50%;
  border: 3.4px solid var(--green);
  transition: 0.6s;
  opacity: 0;
}
@media (max-width: 768px) {
  .loading .logo .dot_out .dot_in {
    width: calc(18px + 17 * (100vw - 390px) / 1920);
  }
}
@media (min-width: 768px) {
  .loading .logo .dot_out .dot_in {
    width: calc(18px + 10 * 0.0520833333vw);
  }
}
@media (max-width: 768px) {
  .loading .logo .dot_out .dot_in {
    height: calc(18px + 17 * (100vw - 390px) / 1920);
  }
}
@media (min-width: 768px) {
  .loading .logo .dot_out .dot_in {
    height: calc(18px + 10 * 0.0520833333vw);
  }
}
.loading .logo .logo_ellipse {
  opacity: 0;
  position: absolute;
  top: 30%;
  left: 30%;
  width: 100%;
  height: 100%;
}
.loading .logo .elements {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 43.5%;
  transform: translate(-50%, -50%);
  opacity: 0;
  transition: 0.7s;
}
.loading .logo .anim_logo {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  height: 100%;
  transform: translate(-50%, -50%);
  opacity: 0;
  transition: 0.7s;
}
.loading .text_container {
  position: relative;
  width: 0;
  transition: 1s;
  will-change: width;
}
.loading .text_container.frame1 {
  transition-delay: 0.7s;
}
@media (max-width: 768px) {
  .loading .text_container.frame1 {
    width: calc(100px + 238 * (100vw - 390px) / 1920);
  }
}
@media (min-width: 768px) {
  .loading .text_container.frame1 {
    width: calc(100px + 140 * 0.0520833333vw);
  }
}
.loading .text_container.frame2 {
  transition-delay: 0s;
}
@media (max-width: 768px) {
  .loading .text_container.frame2 {
    width: calc(200px + 540.6 * (100vw - 390px) / 1920);
  }
}
@media (min-width: 768px) {
  .loading .text_container.frame2 {
    width: calc(200px + 318 * 0.0520833333vw);
  }
}
.loading .text_container.frame3 {
  transition-delay: 0s;
}
@media (max-width: 768px) {
  .loading .text_container.frame3 {
    width: calc(165px + 448.8 * (100vw - 390px) / 1920);
  }
}
@media (min-width: 768px) {
  .loading .text_container.frame3 {
    width: calc(165px + 264 * 0.0520833333vw);
  }
}
.loading .text_container.frame4 {
  transition-delay: 0s;
}
@media (max-width: 768px) {
  .loading .text_container.frame4 {
    width: calc(71px + 198.9 * (100vw - 390px) / 1920);
  }
}
@media (min-width: 768px) {
  .loading .text_container.frame4 {
    width: calc(71px + 117 * 0.0520833333vw);
  }
}
.loading .text_container.frame5 {
  width: 0;
}
@media (max-width: 768px) {
  .loading .text_container.frame6 {
    width: calc(200px + 884 * (100vw - 390px) / 1920);
  }
}
@media (min-width: 768px) {
  .loading .text_container.frame6 {
    width: calc(200px + 520 * 0.0520833333vw);
  }
}
.loading .text_container .text {
  display: flex;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  color: var(--green);
  transition: 0.7s;
}
@media (max-width: 768px) {
  .loading .text_container .text {
    font-size: calc(30px + 85 * (100vw - 390px) / 1920);
  }
}
@media (min-width: 768px) {
  .loading .text_container .text {
    font-size: calc(30px + 50 * 0.0520833333vw);
  }
}
.loading .text_container .text.frame2, .loading .text_container .text.frame3, .loading .text_container .text.frame4 {
  opacity: 0;
}
.loading .text_container .text .text_anim {
  display: block;
  position: relative;
  transform: translateX(60%);
  opacity: 0;
}
.loading .text_container .text .text_anim.reverse {
  transform: translateX(-60%);
}
.loading .text_container .main_text {
  display: flex;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  color: var(--grey);
  transition: 0.7s;
  perspective: 1000px;
}
@media (max-width: 768px) {
  .loading .text_container .main_text {
    font-size: calc(46px + 193.8 * (100vw - 390px) / 1920);
  }
}
@media (min-width: 768px) {
  .loading .text_container .main_text {
    font-size: calc(46px + 114 * 0.0520833333vw);
  }
}
.loading .text_container .main_text .text_anim {
  display: block;
  position: relative;
  opacity: 0;
  transition: 0.5s;
  transform: translateZ(1000px);
  will-change: transform;
}
.loading.animate .logo .dot_out {
  border-color: var(--green);
  animation: moveUp 0.7s forwards;
  animation-delay: 0.6s;
}
.loading.animate .logo .dot_out .dot_in {
  background-color: transparent;
}
.loading.animate .logo .logo_ellipse {
  animation: moveLogoEllipse 0.7s forwards;
  animation-delay: 0.6s;
  animation-fill-mode: forwards;
}
.loading.animate .logo.frame1 .elements.frame1 {
  opacity: 1;
}
.loading.animate .logo.frame2 .elements.frame1 {
  opacity: 0;
}
.loading.animate .logo.frame2 .elements.frame2 {
  opacity: 1;
}
.loading.animate .logo.frame3 .elements.frame2 {
  opacity: 0;
}
.loading.animate .logo.frame3 .elements.frame3 {
  opacity: 1;
}
.loading.animate .logo.frame4 .elements.frame3 {
  opacity: 0;
}
.loading.animate .logo.frame4 .elements.frame4 {
  opacity: 1;
}
.loading.animate .logo.frame5 .elements.frame4 {
  opacity: 0;
}
.loading.animate .logo.frame5 .anim_logo {
  opacity: 1;
}
.loading.animate .text_container.frame1 .text.frame1 .text_anim {
  animation: textAppear 0.4s forwards;
}
.loading.animate .text_container.frame1 .text.frame1 .text_anim:nth-child(1) {
  animation-delay: 1.7s;
}
.loading.animate .text_container.frame1 .text.frame1 .text_anim:nth-child(2) {
  animation-delay: 1.8s;
}
.loading.animate .text_container.frame1 .text.frame1 .text_anim:nth-child(3) {
  animation-delay: 1.9s;
}
.loading.animate .text_container.frame1 .text.frame1 .text_anim:nth-child(4) {
  animation-delay: 2s;
}
.loading.animate .text_container.frame1 .text.frame1 .text_anim:nth-child(5) {
  animation-delay: 2.1s;
}
.loading.animate .text_container.frame2 .text.frame1 {
  opacity: 0;
}
.loading.animate .text_container.frame2 .text.frame2 {
  opacity: 1;
}
.loading.animate .text_container.frame2 .text.frame2 .text_anim {
  animation: textAppearReverse 0.4s forwards;
}
.loading.animate .text_container.frame2 .text.frame2 .text_anim:nth-child(1) {
  animation-delay: 1s;
}
.loading.animate .text_container.frame2 .text.frame2 .text_anim:nth-child(2) {
  animation-delay: 1.1s;
}
.loading.animate .text_container.frame2 .text.frame2 .text_anim:nth-child(3) {
  animation-delay: 1.2s;
}
.loading.animate .text_container.frame2 .text.frame2 .text_anim:nth-child(4) {
  animation-delay: 1.4s;
}
.loading.animate .text_container.frame2 .text.frame2 .text_anim:nth-child(5) {
  animation-delay: 1.5s;
}
.loading.animate .text_container.frame3 .text.frame2 {
  opacity: 0;
}
.loading.animate .text_container.frame3 .text.frame3 {
  opacity: 1;
}
.loading.animate .text_container.frame3 .text.frame3 .text_anim {
  animation: textAppear 0.4s forwards;
}
.loading.animate .text_container.frame3 .text.frame3 .text_anim:nth-child(1) {
  animation-delay: 1s;
}
.loading.animate .text_container.frame3 .text.frame3 .text_anim:nth-child(2) {
  animation-delay: 1.1s;
}
.loading.animate .text_container.frame3 .text.frame3 .text_anim:nth-child(3) {
  animation-delay: 1.2s;
}
.loading.animate .text_container.frame3 .text.frame3 .text_anim:nth-child(4) {
  animation-delay: 1.3s;
}
.loading.animate .text_container.frame4 .text.frame3 {
  opacity: 0;
}
.loading.animate .text_container.frame4 .text.frame4 {
  opacity: 1;
}
.loading.animate .text_container.frame4 .text.frame4 .text_anim {
  animation: textAppear 0.4s forwards;
}
.loading.animate .text_container.frame4 .text.frame4 .text_anim:nth-child(1) {
  animation-delay: 1s;
}
.loading.animate .text_container.frame4 .text.frame4 .text_anim:nth-child(2) {
  animation-delay: 1.1s;
}
.loading.animate .text_container.frame4 .text.frame4 .text_anim:nth-child(3) {
  animation-delay: 1.2s;
}
.loading.animate .text_container.frame4 .text.frame4 .text_anim:nth-child(4) {
  animation-delay: 1.3s;
}
.loading.animate .text_container.frame5 .text.frame4 {
  transform: translate(-200%, -50%);
  opacity: 0;
}
.loading.animate .text_container.frame6 .main_text .text_anim {
  opacity: 1;
  transform: translateX(0);
}
.loading.animate .text_container.frame6 .main_text .text_anim:nth-child(1) {
  transition-delay: 1s;
}
.loading.animate .text_container.frame6 .main_text .text_anim:nth-child(2) {
  transition-delay: 1.1s;
}
.loading.animate .text_container.frame6 .main_text .text_anim:nth-child(3) {
  transition-delay: 1.2s;
}
.loading.animate .text_container.frame6 .main_text .text_anim:nth-child(4) {
  transition-delay: 1.3s;
}
.loading.animate .text_container.frame6 .main_text .text_anim:nth-child(5) {
  transition-delay: 1.4s;
}
.loading.animate .text_container.frame6 .main_text .text_anim:nth-child(6) {
  margin-left: 0.3em;
  transition-delay: 1.5s;
}
.loading.animate .text_container.frame6 .main_text .text_anim:nth-child(7) {
  transition-delay: 1.6s;
}

@keyframes Open {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes moveUp {
  0% {
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
  }
  20% {
    top: 55%;
    left: 55%;
    transform: translate(-50%, -50%);
  }
  22% {
    top: 55%;
    left: 55%;
    transform: translate(-50%, -50%);
  }
  80% {
    top: 20px;
    left: 20px;
    transform: translate(0, 0);
  }
  100% {
    opacity: 0;
    top: 20px;
    left: 20px;
    transform: translate(0, 0);
  }
}
@keyframes moveLogoEllipse {
  0% {
    opacity: 0;
  }
  10% {
    opacity: 0;
  }
  23% {
    opacity: 1;
    top: 30%;
    left: 30%;
    transform: translate(0, 0);
  }
  80% {
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
  }
  100% {
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    opacity: 1;
  }
}
@keyframes elAppear {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes textAppear {
  0% {
    opacity: 0;
    transform: translateX(60%);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
@keyframes textAppearReverse {
  0% {
    opacity: 0;
    transform: translateX(-60%);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
@keyframes Shim {
  0% {
    opacity: 0;
  }
  25% {
    opacity: 1;
  }
  50% {
    opacity: 0;
  }
  75% {
    opacity: 1;
  }
  100% {
    opacity: 1;
  }
}/*# sourceMappingURL=style.css.map */