@import url('https://fonts.googleapis.com/css2?family=Inter:wght@100;200;300;400;500;600;700;800;900&family=Yanone+Kaffeesatz:wght@200;300;400;500;600;700&display=swap');

* {
  margin: 0;
  padding: 0;
  empty-cells: show;
  font-family: 'Inter', sans-serif;
  position: relative;
  word-wrap: break-word;
  overflow-wrap: break-word;
  align-items: flex-start;
}

:root {
  --accent-white: #f5f5f5;
  --accent-brown: #5E3929;
  --aacent-font: 'Yanone Kaffeesatz';
}

/* ширина скролла */
::-webkit-scrollbar {
  width: 1px;
}

/* трек */
::-webkit-scrollbar-track {
  background: #f1f1f1;
}

/* ползунок */
::-webkit-scrollbar-thumb {
  background: #888;
  border-radius: 10px;
}

/* hover */
::-webkit-scrollbar-thumb:hover {
  background: #555;
}

img {
  border: 0;
}

br {
  clear: both;
}

textarea {
  resize: none;
}

input {
  outline: none !important;
}

input:focus,
textarea:focus {
  outline: 0;
}

button {
  border: 0;
  outline: none !important;
}

body {
  background: #f5f5f5;
}

#q2d {
  color: #5E3929;
  font-size: 14px;
  float: right;
  cursor: pointer;
  vertical-align: top;
  text-decoration: none;
  display: block;
  position: absolute;
  right: 20px;
  bottom: 20px;
}

#q2d img {
  margin-top: -4px;
  margin-right: 5px;
  float: right;
}

#q2d:hover {
  text-decoration: underline;
}

#q2d:hover img {
  opacity: 0.7;
}

.middle {
  margin: auto;
  width: 1680px;
}

.flex {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  flex-wrap: wrap;
}

body.openMenu {
  padding-right: 1px;
}

header {
  /* background: url(../img/fon1.png) no-repeat top right; */
  margin: 0 0 80px;
}

.home_page header {
  position: fixed;
  width: 100%;
  z-index: 10000;
  padding: 20px 0px;
  margin: 0;
}

header.is-scrolled {
  background: rgba(94, 57, 41, 0.75)
}

header .middle {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}

header .navigation {
  display: flex;
  align-items: center;
  gap: 20px;
}

.openSidebarMenu {
  display: none;
}

#sidebarMenu {
  padding: 109px 0 0;
}

#sidebarMenu ul {
  margin: 80px 0 0 0;
}

#sidebarMenu li {
  list-style: none;
  transition: .3s ease-out all;
}

#sidebarMenu li:hover {
  list-style: url(../img/bullet.svg);
  color: #5E3929;
}

#sidebarMenu li:hover a {
  color: #5E3929;
}

#sidebarMenu li.active {
  list-style: url(../img/bullet.svg);
  color: #5E3929;
}

#sidebarMenu li.active a {
  color: #5E3929;
}

#sidebarMenu li a {
  text-decoration: none;
  font-family: var(--aacent-font);
  font-style: normal;
  font-weight: 400;
  font-size: 30px;
  line-height: 200%;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: #000000;
  transition: .3s ease-out all;
}

.button {
  text-decoration: none;
  padding: 9px 14px 5px;
  border: 1px solid #000000;
  border-radius: 5px;
  font-family: var(--aacent-font);
  font-style: normal;
  font-weight: 400;
  font-size: 24px;
  text-align: center;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #000000;
  background: #f5f5f5;
  transition: .5s ease-out all;
  display: inline-block;
}

.button:hover {
  background: #E1E1E1;
}

header nav .button {
  margin: 75px 0 0;
  display: inline-block;
}

.tel {
  font-family: 'Yanone Kaffeesatz';
  font-weight: 400;
  font-size: 24px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #000000;
  text-decoration: none;
  display: block;
  padding: 30px 0;
}

.social_block {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.social_block a {
  display: inline-block;
  transition: .3s ease-out all;
  opacity: 1;
}

.social_block a:hover {
  opacity: 0.5;
}

.topimg {
  text-align: right;
  height: 767px;
  width: 50%;
}

.topimg:before {
  content: ' ';
  background: url(../img/pattern1.svg) no-repeat center center;
  width: 307px;
  height: 53px;
  position: absolute;
  bottom: -20px;
  left: -25vw
}

.topimg h1 {
  text-align: right;
  padding: 236px 0 0 0;
  font-family: var(--aacent-font);
  font-style: normal;
  font-weight: 200;
  font-size: 150px;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: #FFFFFF;
}

.topimg h2 {
  text-align: right;
  font-family: var(--aacent-font);
  font-style: normal;
  font-weight: 400;
  font-size: 50px;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: #FFFFFF;
}

.topimg .button {
  border: 1px solid #ffffff;
  color: white;
  background: none;
  transition: .5s ease-out all;
}

.topimg .button:hover {
  background: #5E3929;
}

.button img {
  margin: 0 0 2px 0 !important;
  border-radius: 0 !important;
}

.scrollroll {
  text-align: center;
  position: absolute;
  bottom: 30px;
  right: 30.5vw;
}

.scrollroll p {
  font-family: var(--aacent-font);
  font-style: normal;
  font-weight: 700;
  font-size: 14px;
  line-height: 200%;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: #FFFFFF;
  padding: 5px 0 0 0;
}

/* всплывающее окно */
.q2doverlay {
  background: rgba(255, 255, 255, 0.5);
  position: fixed;
  width: 100%;
  height: 100%;
  z-index: 99999;
  display: block;
  top: 0;
  left: 0;
}

.q2doverlay .q2dclose {
  position: absolute;
  top: 0;
  width: 100%;
  height: 100%;
  display: inline-block;
  text-decoration: none;
  color: black;
  right: 0;
}

.q2doverlay .q2dclose-x {
  right: 0;
  top: 0;
  width: 120px;
  height: 24px;
  z-index: 5;
  position: relative;
  padding: 3px 14px 10px;
}

.q2doverlay .q2dclose-x img {
  margin: 0;
  top: 4px;
}
#q2doverlay .middle{
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}

.q2dblock {
  width: 100%;
  padding: 109px 0;
  background: #E1E1E1;
  height: 100%;
  z-index: 1;
}

.historyblock {
  padding: 100px 0 0 0;
  width: 900px;
}

.historyblock a {
  color: #5E3929;
  font-weight: 600;
  font-size: 18px;
}

.historyblock a:hover {
  text-decoration: none;
}


/* ТАБЫ */
.tabs {
  height: 60px;
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  padding: 0 0 10px;
  width: 100%;
}

.tabs li {
  display: inline-block;
  cursor: pointer;
  position: relative;
  text-align: center;
  transition: all 0.25s;
  font-family: var(--aacent-font);
  font-style: normal;
  font-weight: 300;
  font-size: 36px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #000000;
  padding: 25px 0 0;
  background: bottom center;
}

.tabs li:hover,
.tabs li.current {
  font-weight: 600;
  background: url(../img/bullet.svg) no-repeat top center;
}

.box {
  display: none;
  padding: 30px 0 0;
  width: 100%;
}

.box.visible {
  display: block;
}

.halfmiddle {
  width: 45%;
  align-self: stretch;
}

.fon1 {
  background: url(../img/pattern2.svg) no-repeat center center;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
}

.fon1 img {
  border-radius: 55%;
  margin: 105px 0;
}

.fon2 {
  background: url(../img/qq.svg) no-repeat right 100px;
  padding: 100px 0 0;
}

h3,
h4 {
  font-family: var(--aacent-font);
  font-style: normal;
  font-weight: 700;
  font-size: 36px;
  line-height: 130%;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #5E3929;
  padding: 0 0 5px;
}

h4 {
  font-size: 26px;
}

p {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-size: 16px;
  line-height: 170%;
  letter-spacing: 0.05em;
  color: #000000;
  padding: 0 0 10px;
}

.halfmiddle.fon2 p {
  padding: 0 0 20px;
}

.fon2 a {
  color: #5E3929;
  font-weight: 600;
  font-size: 18px;
}

.fon2 a:hover {
  text-decoration: none;
}

.halfmiddle.fon2 h4 {
  padding: 0 0 15px;
}

.pluspatterntopright {
  background: url(../img/fon2.png) no-repeat center top;
  padding: 400px 0 0 0;
  margin: 70px auto 0;
}

.pluspatterntopright:before {
  content: ' ';
  background: url(../img/pattern1.svg) no-repeat top right;
  width: 307px;
  height: 53px;
  position: absolute;
  top: -10px;
  right: -10px;
}

.smallmiddle {
  margin: auto;
  width: 88%;
}

h1 {
  font-family: var(--aacent-font);
  font-style: normal;
  font-weight: 200;
  font-size: 120px;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: #5E3929;
  width: 100%;
}

h2 {
  font-family: var(--aacent-font);
  font-style: normal;
  font-weight: 400;
  font-size: 38px;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: #5E3929;
  width: 100%;
  padding: 0 0 40px;
}

.pluspatterntopright h1,
.pluspatterntopright h2 {
  color: white;
}

.whiteblock {
  width: 1555px;
  margin: 60px auto 100px;
  background: #FFFFFF;
  border-radius: 7px;
  padding: 100px 0 30px;
}

.whiteblock .smallmiddle {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

.whiteblock .smallmiddle div {
  width: 45%;
  margin: 0 0 50px;
}

.whiteblock .smallmiddle div img {
  float: left;
}

.whiteblock .smallmiddle div h3,
.whiteblock .smallmiddle div p {
  padding: 0 0 0 140px;
}

.whiteblock .smallmiddle div:last-child {
  align-self: end;
}

.whiteblock .button {
  position: absolute;
  bottom: 0px;
  right: 0px;
  display: inline-block;
  background: white;
}

.whiteblock .button:hover {
  background: #E1E1E1;
}

.whiteblock .button img {
  float: none !important;
}

.halfmiddle p {
  padding: 0 0 30px;
}

.floatright {
  position: absolute;
  right: 0;
  bottom: 0;
}


.main-slider.slider {
  margin: 100px 0 0;
}

.main-slider.slider:before {
  content: ' ';
  background: url(../img/pattern1.svg) no-repeat center center;
  width: 307px;
  height: 53px;
  position: absolute;
  bottom: -20px;
  right: 0;
  z-index: 2;
}

.main-slider .owl-theme .owl-item:nth-child(even) {
  bottom: -90px;
}


.owl-carousel {
  overflow-x: hidden;
  padding: 0 0 95px;
}

.owl-prev,
.owl-next {
  position: absolute;
  top: -235px;
}

.owl-prev:hover,
.owl-next:hover {
  background: none !important;
  opacity: 0.75;
}

.owl-prev span,
.owl-next span {
  font-size: 90px;
  color: white;
}

.owl-prev {
  left: 10px;
}

.owl-next {
  right: 10px;
}

.owl-carousel .owl-stage-outer {
  overflow: visible;
}

.fon3 {
  background: url(../img/pattern2.svg) no-repeat left top;
  padding: 70px 0;
}

.fon3 .floatright {
  position: relative;
  float: right;
  z-index: 1;
}

.fon3 h1 {
  padding: 100px 0 0;
}

.poslugiblock {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  align-items: flex-start;
}

.poslugiblock div {
  width: 45%;
  margin: 50px 0;
}

.poslugiblock img {
  margin: 0 0 25px;
}

.poslugiblock p {
  padding: 10px 0 0;
}

#contactsblock {
  background: url(../img/fon3.jpg) no-repeat center center;
  border-radius: 10px;
  padding: 200px 0 110px;
}

#contactsblock:before {
  content: ' ';
  background: url(../img/pattern1.svg) no-repeat center center;
  width: 307px;
  height: 53px;
  position: absolute;
  left: 110px;
  top: -25px;
}

#contactsblock h1,
#contactsblock h2 {
  color: white;
}

.feedback-form input,
.feedback-form textarea {
  padding: 20px 28px;
  background: #FFFFFF;
  border-radius: 7px;
  width: calc(100% - 56px);
  font-family: var(--aacent-font);
  font-weight: 400;
  font-size: 24px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #000000;
  margin: 0 0 20px;
  border: 0;
  outline: 0;
}

.feedback-form textarea {
  height: 160px;
}

::-webkit-input-placeholder {
  font-family: var(--aacent-font);
  font-weight: 400;
  font-size: 24px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #000000;
}

::-moz-placeholder {
  font-family: var(--aacent-font);
  font-weight: 400;
  font-size: 24px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #000000;
}

:-moz-placeholder {
  font-family: var(--aacent-font);
  font-weight: 400;
  font-size: 24px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #000000;
}

:-ms-input-placeholder {
  font-family: var(--aacent-font);
  font-weight: 400;
  font-size: 24px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #000000;
}

textarea::-webkit-input-placeholder {
  font-family: var(--aacent-font);
  font-weight: 400;
  font-size: 24px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #000000;
}

.feedback-form button {
  background: none;
  border: 1px solid #FFFFFF;
  border-radius: 3px;
  font-family: var(--aacent-font);
  font-weight: 400;
  font-size: 24px;
  text-align: center;
  text-transform: uppercase;
  color: #FFFFFF;
  float: right;
  transition: .5s ease-out all;
  padding: 10px 30px 6px;
  letter-spacing: 0.1em;
  cursor: pointer;
}

.feedback-form button:hover {
  background: #5E3929;
}

footer.middle {
  border-top: 1px solid #5E3929;
  margin: 130px auto 0;
  padding: 35px 0;
}

footer nav a {
  font-family: var(--aacent-font);
  font-weight: 400;
  font-size: 24px;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: #000000;
  display: inline-block;
  padding: 0 25px 0 0;
  text-decoration: none;
}

footer nav a:last-child {
  padding: 0;
}

footer nav a:hover {
  text-decoration: underline;
}

footer .social_block {
  justify-content: right;
}

footer .social_block a {
  display: inline-block;
  padding: 0 0 0 20px;
}

footer p {
  width: 100%;
  text-align: center;
  padding: 80px 0 0;
}

.top {
  text-align: center;
  position: fixed;
  bottom: 20px;
  right: 20px;
  text-decoration: none;
  color: #5E3929;
}

/* poslugi */

header.poslugi {
  background: url(../img/fon1-poslugi.png) no-repeat top right;
  margin: 0 0 140px;
}

.poslugiimg {
  margin: 25px 0 0;
  border-radius: 10px;
  max-width: 100%;
  bottom: -5px;
}

.poslugi.tabsblock .tabs {
  height: auto;
  display: block;
  padding: 0 0 10px;
  width: 415px;
  text-align: right;
}

.poslugi.tabsblock .tabs img {
  margin: 0 0 0 20px;
}

.poslugi.tabsblock .tabs li {
  display: grid;
  grid-template-columns: 1fr 115px;
  text-align: right;
  font-weight: 600;
  color: #5E3929;
  padding: 0;
  align-items: center;
  height: 100px;
}

.poslugi.tabsblock .tabs li:hover,
.tabs li.current {
  font-weight: 600;
  background: none;
  text-decoration: underline;
}

.poslugi.tabsblock .box {
  padding: 70px 0 0;
  width: 1200px;
  background: white;
  border-radius: 10px;
  margin: 0 0 145px;
}

.poslugi.tabsblock .box h3,
.poslugi.tabsblock .box h1,
.poslugi.tabsblock .box h2,
.poslugi.tabsblock .box h4 {
  padding: 0 70px 10px;
  width: auto;
}

.poslugi.tabsblock .box h1,
.poslugi.tabsblock .box h2 {
  font-family: 'Yanone Kaffeesatz';
  font-style: normal;
  font-weight: 700;
  font-size: 36px;
  line-height: 130%;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #5E3929;
}

.poslugi.tabsblock .box h2 {
  font-size: 26px;
}

.poslugi.tabsblock .box p {
  padding: 0 70px 40px;
}

.poslugi.tabsblock .box ul {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-size: 16px;
  line-height: 170%;
  letter-spacing: 0.05em;
  color: #000000;
  padding: 0 90px 40px;
}

#contactsblock.poslugi {
  background: url(../img/fon3.1.jpg) no-repeat center center;
}

/* portfolio */

header.portfolio {
  background: url(../img/fon1-portfolio.png) no-repeat top right;
  margin: 0 0 140px;
}

.portfolio-block {
  margin: 0 auto 70px;
}

.portfolio-block img {
  border-radius: 7px;
  max-width: 100%;
  margin: 0 0 60px;
}

.portfolio-block .work {
  display: flex;
  justify-content: space-between;
  margin: 0 0 122px;
  width: 100%;
  align-items: center;
}

.portfolio-block .img_text {
  display: grid;
  grid-template-columns: 1fr 300px;
  gap: 40px;
  align-items: center;
}

.portfolio-block .text_img {
  display: grid;
  grid-template-columns: 300px 1fr;
  gap: 40px;
  align-items: center;
}



.img-project {
  background: url(../img/portfolio/project-1.png) no-repeat center center;
  background-size: cover;
  width: 73%;
  height: 610px;
  border-radius: 7px;
}

.portfolio-block .description-project {
  width: 22%;
  text-align: left;
}

.portfolio-block .description-project p {
  margin: 0 0 10px;
}

#contactsblock.portfolio {
  background: url(../img/fon3.2.jpg) no-repeat center center;
}

.portfolio-block .work:nth-child(1) .img-project {
  background: url(../img/portfolio/green-hills/green-hills.jpg) no-repeat center center;
  background-size: cover;
}

.portfolio-block .work:nth-child(2) .img-project {
  background: url(../img/portfolio/estetika-prostranstva/estetika-prostranstva.jpg) no-repeat center center;
  background-size: cover;
}

.portfolio-block .work:nth-child(3) .img-project {
  background: url(../img/portfolio/french-town/french-town.jpg) no-repeat center center;
  background-size: cover;
}

.portfolio-block .work:nth-child(4) .img-project {
  background: url(../img/portfolio/happy/happy.jpg) no-repeat center center;
  background-size: cover;
}

.portfolio-block .work:nth-child(5) .img-project {
  background: url(../img/portfolio/lipskaya-bashnya/lipskaya-bashnya.jpg) no-repeat center center;
  background-size: cover;
}

.portfolio-block .work:nth-child(6) .img-project {
  background: url(../img/portfolio/liviv-kvartal/liviv-kvartal.jpg) no-repeat center center;
  background-size: cover;
}

.portfolio-block .work:nth-child(7) .img-project {
  background: url(../img/portfolio/olive-rosha/olive-rosha.jpg) no-repeat center center;
  background-size: cover;
}

.portfolio-block .work:nth-child(8) .img-project {
  background: url(../img/portfolio/vishgorod/vishgorod.jpg) no-repeat center center;
  background-size: cover;
}

.portfolio-block .work:nth-child(9) .img-project {
  background: url(../img/portfolio/riverstoun/riverstoun.jpg) no-repeat center center;
  background-size: cover;
}

.portfolio-block .work:nth-child(10) .img-project {
  background: url(../img/portfolio/slavutich/slavutich.jpg) no-repeat center center;
  background-size: cover;
}

.portfolio-block .work:nth-child(11) .img-project {
  background: url(../img/portfolio/sokilniki/sokilniki.jpg) no-repeat center center;
  background-size: cover;
}

.portfolio-block .work:nth-child(12) .img-project {
  background: url(../img/portfolio/sweet-dreams/sweet-dreams.jpg) no-repeat center center;
  background-size: cover;
}

.portfolio-block .work:nth-child(13) .img-project {
  background: url(../img/portfolio/hunting-lodge/hunting-lodge.jpg) no-repeat center center;
  background-size: cover;
}

/* project page */
h1.title-small {
  font-size: 90px;
}

.portfolio-item p {
  padding-bottom: 40px;
}

.portfolio-item p:has(+ ul) {
  padding-bottom: 5px;
}

.portfolio-item h2 {
  padding-bottom: 20px;
}

.portfolio-item {
  margin: 0 auto 70px;
}

.portfolio-item img {
  border-radius: 7px;
  max-width: 100%;
  margin: 0 0 60px;
}

.portfolio-item ul {
  padding-left: 20px;
  margin-bottom: 40px;
}

.shadow {
  text-shadow: 0 0 20px #5E3929;
}

header.green-hills {
  background: url(../img/portfolio/green-hills/green-hills.jpg) no-repeat top right;
}

.img-project.green-hills {
  background: url(../img/portfolio/green-hills/img1.jpg) no-repeat center center !important;
  background-size: cover !important;
}

header.estetika-prostranstva {
  background: url(../img/portfolio/estetika-prostranstva/estetika-prostranstva.jpg) no-repeat top right;
}

.img-project.estetika-prostranstva {
  background: url(../img/portfolio/estetika-prostranstva/img1.jpg) no-repeat center center !important;
  background-size: cover !important;
}

header.french-town {
  background: url(../img/portfolio/french-town/french-town.jpg) no-repeat top right;
}

.img-project.french-town {
  background: url(../img/portfolio/french-town/img1.jpg) no-repeat center center !important;
  background-size: cover !important;
}

header.lipskaya-bashnya {
  background: url(../img/portfolio/lipskaya-bashnya/lipskaya-bashnya.jpg) no-repeat top right;
}

.img-project.lipskaya-bashnya {
  background: url(../img/portfolio/lipskaya-bashnya/img1.jpg) no-repeat center center !important;
  background-size: cover !important;
}

header.liviv-kvartal {
  background: url(../img/portfolio/liviv-kvartal/liviv-kvartal.jpg) no-repeat top right;
  /*margin: 0 0 140px;*/
}

.img-project.liviv-kvartal {
  background: url(../img/portfolio/liviv-kvartal/img1.jpg) no-repeat center center !important;
  background-size: cover !important;
}

header.olive-rosha {
  background: url(../img/portfolio/olive-rosha/olive-rosha.jpg) no-repeat top right;
}

.img-project.olive-rosha {
  background: url(../img/portfolio/olive-rosha/img1.jpg) no-repeat center center !important;
  background-size: cover !important;
}

header.riverstoun {
  background: url(../img/portfolio/riverstoun/riverstoun.jpg) no-repeat top right;
}

.img-project.riverstoun {
  background: url(../img/portfolio/riverstoun/img1.jpg) no-repeat center center !important;
  background-size: cover !important;
}

header.slavutich {
  background: url(../img/portfolio/slavutich/slavutich.jpg) no-repeat top right;
}

.img-project.slavutich {
  background: url(../img/portfolio/slavutich/img1.jpg) no-repeat center center !important;
  background-size: cover !important;
}

header.sokilniki {
  background: url(../img/portfolio/sokilniki/sokilniki.jpg) no-repeat top right;
}

.img-project.sokilniki {
  background: url(../img/portfolio/sokilniki/img1.jpg) no-repeat center center !important;
  background-size: cover !important;
}

header.sweet-dreams {
  background: url(../img/portfolio/sweet-dreams/sweet-dreams.jpg) no-repeat top right;
}

.img-project.sweet-dreams {
  background: url(../img/portfolio/sweet-dreams/img1.jpg) no-repeat center center !important;
  background-size: cover !important;
}

header.vishgorod {
  background: url(../img/portfolio/vishgorod/vishgorod.jpg) no-repeat top right;
}

.img-project.vishgorod {
  background: url(../img/portfolio/vishgorod/img1.jpg) no-repeat center center !important;
  background-size: cover !important;
}

header.happy {
  background: url(../img/portfolio/happy/happy.jpg) no-repeat top right;
}

.img-project.happy {
  background: url(../img/portfolio/happy/img1.jpg) no-repeat center center !important;
  background-size: cover !important;
}

header.hunting-lodge {
  background: url(../img/portfolio/hunting-lodge/hunting-lodge.jpg) no-repeat top right;
}

.img-project.hunting-lodge {
  background: url(../img/portfolio/hunting-lodge/img1.jpg) no-repeat center center !important;
  background-size: cover !important;
}

#contactsblock.project {
  background: url(../img/fon3.3.jpg) no-repeat center center;
}

/* contactspage */

header.contactspage {
  background: url(../img/fon1-contactspage.png) no-repeat top right;
  margin: 0 0 140px;
}

#contactsblock.contactspage {
  background: url(none) white;
  padding: 85px 0;
}

#contactsblock.contactspage h2 {
  color: #5E3929;
  font-weight: bold !important;
}

#contactsblock.contactspage img {
  float: left;
  margin: 0 50px 50px 0;
}

#contactsblock.contactspage br {
  clear: none;
}

#contactsblock.contactspage .feedback-form input,
#contactsblock.contactspage .feedback-form textarea {
  border: 1px solid #C7C7C7;
}

#contactsblock.contactspage .feedback-form {
  margin: 15px 0 0;
}

#contactsblock.contactspage .feedback-form button {
  border: 1px solid #000000;
  color: #000000;
}

#contactsblock.contactspage .feedback-form button:hover {
  color: white;
}

#contactsblock .halfmiddle {
  padding: 50px 0 0;
}

#contactsblock .halfmiddle p a {
  color: #5E3929;
}



.inner-slider .item {
  padding: 0 10px;
}

.inner-slider img {
  max-height: 90vh;
}

.home_page .sidebarIconToggle {
  display: inline-block;
  transition: all 0.3s;
  box-sizing: border-box;
  cursor: pointer;
  /* height: 60px; */
  width: 60px;
  padding: 8px;
}

.home_page input[type=checkbox]:checked~.sidebarIconToggle>.horizontal {
  transition: all 0.3s;
  box-sizing: border-box;
  opacity: 0;
  background: #f5f5f5;
}

.home_page input[type=checkbox]:checked~.sidebarIconToggle>.diagonal.part-1 {
  transition: all 0.3s;
  box-sizing: border-box;
  transform: rotate(135deg);
  margin-top: 10px;
  background: #f5f5f5;
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.75);
}

.home_page input[type=checkbox]:checked~.sidebarIconToggle>.diagonal.part-2 {
  transition: all 0.3s;
  box-sizing: border-box;
  transform: rotate(-135deg);
  margin-top: -11px;
  background: #f5f5f5;
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.75);
}

.home_page input[type="checkbox"]:checked~#sidebarMenu {
  transform: translateX(0);
}

.home_page input[type=checkbox] {
  transition: all 0.3s;
  box-sizing: border-box;
  display: none;
}

/*input[type="checkbox"]:checked ~ header {background: red;border: 5px solid black;}*/
.home_page .spinner {
  transition: all 0.3s;
  box-sizing: border-box;
  position: absolute;
  height: 2px;
  width: 100%;
  background-color: #f5f5f5;
  border-radius: 5px;
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.75);
}

.home_page .horizontal {
  transition: all 0.3s;
  box-sizing: border-box;
  position: relative;
  float: left;
  margin-top: 7px;
}

.home_page .diagonal.part-1 {
  position: relative;
  transition: all 0.3s;
  box-sizing: border-box;
  float: left;
}

.home_page .diagonal.part-2 {
  transition: all 0.3s;
  box-sizing: border-box;
  position: relative;
  float: left;
  margin-top: 7px;
}

.home_page .first_screen {
  background: url('/img/fon1.png') no-repeat;
  background-size: cover;
  background-position: center;
  padding-top: 140px;
  padding-bottom: 80px;
}

.home_page .first_screen .label {
  color: #f2c4a2;
  margin-bottom: 40px;
  font-size: 18px;
  text-transform: uppercase;
  font-weight: 300;
  font-family: var(--aacent-font);
}

.home_page .first_screen h1 {
  color: var(--accent-white);
  font-weight: 300;
  font-size: 80px;
  font-family: var(--aacent-font);
  margin-bottom: 20px;
}

.home_page .first_screen .content_block {
  max-width: 800px;
}

.home_page .first_screen h2 {
  font-family: 'Inter';
  text-transform: none;
  font-size: 20px;
  max-width: 500px;
  color: #f2c4a2;
  text-shadow: 0 0 20px black;
}

.home_page .first_screen .controls {
  padding-bottom: 100px;
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
}

.home_page .first_screen .controls .button {

  border: 1px solid #ffffff;
  color: white;
  background: none;
  transition: .5s ease-out all;
}

.home_page .first_screen .controls .button:hover {
  background: #5E3929;
}

.home_page .first_screen .icons_list {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 10px;
  max-width: 65%;
  /* backdrop-filter: blur(2px); */
  padding: 10px;
}

.home_page .first_screen .icons_list h2 span {
  color: var(--accent-white);
  font-size: 30px;
  text-transform: uppercase;
  font-family: var(--aacent-font);

}

.home_page .first_screen .icons_list h2 {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 0;
  width: 250px;
}

.home_page #sidebarMenu {
  position: fixed;
  background: white;
  transform: translateX(100%);
  transition: transform 250ms ease-in-out;
  right: 0;
  height: 100%;
  overflow: auto;
  margin-top: -10px;
  text-align: center;
  width: 100%;
  top: 0;
}

.home_page .close_sidebar {
  position: absolute;
  right: 0px;
  top: -50px;
  width: 60px;
  height: 60px;
  cursor: pointer;
}

.home_page .close_sidebar .part-2 {
  box-sizing: border-box;
  transform: rotate(-135deg);
  margin-top: -3px;
  background: #f5f5f5;
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.75);
}

.home_page .close_sidebar .part-1 {
  box-sizing: border-box;
  transform: rotate(135deg);
  margin-top: 10px;
  background: #f5f5f5;
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.75);
}

.home_page header .social_block {
  gap: 20px;
  padding-right: 10px;
  border-right: 1px solid #f5f5f5;
}

.home_page header .tel {
  padding: 0;
  color: #f5f5f5;
}

.home_page.openMenu header .social_block {
  justify-content: center;
  gap: 20px;
}

.home_page.openMenu header .tel {
  padding: 30px 0;
  color: #000000;
}

.home_page.openMenu header #sidebarMenu .button {
  margin-top: 75px;
}

.home_page.openMenu .sidebarIconToggle {
  position: fixed;
  z-index: 10;
  top: 20px;
  right: 120px;
}

.home_page .about a svg path{
      stroke: var(--accent-brown);
}
.home_page .about a:hover {
  color: var(--accent-white);
  background: var(--accent-brown);
}
.home_page .about a:hover svg path{
      stroke: var(--accent-white);
}
.home_page .about {
  margin-bottom: 70px;
}

.statistics {
  margin-top: 60px;
}

.statistics .list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
  background: #FFFFFF;
  padding: 30px 52px 40px 52px;
  margin: 0 auto;
  width: max-content;
  margin-bottom: 80px;
}

.statistics .counter {
  font-size: 60px;
  font-weight: 700;
  text-transform: uppercase;
  color: var(--accent-brown);
}

.statistics .name {
  color: #000;
  font-weight: 400;
  font-size: 16px;
}

.statistics .item {
  display: flex;
  gap: 24px;
  width: 330px;
}

.statistics .number {
  display: flex;
  flex-direction: column;
}

.statistics .content_block {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  align-items: center;
  gap: 20px;
}

.statistics .content_block h3 {
  font-size: 36px;
  font-weight: 700;
  text-transform: uppercase;
  color: var(--accent-brown);
}

.statistics .content_block p {
  font-size: 16px;
  font-weight: 400;
  color: var(--accent-brown);
  max-width: 620px;
}

.statistics .content_block img {
  width: 100%;
}

/************* Адаптивность *************/

@media only screen and (max-width: 1800px),
only screen and (max-device-width: 1800px) {

  /* меню сендвич */
  .openSidebarMenu {
    display: inline-block;
  }

  #sidebarMenu {
    position: fixed;
    background: white;
    transform: translateX(100%);
    transition: transform 250ms ease-in-out;
    right: 0;
    height: 100%;
    overflow: auto;
    margin-top: -10px;
    text-align: center;
    width: 100%;
  }

  .sidebarIconToggle {
    display: inline-block;
    transition: all 0.3s;
    box-sizing: border-box;
    cursor: pointer;
    position: absolute;
    z-index: 9999;
    height: 100%;
    width: 100%;
    top: 25px;
    height: 60px;
    width: 60px;
    right: -10px;
    padding: 8px;
  }


  .home_page .sidebarIconToggle {
    display: inline-block;
    transition: all 0.3s;
    box-sizing: border-box;
    cursor: pointer;
    height: auto;
    width: 60px;
    padding: 8px;
    position: unset;
  }

  input[type=checkbox]:checked~.sidebarIconToggle>.horizontal {
    transition: all 0.3s;
    box-sizing: border-box;
    opacity: 0;
    background: #f5f5f5;
  }

  input[type=checkbox]:checked~.sidebarIconToggle>.diagonal.part-1 {
    transition: all 0.3s;
    box-sizing: border-box;
    transform: rotate(135deg);
    margin-top: 10px;
    background: #f5f5f5;
    box-shadow: 0 0 5px rgba(0, 0, 0, 0.75);
  }

  input[type=checkbox]:checked~.sidebarIconToggle>.diagonal.part-2 {
    transition: all 0.3s;
    box-sizing: border-box;
    transform: rotate(-135deg);
    margin-top: -11px;
    background: #f5f5f5;
    box-shadow: 0 0 5px rgba(0, 0, 0, 0.75);
  }

  input[type="checkbox"]:checked~#sidebarMenu {
    transform: translateX(0);
  }

  input[type=checkbox] {
    transition: all 0.3s;
    box-sizing: border-box;
    display: none;
  }

  /*input[type="checkbox"]:checked ~ header {background: red;border: 5px solid black;}*/
  .spinner {
    transition: all 0.3s;
    box-sizing: border-box;
    position: absolute;
    height: 2px;
    width: 100%;
    background-color: #f5f5f5;
    border-radius: 5px;
    box-shadow: 0 0 5px rgba(0, 0, 0, 0.75);
  }

  .horizontal {
    transition: all 0.3s;
    box-sizing: border-box;
    position: relative;
    float: left;
    margin-top: 7px;
  }

  .diagonal.part-1 {
    position: relative;
    transition: all 0.3s;
    box-sizing: border-box;
    float: left;
  }

  .diagonal.part-2 {
    transition: all 0.3s;
    box-sizing: border-box;
    position: relative;
    float: left;
    margin-top: 7px;
  }



  header {
    background-position: top center !important;
    background-size: cover !important;
  }

  .home_page header .middle {
    display: flex;
  }

  header .middle {
    display: block;
  }

  .q2dblock .middle {
    display: flex;
  }

  header nav {
    width: 100%;
    z-index: 1;
  }

  header nav .social_block {
    display: block;
  }

  header nav .social_block a {
    padding: 0 10px;
  }

  .topimg {
    width: 100%;
  }

  .scrollroll {
    right: 0vw;
    width: 100%;
  }

  .middle {
    width: 95%;
  }

  .fon1 {
    background-size: contain;
  }

  .fon1 img {
    max-width: 100%;
  }

  .whiteblock {
    width: 90%;
    margin: 60px
  }

  .portfolio-block .work {
    margin: 0 0 80px;
  }

  .poslugi.tabsblock .box {
    padding: 50px 0 0;
    width: 100%;
    margin: 0 0 45px;
    order: 2;
  }

  .poslugi.tabsblock .tabs {
    text-align: left;
    order: 1;
  }

  .poslugi.tabsblock .tabs li {
    text-align: left;
    /*grid-template-columns: 115px 1fr;*/
  }

  .poslugi.tabsblock .tabs li span {
    order: 2
  }

  .poslugi.tabsblock .tabs li img {
    order: 1;
    width: 75px;
  }

  header.poslugi {
    margin: 0 0 80px;
  }

}

@media only screen and (max-width: 1680px),
only screen and (max-device-width: 1680px) {
  .home_page.openMenu .sidebarIconToggle {
    right: 30px;
  }
}

@media only screen and (max-width: 1300px),
only screen and (max-device-width: 1300px) {

  .topimg {
    height: 500px;
  }

  .topimg h1.title-small {
    font-size: 70px;
  }

  .topimg h1 {
    font-size: 120px;
    padding: 120px 0 0 0;
  }

  h1 {
    font-size: 100px;
  }

  h3 {
    font-size: 30px;
  }

  .pluspatterntopright {
    padding: 300px 0 0 0;
    margin: 50px auto 0;
  }

  .whiteblock .smallmiddle div h3,
  .whiteblock .smallmiddle div p {
    padding: 0 0 0 70px;
  }

  .whiteblock .smallmiddle div {
    width: 47%;
    margin: 0 0 30px;
  }

  .whiteblock .smallmiddle div img {
    width: 50px;
  }

  .whiteblock .button img {
    width: auto !important;
  }

  .whiteblock {
    padding: 70px 0 30px;
  }

  .halfmiddle {
    width: 47%;
  }

  .whiteblock {
    margin: 0px auto 70px;
  }

  footer nav a {
    font-size: 20px;
    padding: 0 15px 0 0;
  }

  .q2doverlay .q2dclose-x {
    position: absolute;
  }

  .img-project {
    width: 100%;
    order: 2;
  }

  .portfolio-block .description-project {
    width: 100%;
    order: 1;
    margin: 0 0 20px;
  }

  .portfolio-block .work {
    flex-wrap: wrap;
  }

  header.project-1,
  header.portfolio {
    margin: 0 0 40px;
  }

  .portfolio-block .work {
    margin: 0 0 70px;
  }

  .portfolio-block img {
    margin: 0 0 20px;
  }

  .portfolio-block {
    margin: 0 auto 0;
  }

  header.poslugi {
    margin: 0 0 20px;
  }

  .home_page .first_screen .icons_list {
    max-width: 70%;
  }

}

@media only screen and (max-width: 1200px),
only screen and (max-device-width: 1200px) {
  .statistics .counter {
    font-size: 38px;
  }

  .statistics .item {
    width: 290px;
    gap: 10px;
  }

  .home_page .first_screen .icons_list {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media only screen and (max-width: 1024px),
only screen and (max-device-width: 1024px) {
  .statistics .content_block {
    grid-template-columns: 1fr;
  }

  .statistics .content_block p {
    max-width: 100%;
  }

  .statistics .list {
    grid-template-columns: repeat(2, 1fr);
    width: calc(100% - 100px);
    max-width: 700px;
  }

  /* третий элемент по центру */
  .statistics .list .item:nth-child(3) {
    grid-column: 1 / -1;
    justify-self: center;
  }

  .statistics .item {
    max-width: 270px;
  }
}

@media only screen and (max-width: 990px),
only screen and (max-device-width: 990px) {

  h2 {
    font-size: 30px;
    padding: 0 0 20px;
  }

  .poslugiblock div {
    width: 47%;
    margin: 20px 0;
  }

  h1 {
    font-size: 80px;
  }

  .tabs li {
    font-size: 26px;
  }

  header.contactspage {
    margin: 0 0 40px;
  }

  #contactsblock.contactspage {
    padding: 45px 0;
  }

  .poslugi.tabsblock .box {
    padding: 30px 0 0;
  }

  .poslugi.tabsblock .box p {
    padding: 0 30px 20px;
  }

  .poslugi.tabsblock .box h3,
  .poslugi.tabsblock .box h4 {
    padding: 0 30px 10px;
  }

  .poslugi.tabsblock .tabs {
    width: 300px;
    padding: 0 0 25px 0.5%;
  }

  .poslugi.tabsblock .tabs li {
    height: 75px;
  }

}

@media only screen and (max-width: 850px),
only screen and (max-device-width: 850px) {

  header {
    margin: 0 0 30px;
  }

  .historyoverlay .logo {
    position: absolute;
  }

  .historyoverlay .logo img {
    width: 150px;
  }

  .topimg h1.title-small {
    font-size: 50px;
  }

  .topimg h1 {
    font-size: 80px;
  }

  .halfmiddle {
    width: 90%;
    margin: auto;
  }

  .fon1 img {
    margin: 40px 0;
  }

  .fon2 {
    padding: 35px 0 0;
  }

  .pluspatterntopright {
    padding: 130px 0 0 0;
  }

  .whiteblock .smallmiddle div {
    width: 95%;
    margin: 0 0 20px;
  }

  .whiteblock {
    padding: 40px 0 30px;
  }

  .whiteblock .smallmiddle div:last-child {
    margin: 40px 0 0;
  }

  .smallmiddle .halfmiddle {
    width: 100%;
  }

  .floatright {
    bottom: -30px;
  }

  .fon3 {
    padding: 10px 0;
  }

  .poslugiblock div {
    width: 100%;
  }

  .poslugiblock img {
    margin: 0 0 10px;
    width: 20%;
  }

  #contactsblock {
    border-radius: 0;
    padding: 0 0 30px;
    width: 100%;
    margin: 20px auto 0;
  }

  #contactsblock .halfmiddle {
    padding: 30px 0 0;
  }

  #contactsblock:before {
    display: none;
  }

  #contactsblock h1,
  #contactsblock h2 {
    padding: 0;
  }

  footer.middle {
    margin: 40px auto 0;
    padding: 30px 0 0;
  }

  footer .halfmiddle {
    width: 100%;
    text-align: center;
  }

  footer .social_block {
    justify-content: center;
    margin: 20px 0 0;
  }

  footer p {
    padding: 20px 0 0;
  }

  .img-project {
    height: 400px;
  }

  .statistics .list {
    grid-template-columns: 1fr;
  }

  .statistics .list .item:nth-child(3) {
    grid-column: auto;
    justify-self: stretch;
  }

}

@media only screen and (max-width: 768px),
only screen and (max-device-width: 768px) {
  .home_page .first_screen .icons_list {
    max-width: 100%;
  }

  .home_page .first_screen .content_block {
    max-width: 100%;
  }

  .statistics .list .item svg {
    width: 25%;
    height: 25%;
  }

  .home_page header .tel,
  .home_page header .social_block {
    display: none;
  }

  .home_page .first_screen h1 {
    font-size: 50px;
  }

  .home_page .first_screen .controls {
    padding-bottom: 30px;
  }
  .home_page.openMenu .sidebarIconToggle{
    right:10px;
  }
}

@media only screen and (max-width: 555px),
only screen and (max-device-width: 555px) {
  .statistics .item {
    gap: 20px;
  }

  .home_page .first_screen .icons_list h2 img {
    width: 48px;
  }

  .home_page .first_screen .icons_list h2 {
    font-size: 16px;
    width: 190px;
  }

}

@media only screen and (max-width: 500px),
only screen and (max-device-width: 500px) {

  .tabs li {
    font-size: 20px;
  }

  body {
    min-width: 380px;
  }

  .button {
    padding: 9px 14px 5px;
    font-size: 20px;
  }

  .slider {
    margin: 60px 0 0;
  }

  h1 {
    font-size: 70px;
  }

  h2 {
    font-size: 25px;
  }

  #q2d {
    font-size: 0;
    right: 5px;
    bottom: 5px;
  }

  .img-project {
    height: 300px;
  }

  .poslugi.tabsblock .tabs li {
    font-size: 26px;
  }

  @media only screen and (max-width: 425px),
  only screen and (max-device-width: 425px) {
    .home_page .first_screen .icons_list {
      grid-template-columns: 1fr;
    }

    .home_page .first_screen .icons_list h2 {
      width: 100%;
    }
  }
}