﻿	
	/* САЙТ */

	/* ШРИФТ */

@font-face {
    font-family: 'Rubik';
    font-style: normal;
    font-weight: 300 900;
    font-display: swap;
    src: url('fonts/rubik/Rubik-VariableFont_wght.ttf') format('truetype-variations');
}
@font-face {
    font-family: 'Rubik';
    font-style: italic;
    font-weight: 300 900;
    font-display: swap;
    src: url('fonts/rubik/Rubik-Italic-VariableFont_wght.ttf') format('truetype-variations');
}

body {
    font-family: "Rubik", sans-serif;
    font-weight: 400;
}

p, html {font-size: 16px;}
@media all and (min-width: 1024px) { p, html {font-size: 18px;} }
@media all and (min-width: 1280px) { p, html {font-size: 22px;} }
@media all and (min-width: 1536px) { p, html {font-size: 26px;} }
@media all and (min-width: 1900px) { p, html {font-size: 28px;} }
h2 {font-size: 1.6rem; text-align: center; margin: 40px 0;}


	/* СТИЛИЗАЦИЯ ФОРМ */
	
	/* все поля */
input, date, datetime-local, select, textarea, button.button, a.button, .butgrey {display: inline-block; padding: 10px 20px; margin: 5px 2px; box-sizing: border-box; border: 1px solid #4d4d4d; border-radius: 10px; font-size: .9rem;}
	/* кнопки */
input[type=submit], input[type=button], button.button, a.button, .butgrey {color: white; cursor: pointer; background-color: var(--color); border: 1px solid var(--color_dark); font-weight: bold; transition: .4s; line-height: 1;}
.butgrey {color: #222222; background-color: #dddddd; border: 1px solid #b2b2b2;}
	/* наведение */
input[type=submit]:hover, input[type=button]:hover, button.button:hover, a.button:hover {background-color: var(--color_dark); transition: .4s;}


	/* ЦВЕТА */
	
:root {
	--color: #ff6600; /* orange */
	--color_light: #FF8D40;
	--color_dark: #BF6A30;
}
.color  {color: var(--color);}
.fon_grey {background-color: #f5f5f5;}



	/* ПЕРВЫЙ */
	
#first {width: 100%;}

	/* ШАПКА */

#top {width: 100%; display: flex; align-items: center; justify-content: space-between; padding: 25px var(--li); background-color: #f5f5f5;}
#top .logo {display: block; margin-right: 10px; max-width: 50%;}
#top .logo img {height: 40px;}
#top .logo img.logo_min {display: none;}
#top .right {display: flex; align-items: center; flex-wrap: wrap;}
#top .right .phone {display: inline-block; margin: 10px 20px; font-size: 1.2rem;}
#top .right > div {display: flex; align-items: center;}
#top .right .mess {padding: .4rem;}
#top .right .mess img {height: 1rem; width: 1rem;}

@media all and (max-width: 800px) {
	#top .right {align-items: flex-end; flex-direction: column;}
	#top .right .phone {margin: 10px 5px;}
}
@media all and (max-width: 481px) {
	#top .logo {width: 65px;}
	#top .logo img {height: 70px;}
	#top .logo img.logo_max {display: none;}
	#top .logo img.logo_min {display: block;}
}

	/* ГЛАВНЫЙ БЛОК */

#main {min-height: calc(100vh - 170px); background-image: url('../file/first/cover.jpg'); background-size: cover; background-repeat: no-repeat; background-position: center center; position: relative; display: flex;}
#main::before {content: ''; position: absolute; top: 0; left: 0; right: 0; bottom: 0; background: rgba(0, 0, 0, .6); z-index: 0;}
#main > div {margin: auto; padding: 40px var(--li); z-index: 1;}
#main > div h1 {font-size: 2.6rem; color: white; text-align: center;}
#main > div p.chat img {width: 420px; margin: 50px 5px 5px 5px;}


	/* ПРЕИМУЩЕСТВА */

#advantages .flex {flex-wrap: wrap; justify-content: space-evenly;}
#advantages .flex > div {padding: 10px 20px; width: 33.3%; text-align: center; display: flex; flex-direction: column;}
#advantages .flex > div img {height: 64px; margin: 10px;}
#advantages .flex > div h3 {margin: 10px 0; text-align: center;}
#advantages .flex > div p {font-size: .8rem; text-align: center;}

@media all and (max-width: 800px) {
	#advantages .flex > div {width: 50%;}
}
@media all and (max-width: 481px) {
	#advantages .flex > div {padding: 10px 0; width: 100%; flex-direction: row; align-items: center;}
	#advantages .flex > div img {margin-right: 20px;}
	#advantages .flex > div p {text-align: justify;}
}


	/* НАШИ ПРОЕКТЫ */

#works .flex {flex-wrap: wrap; justify-content: space-evenly;}
#works .flex div.img_container {margin: 10px; width: calc(33.33% - 20px); overflow: hidden;}
#works .flex div.img_container img {width: 100%; border-radius: 5px; transition: transform .8s ease; height: auto; display: block;}
#works .flex div.img_container:hover img {transform: scale(1.05);}

@media all and (max-width: 800px) {
	#works .flex div.img_container {width: calc(50% - 20px);}
}
@media all and (max-width: 481px) {
	#works .flex div.img_container {width: calc(100% - 20px);}
}


	/* КАТАЛОГ */

#catalog {background-image: url('../file/catalog/fon.jpg'); background-size: cover; background-repeat: no-repeat; background-position: center center; position: relative;}
#catalog::before {content: ''; position: absolute; top: 0; left: 0; right: 0; bottom: 0; background: rgba(0, 0, 0, .6); z-index: 0;}
#catalog > div {margin: auto; display: flex; align-items: center; justify-content: space-evenly; z-index: 1;}
#catalog > div > div {padding: 40px var(--li); max-width: 45%;}
#catalog > div > div h3 {color: white; font-size: 2rem; margin-bottom: 20px;}
#catalog > div > div img {width: 460px;}

@media all and (max-width: 1024px) {
	#catalog > div > div h3 {font-size: 1.8rem;}
}
@media all and (max-width: 800px) {
	#catalog > div {flex-direction: column;}
	#catalog > div > div {padding: var(--li); max-width: 100%;}
	#catalog > div > div h3 {text-align: center; margin: 40px 0 20px 0;}
	#catalog > div > div p {text-align: center;}
}


	/* МОДАЛКА КАТАЛОГ */

#modal_catalog main {max-width: 420px;}
#modal_catalog h3 {font-size: 1.1rem; padding: 10px 0 5px 0; text-align: center;}
#modal_catalog p.offer {text-align: center; margin-bottom: 20px;}
#modal_catalog p.hints {margin-top: 10px;}


	/* АКЦИИ */

#actions {}
#actions .flex {flex-direction: column; align-items: center;}
#actions .flex > div {padding: 20px var(--li); display: flex;}
#actions .flex > div img {width: 500px; max-width: 50%; object-fit: cover;}
#actions .flex > div div {width: 500px; max-width: 50%; background-color: var(--color); padding: 20px var(--li);}
#actions .flex > div div h3 {color: white; margin-bottom: 20px;}
#actions .flex > div div p {color: white; font-size: .85rem;}
#actions .flex > p {max-width: 1080px; margin-top: 20px; padding: 20px var(--li); font-size: .8rem;}

@media all and (max-width: 800px) {
	#actions .flex > div {flex-direction: column;}
	#actions .flex > div img {width: 100%; max-width: 100%;}
	#actions .flex > div div {width: 100%; max-width: 100%;}
}


	/* ВИДЕО ОТЗЫВЫ */

#video_fb > div {width: 100%;}
#video_fb .flex {width: 100%; flex-wrap: wrap; justify-content: space-between;}
#video_fb .flex > div {width: calc(33.3% - 20px); margin: 10px;}
#video_fb .container {max-width: 400px; display: inline-block; margin: 0 auto; position: relative;}
#video_fb .container img {border-radius: 5px;}
#video_fb div.container svg {position: absolute; top: calc(50% - 3vw); left: calc(50% - 3vw); margin: auto; height: 6vw; fill: white; transition: .5s;}
#video_fb div.container:hover svg {fill: var(--color); transition: .5s;}

@media all and (max-width: 1024px) {
	#video_fb .flex > div {width: calc(50% - 20px);}
	#video_fb div.container svg {top: calc(50% - 4.5vw); left: calc(50% - 4.5vw); height: 9vw;}
}
@media all and (max-width: 800px) {
	#video_fb .flex {flex-direction: column; align-items: center;}
	#video_fb .flex > div {width: calc(100% - 20px);}
	#video_fb div.container svg {top: calc(50% - 9vw); left: calc(50% - 9vw); height: 18vw;}
}


	/* РАССРОЧКА */
	
#credit > div {display: flex; justify-content: space-between; width: 100%;}
#credit .info {width: 52%; display: flex; background: linear-gradient(to right, #e6320a, #f2782c); padding: 20px var(--li); border-radius: 10px;}
#credit .info > div {margin: auto 0;}
#credit .info h2 {color: white; text-align: left; font-size: 2.2rem; margin: 0 0 1rem 0;}
#credit .info p {color: white; font-size: 1.4rem; margin-bottom: 1rem;}
#credit > div > img {width: 45%; object-fit: cover; border-radius: 10px;}

@media all and (max-width: 1024px) {
	#credit .info h2 {font-size: 1.8rem;}
	#credit .info p {font-size: 1.2rem;}
}
@media all and (max-width: 800px) {
	#credit > div {flex-direction: column;}
	#credit .info {width: 100%; background: linear-gradient(to bottom, #e6320a, #f2782c); margin-bottom: 1rem;}
	#credit .info > div {width: 100%;}
	#credit .info h2 {text-align: center;}
	#credit .info p {text-align: center;}
	#credit > div > img {width: 100%; max-height: 280px;}
}


	/* УСЛУГИ */

#services {padding-bottom: 120px;}
#services .flex {flex-wrap: wrap; justify-content: space-evenly;}
#services .flex > div {padding: 10px 20px; width: 33.3%; text-align: center; display: flex; flex-direction: column;}
#services .flex > div img {height: 64px; margin: 10px;}
#services .flex > div h3 {margin: 10px 0; text-align: center;}
#services .flex > div p {font-size: 1rem; text-align: center;}

@media all and (max-width: 800px) {
	#services .flex {align-items: center;}
	#services .flex > div {padding: 10px 0; width: 550px; max-width: 100%; flex-direction: row; align-items: center;}
	#services .flex > div img {margin-right: 30px;}
	#services .flex > div p {text-align: justify;}
}


	/* КАТАЛОГ СТАТЕЙ */
	
#footer_ar_cat > div > div {display: flex; justify-content: space-evenly; flex-wrap: wrap;}
#footer_ar_cat .tile {width: 33.33%; padding: 20px 10px;}
#footer_ar_cat .tile img {width: 100%; border-radius: 20px;}
#footer_ar_cat .tile h3 {margin: 10px 0 5px 5px;}
#footer_ar_cat .tile p.published_at {color: #444; font-size: .8rem; margin-left: 5px;}
#footer_ar_cat button.button-77 {margin-top: 20px;}

@media all and (max-width: 800px) {
	#footer_ar_cat .tile {width: 100%;}
}


	/* ФУТЕР */

#footer {background-color: #333333; padding: 60px calc(var(--li)/2) 140px calc(var(--li)/2);}
#footer > div {display: flex; justify-content: space-between;}
#footer > div > div {margin: 20px calc(var(--li)/2);}
#footer div.about {width: calc(30% - (var(--li)) ); }
#footer div.office {width: calc(30% - (var(--li)) ); }
#footer div.contact {width: calc(40% - (var(--li)) ); max-width: 450px;}
#footer h4 {color: white; font-size: 1.2rem; margin-bottom: 20px;}
#footer p {color: white; font-size: .8rem;}
#footer div.office > div {display: flex; flex-wrap: wrap;}
#footer div.office img {margin: 5px; border-radius: 5px; width: calc(33.33% - 10px);}
#footer div.contact > div {display: flex; }
#footer div.contact > div img {width: .7rem; height: .7rem; object-fit: cover; margin: .2rem .8rem .2rem 0;}
#footer div.contact > div p {margin-bottom: .6rem;}

@media all and (max-width: 800px) {
	#footer {padding: 60px var(--li) 90px var(--li);}
	#footer > div {flex-direction: column;}
	#footer div.about {width: calc(100% - (var(--li)) ); }
	#footer div.office {width: calc(100% - (var(--li)) ); }
	#footer div.contact {width: calc(100% - (var(--li)) ); max-width: 560px;}
	#footer p {font-size: .9rem;}
}




	/***************/
	/* ARTICLE.PHP */
	/***************/
	
	
	/* КАТАЛОГ */
	
#ar_cat > div {display: flex; justify-content: space-evenly; flex-wrap: wrap;}
#ar_cat .tile {width: 33.33%; padding: 20px 10px;}
#ar_cat .tile img {width: 100%; border-radius: 20px;}
#ar_cat .tile h3 {margin: 10px 0 5px 5px;}
#ar_cat .tile p.published_at {color: #444; font-size: .8rem; margin-left: 5px;}

@media all and (max-width: 1024px) {
	#ar_cat .tile {width: 50%;}
}
@media all and (max-width: 800px) {
	#ar_cat .tile {width: 100%;}
}
	
	/* СТАТЬЯ */

#article h3 {margin: 20px 0; font-size: 1.4rem;}
#article .flex {width: 100%; justify-content: space-between;}
#article .flex > div.text {width: 55%; max-width: 640px; padding: 20px var(--li) 20px 0;}
#article .flex > div.img {width: 45%; max-width: 500px; padding: 20px 0 20px var(--li);}

#article .flex > div.img img {border-radius: 20px;}
#article .article p {line-height: 1.5; padding-bottom: 5px;}
#article p.update {font-size: .9rem; color: #444; margin-top: 10px;}

@media all and (max-width: 800px) {
	#article .flex {max-width: 600px; flex-direction: column-reverse;}
	#article h3 {max-width: 600px;}
	#article .flex > div.text {width: 100%; max-width: 600px; padding: 10px 0;}
	#article .flex > div.text p.article {text-align: justify;}
	#article .flex > div.img {width: 100%; max-width: 600px; padding: 10px 0;}
}



	/* СТИЛИЗАЦИЯ КНОПОК */
	
.button-5 {
	align-items: center;
	background-clip: padding-box;
	background-color: var(--color);
	border: 1px solid transparent;
	border-radius: 1.6rem;
	box-shadow: rgba(0, 0, 0, 0.02) 0 1px 3px 0;
	box-sizing: border-box;
	color: #fff;
	cursor: pointer;
	display: inline-flex;
	font-size: .85rem;
	justify-content: center;
	line-height: 1.25;
	margin: 0 .1rem;
	padding: .4rem .8rem;
	position: relative;
	text-decoration: none;
	transition: all 250ms;
	user-select: none;
	-webkit-user-select: none;
	touch-action: manipulation;
	vertical-align: baseline;
	width: auto;
}

.button-5:hover,
.button-5:focus {
	background-color: #fb8332;
	box-shadow: rgba(0, 0, 0, 0.1) 0 4px 12px;
}

.button-5:hover {
	transform: translateY(-1px);
}

.button-5:active {
	background-color: #c85000;
	box-shadow: rgba(0, 0, 0, .06) 0 2px 4px;
	transform: translateY(0);
}

.button-77 {
  align-items: center;
  appearance: none;
  background-clip: padding-box;
  background-color: initial;
  background-image: none;
  border-style: none;
  box-sizing: border-box;
  color: #fff;
  cursor: pointer;
  display: inline-block;
  flex-direction: row;
  flex-shrink: 0;
  font-size: 1rem;
  font-weight: 800;
  justify-content: center;
  line-height: 1.6rem;
  margin: 0;
  min-height: 64px;
  outline: none;
  overflow: visible;
  padding: 19px 26px;
  pointer-events: auto;
  position: relative;
  text-align: center;
  text-decoration: none;
  text-transform: none;
  user-select: none;
  -webkit-user-select: none;
  touch-action: manipulation;
  vertical-align: middle;
  width: auto;
  word-break: keep-all;
  z-index: 0;
}

@media (min-width: 768px) {
  .button-77 {
    padding: 19px 32px;
  }
}

.button-77:before,
.button-77:after {
  border-radius: 80px;
}

.button-77:before {
  background-color: rgba(249, 58, 19, .32);
  content: "";
  display: block;
  height: 100%;
  left: 0;
  overflow: hidden;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: -2;
}

.button-77:after {
  background-color: initial;
  background-image: linear-gradient(92.83deg, #ff7426 0, #f93a13 100%);
  bottom: 4px;
  content: "";
  display: block;
  left: 4px;
  overflow: hidden;
  position: absolute;
  right: 4px;
  top: 4px;
  transition: all 100ms ease-out;
  z-index: -1;
}

.button-77:hover:not(:disabled):after {
  bottom: 0;
  left: 0;
  right: 0;
  top: 0;
  transition-timing-function: ease-in;
}

.button-77:active:not(:disabled) {
  color: #ccc;
}

.button-77:active:not(:disabled):after {
  background-image: linear-gradient(0deg, rgba(0, 0, 0, .2), rgba(0, 0, 0, .2)), linear-gradient(92.83deg, #ff7426 0, #f93a13 100%);
  bottom: 4px;
  left: 4px;
  right: 4px;
  top: 4px;
}

.button-77:disabled {
  cursor: default;
  opacity: .24;
}


	/* ЛОВЕЦ УХОДЯЩИХ */

#modal_invitation .modal__overlay {background: rgba(0,0,0,.3); backdrop-filter: blur(3px);}
#modal_invitation .modal__container {padding: 0; border-radius: 5px !important; background: none;}
#invitation .inv_content {background-color: white; border-radius: 5px 0 0 5px; display: flex;}
#invitation .inv_content > div {margin: auto; padding: 20px var(--li);}
#invitation .inv_content > div h3 {font-size: 1.1rem; margin-bottom: 15px;}
#invitation .inv_content > div p {margin: 10px 0;}
#invitation img {max-width: 200px; border-radius: 0 5px 5px 0;}

@media all and (max-width: 600px) {
	#invitation img {max-width: 140px; object-fit: cover;}
}

@media all and (max-width: 480px) {
	#invitation > img {display: none;}
	#invitation p.manager {display: inline-block; width: 100%;}
	#invitation p.manager img {max-width: 100%; width: 120px; height: 120px; border-radius: 60px;}
	#invitation .inv_content {border-radius: 5px;}
}