/* шрифты */

@font-face {
	font-family: "Futura PT";
	src: url("/templates/rostsayt/fonts/FuturaNewBook-Reg.ttf");
	font-weight: 400;
}
@font-face {
	font-family: "Futura PT";
	src: url("/templates/rostsayt/fonts/FuturaNewDemi-Reg.ttf");
	font-weight: 600;
}

/* Настройки шаблона */
:root, body {font-size: 14px;}
@media screen and (min-width: 576px) {
	:root, body {font-size: 14px;}
}
@media screen and (min-width: 768px) {
	:root, body {font-size: 14px;}
}
@media screen and (min-width: 992px) {
	:root, body {font-size: 14px;}
}
@media screen and (min-width: 1200px) {
	:root, body {font-size: 16px;}
}

/* Элементы */
html {width: calc(100% + calc(100vw - 100%)); overflow-x: hidden;}
body {display: flex; flex-direction: column; margin: 0 auto; max-width: 1920px; font-family: 'Futura PT', sans-serif; color: #212120; outline: 1px solid #ddd; overflow-x: hidden; line-height: 150%;}

h1, .h1 {font-size: 48px; font-weight: 600; line-height: 100%;}
h2, .h2 {font-size: 48px; font-weight: 600; line-height: 100%;}
h3, .h3 {font-size: 24px; font-weight: 600; line-height: 100%;}
h4, .h4 {font-size: 18px; line-height: 150%;}

a {text-decoration: none;}
a:hover {color: #15B7A7;}

input.form-control {box-shadow: none !important; color: #fff !important; border: 0; border-radius: 0; border-bottom: 1px solid #FFFFFF; font-family: inherit; font-size: inherit; background: transparent !important; padding: .5rem 0 !important;}
input.form-control::placeholder {color: #FFFFFF; font-size: inherit; font-family: inherit;}
input.form-control:active,
input.form-control:focus {border-bottom: 1px solid #4CB5AB;}

i.fa.fa-angle-up {background: url('/images/icons/angle-up-solid.svg') no-repeat center; width: 100%; height: 100%; }

/* Общие классы */
.font-weight-600 {font-weight: 600;}

.text-black 			{color: #212120;}
.text-green 			{color: #4CB5AB !important;}
.text-lightgreen 	{color: #15B7A7 !important;}
.text-white 			{color: #fff !important;}
.text-grey				{color: #3E3E3E !important;}
.text-lightgrey		{color: #C4C4C4 !important;}
.text-yellow 			{color: #FFD54F !important;}
.text-orange 			{color: #DEA806 !important;}

.bg-black 			{background: #212120 !important;}
.bg-green 			{background: #4CB5AB !important;}
.bg-lightgreen 	{background: #15B7A7 !important;}
.bg-white 			{background: #fff !important;}
.bg-grey				{background: #3E3E3E !important;}
.bg-lightgrey		{background: #C4C4C4 !important;}
.bg-yellow 			{background: #FFD54F !important;}
.bg-orange 			{background: #DEA806 !important;}

.modal-dialog {max-width: 647px;}
.modal-content {color: #FFFFFF; background: #212120;}
.modal-header {border: 0;}
.modal-body {padding: 4.5rem 8.875rem 7rem 7.9rem;}

.btn-close {filter: brightness(0) invert(1);}
/* Переопределения Bootstrap */

@media (min-width: 1200px){
	.offset-xl-5 {margin-left: 41.6666666667% !important;}
}

.btn {padding: 17px 28px; font-weight: 600; text-transform: uppercase; border: 0 !important; border-radius: 0 !important; box-shadow: 0px 10px 12px rgba(0, 0, 0, 0.12) !important;}
.btn-light {color: #4CB5AB; background: #fff; position: relative; z-index: 3;}
/* .btn-light:hover {color: #FFFFFF; background: #4CB5AB;} */
.btn-light {overflow: hidden; -webkit-transition: color 0.3s 0.1s ease-out; -o-transition: color 0.3s 0.1s ease-out; transition: color 0.3s 0.1s ease-out;}
.btn-light::before {position: absolute; top: 0; left: 0;	right: 0;	bottom: 0;	margin: auto;	content: '';	border-radius: 50%;	display: block;	width: 20em;	height: 20em;	line-height: 20em;	left: -5em;	text-align: center;	-webkit-transition: -webkit-box-shadow 0.5s ease-out;	transition: -webkit-box-shadow 0.5s ease-out;	-o-transition: box-shadow 0.5s ease-out;	transition: box-shadow 0.5s ease-out;	transition: box-shadow 0.5s ease-out, -webkit-box-shadow 0.5s ease-out;	z-index: -1; }
.btn-light:hover {	color: #fff; }
.btn-light:hover::before {	-webkit-box-shadow: inset 0 0 0 10em #4CB5AB;	box-shadow: inset 0 0 0 10em #4CB5AB;}
.btn-light:focus {color: #FFFFFF; background: #15B7A7;}

.form-check-input[type=checkbox] {border-radius: 0;}
.form-check-input {border: 0 !important; background: #FFFFFF !important; box-shadow: none !important; width: 10px; height: 10px;}
.form-check-input:checked[type=checkbox] {background-image: url('/images/icons/check.png') !important; background-position: center !important; background-repeat: no-repeat !important;}
/* Шапка */
header {position: fixed !important; top: 0; left: 0; width: 100%; max-width: 1920px; transition: .5s ease; left: 50%; transform: translateX(-50%); -webkit-transform: translateX(-50%); z-index: 999 !important;}
header.scroll {background: #212120; transition: .5s ease;}
header #logo {position: absolute; opacity: 0; transition: opacity .5s ease;}
header.scroll #logo {opacity: 1; transition: opacity .5s ease;}
header #top_menu ul li {margin-right: 2.6rem;}
header #top_menu ul li:nth-child(5) {margin-right: 1.5rem;}
header #top_menu ul li a {font-size: 18px; font-weight: 600; color: #FFFFFF;}
header #top_menu ul li:hover a {color: #4CB5AB;}

/* Подвал */
footer {z-index: 100;}
footer::before {background: #4CB5AB !important;}
footer .footer_items a:hover {color: #212120 !important;}
footer #author a,
footer #author p {color: #EAEAEA !important;}
footer #author::before {height: 1px; background: #EAEAEA;	opacity: 0.45;}
/* Модули */

.mod-home-slide {background: transparent; z-index: 2;}
.mod-home-slide .design {right: 0; bottom: -28%;}
.mod-home-slide .introtext {top: 23%; left: 30%;}

.mod-gas .design {right: -24%; top: -20%; z-index: 1;}

.mod-about .img {right: -58%; top: 0;}
.mod-about .design {right: -82%; bottom: -34%;}
.mod-about .item {max-width: 184px; opacity: 0.95;}

.mod-address .info {max-width: 469px; max-height: 623px; padding: 44px 79px 82px 48px; direction: rtl; right: -0.5%;}
.mod-address .info .items {overflow-y: scroll; max-height: 442px;}
.mod-address .info .items::-webkit-scrollbar {background: #E0E0E0; border-radius: 11px;}
.mod-address .info .items::-webkit-scrollbar-thumb {background: #1B766D; border-radius: 32px; max-height: 43px;}
.mod-address .info .h3,
.mod-address .info .items div {direction: ltr; padding-left: 2.5rem;}
.mod-address .info .h3 {padding-left: 3.5rem;}
.mod-address .info .items .item-map {margin-bottom: 1rem; position: relative;}
.mod-address .info .items .item-map::before {content: url('/images/icons/map.png'); position: absolute; top: 0; left: 15px;}
.mod-address .design {top: 0; bottom: 0; right: 0; left: 0;}
.mod-address .design .item-0 {bottom: -52%; left: -24%; z-index: -1;}
.mod-address .design .item-1 {bottom: 10%; right: 10%; z-index: 52;}
.mod-address .design .item-2 {right: -0.5%; bottom: 10.9%; z-index: 52;}
.mod-address .h2.position-relative,
.mod-address .row.position-relative {z-index: 50;}

.mod-shares::before {background: #4CB5AB;}
.mod-shares .design {top: 0; bottom: 0; right: 0; left: 0;}
.mod-shares .design .item-0 {right: -17%;}
.mod-shares .design .item-1 {right: -24%; bottom: 0;}
.mod-shares .img {filter: drop-shadow(0px 10px 12px rgba(0, 0, 0, 0.12)); -webkit-filter: drop-shadow(0px 10px 12px rgba(0, 0, 0, 0.12));}

.mod-cards .img img {box-shadow: 0px 10px 12px rgba(0, 0, 0, 0.12); border-radius: 18px;}

.mod-contacts .img::before {content: ''; background: linear-gradient(0deg, rgba(76, 181, 171, 0.45), rgba(76, 181, 171, 0.45)); position: absolute; top: 0; right: 0; left: 0; bottom: 0;}
.mod-contacts .item {padding: 4.5rem 4.375rem 6.25rem 5rem;}
.mod-contacts .design {top: 0; bottom: 0; right: 0; left: 0;}
.mod-contacts .design .item-0 {right: -23%; top: 14%;}
.mod-contacts .design .item-1 {bottom: -37%; right: 20%; z-index: 51;}
.mod-contacts .row.position-relative {z-index: 50;}

.mod-footer-soc a:nth-child(1) {margin-right: 1.25rem;}

/* Адаптация */
@media (min-width: 1921px) {
	header{transform: translateX(-50%); -webkit-transform: translateX(-50.5%);}

	.mod-home-slide .img img {height: auto !important; width: auto !important; object-fit: contain !important;}
	.mod-home-slide .introtext {top: 26%; left: 30%;}
	.mod-home-slide .design {right: 0; bottom: -37%;}

	.mod-contacts .img img {height: auto !important; width: auto !important; object-fit: contain !important;}
}

@media (max-width: 1199px) {
	h1, .h1 {font-size: 32px;}
	h2, .h2 {font-size: 28px;}
	h3, .h3 {font-size: 20px;}
	h4, .h4 {font-size: 16px;}

	iframe {width: 100% !important; height: 300px !important;}

	.navbar-toggler-icon {filter: brightness(0) invert(1);}

	header {position: relative !important; left: unset !important; transform: unset !important; -webkit-transform: unset !important; background: #212120;}
	header #logo {opacity: 1; position: unset;}
	header #top_menu ul {flex-direction: column;}
	header #top_menu ul li {padding: .3rem 1rem; margin-bottom: 0;}
	header #top_menu ul li {display:block; position: relative;}
	header #top_menu > ul > li a {padding: 1rem 0.5rem; display: block;}
	header #logo {width: 52%;}
	header .mod-soc {padding: .3rem 1rem;}

	.mod-home-slide {margin-top: 0;}
	.mod-home-slide .design {position: unset !important;}

	.mod-about .img {position: unset !important;}

	.mod-address .info {position: unset !important;}

	.mod-address .info .items .item-map::before {left: 5px;}

	[data-aos="move-card"],
	[data-aos="move-card"].aos-animate,
	[data-aos="fade-in-left"].aos-animate,
	[data-aos="fade-in-right"].aos-animate,
	[data-aos="fade-in-bottom"].aos-animate {-webkit-animation: unset; animation: unset;}

}

@media (min-width: 768px) and (max-width: 1024px) {
	.mod-home-slide .img img {object-position: 46% -80px;}
	.mod-home-slide .design {display: flex;}
	.mod-home-slide .design img {margin-left: auto;}
}

@media (min-width: 425px) and (max-width: 768px) {
	.mod-home-slide .img img {object-position: 86%;}
}

@media (max-width: 425px) {
	.mod-home-slide,
	.mod-home-slide .container {padding-top: 0 !important; padding-bottom: 0 !important;}
	.mod-home-slide .img img {object-position: 80%;}
	.mod-home-slide .title {padding-top: 3rem; margin-top: 2rem;}
}
@media (max-width: 375px) {
	.mod-home-slide .img img {object-position: 72%;}
}
@media (max-width: 320px) {
	.mod-home-slide .img img {object-position: 65%;}
}
/* Анимации */
[data-aos="fade-in-left"].aos-animate {-webkit-animation: fade-in-left 0.8s cubic-bezier(0.390, 0.575, 0.565, 1.000) both, opacity 0.8s linear both; animation: fade-in-left 0.8s cubic-bezier(0.390, 0.575, 0.565, 1.000) both, opacity 0.8s linear both;}
[data-aos="fade-in-right"].aos-animate {-webkit-animation: fade-in-right 0.8s cubic-bezier(0.390, 0.575, 0.565, 1.000) both, opacity 0.8s linear both; animation: fade-in-right 0.8s cubic-bezier(0.390, 0.575, 0.565, 1.000) both, opacity 0.8s linear both;}
[data-aos="fade-in-bottom"].aos-animate {-webkit-animation: fade-in-bottom 0.8s cubic-bezier(0.390, 0.575, 0.565, 1.000) both, opacity 0.8s linear both; animation: fade-in-bottom 0.8s cubic-bezier(0.390, 0.575, 0.565, 1.000) both, opacity 0.8s linear both;}
[data-aos="move-card"].aos-animate {-webkit-animation: move-card 0.8s cubic-bezier(0.390, 0.575, 0.565, 1.000) both; animation: move-card 0.8s cubic-bezier(0.390, 0.575, 0.565, 1.000) both;}
[data-aos="rotate-card"].aos-animate {-webkit-animation: rotate-card 0.8s cubic-bezier(0.390, 0.575, 0.565, 1.000) both; animation: rotate-card 0.8s cubic-bezier(0.390, 0.575, 0.565, 1.000) both; position: relative;}

[data-aos="move-card"] {-webkit-animation: move-card-reverse 0.8s cubic-bezier(0.390, 0.575, 0.565, 1.000) both; animation: move-card-reverse 0.8s cubic-bezier(0.390, 0.575, 0.565, 1.000) both;}

.aos-animate.delay-1 {-webkit-animation-delay:200ms;animation-delay:200ms}
.aos-animate.delay-2 {-webkit-animation-delay:400ms;animation-delay:400ms}
.aos-animate.delay-3 {-webkit-animation-delay:600ms;animation-delay:600ms}
.aos-animate.delay-4 {-webkit-animation-delay:800ms;animation-delay:800ms}
.aos-animate.delay-5 {-webkit-animation-delay:1000ms;animation-delay:1000ms}
.aos-animate.delay-6 {-webkit-animation-delay:1200ms;animation-delay:1200ms}
.aos-animate.delay-7 {-webkit-animation-delay:1400ms;animation-delay:1400ms}
.aos-animate.delay-8 {-webkit-animation-delay:1600ms;animation-delay:1600ms}
.aos-animate.delay-9 {-webkit-animation-delay:1800ms;animation-delay:1800ms}
.aos-animate.delay-10 {-webkit-animation-delay:2000ms;animation-delay:2000ms}

@-webkit-keyframes fade-in-left {
  0% {-webkit-transform: translateX(-50px); transform: translateX(-50px);}
  100% {-webkit-transform: translateX(0); transform: translateX(0);}
}
@keyframes fade-in-left {
  0% {-webkit-transform: translateX(-50px); transform: translateX(-50px);}
  100% {-webkit-transform: translateX(0); transform: translateX(0);}
}

@-webkit-keyframes move-card {
  0% {-webkit-transform: translateX(-50px); transform: translateY(-50px);}
  100% {-webkit-transform: translateX(0); transform: translateX(0);}
}
@keyframes move-card {
  0% {-webkit-transform: translateX(-50px); transform: translateY(-50px);}
  100% {-webkit-transform: translateX(0); transform: translateX(0);}
}

@-webkit-keyframes rotate-card {
  0% {-webkit-transform: rotateY(180deg); transform: rotateY(180deg);}
  100% {-webkit-transform: rotateY(0); transform: rotateY(0);}
}
@keyframes rotate-card {
  0% {-webkit-transform: rotateY(180deg); transform: rotateY(180deg);}
  100% {-webkit-transform: rotateY(0); transform: rotateY(0);}
}

@-webkit-keyframes move-card-reverse{
  0% {-webkit-transform: translateX(0); transform: translateX(0);}
  100% {-webkit-transform: translateX(-50px); transform: translateY(-50px);}
}
@keyframes move-card-reverse {
  0% {-webkit-transform: translateX(0); transform: translateX(0);}
  100% {-webkit-transform: translateX(-50px); transform: translateY(-50px);}
}


@-webkit-keyframes fade-in-right {
  0% {-webkit-transform: translateX(50px); transform: translateX(50px);}
  100% {-webkit-transform: translateX(0); transform: translateX(0);}
}
@keyframes fade-in-right {
  0% {-webkit-transform: translateX(50px); transform: translateX(50px);}
  100% {-webkit-transform: translateX(0); transform: translateX(0);}
}

@-webkit-keyframes fade-in-bottom {
  0% {-webkit-transform: translateY(50px); transform: translateY(50px);}
  100% {-webkit-transform: translateY(0); transform: translateY(0);}
}
@keyframes fade-in-bottom {
  0% {-webkit-transform: translateY(50px); transform: translateY(50px);}
  100% {-webkit-transform: translateY(0); transform: translateY(0);}
}


@keyframes opacity {
  0% {opacity: 0;}
  50% {opacity: 0.5;}
  100% {opacity: 1;}
} 


