﻿:root {
	--link-color: #0d6efd;
	--text-color: #4c4243;
	--font-main: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
}
html, body {
	width: 100%; height: 100%;
}
body {
	color: var(--text-color);
	overflow-x: hidden;
}
.navbar-dark .navbar-brand {
	font-size: 20px;
	font-weight: 400;
    padding-left: 46px;
	background-size: 38px;
	background-repeat: no-repeat;
    background-position:-1px center;
	background-image: url('../img/ico.svg');
	text-shadow: 0px 0px 4px #ff0000;
	font-family: "Lobster", sans-serif;
    text-transform: capitalize;
}
.form-select-sm {
	padding-right: 2rem;
    background-size: 16px;
	background-position: right .45rem top .44rem;
}
.dropdown-menu.show {
	display: block;
}
.dropdown-menu:not(.dropdown-menu-end).show:after {
	top: -6px;
	left: 33px;
	position: absolute;
	display: inline-block;
	border-right: 6px solid transparent;
	border-bottom: 6px solid #fff;
	border-left: 6px solid transparent;
	content: '';
}
ul, ol {
	margin: 0;
}

label.error, label sup {
	color: red;
}
label.error {
	color: red; font-size: 12px; margin-top:-8px;
}

a[role="button"] {
	*min-width: 120px;
}
input[type='reset'], input[type='submit'], button[type='submit'], button[type='button'], button[type='reset'] {
	font-weight:500;
	transition: transform 0.2s ease-out;
	-ms-transition: -ms-transform 0.2s ease-out;
	-moz-transition: -moz-transform 0.2s ease-out;
    -webkit-transition: -webkit-transform 0.2s ease-out;
	*box-shadow: 0 1px 3px rgb(0 0 0 / 2%), 0 1px 2px rgb(0 0 0 / 12%);
}

a[role="button"]:hover, input[type='submit']:hover, input[type='reset']:hover, button[type='submit']:hover, button[type='reset']:hover {
	transform: scale(1.02);
    -ms-transform: scale(1.02);
    -moz-transform: scale(1.02);
    -webkit-transform: scale(1.02);
	box-shadow: 0 4px 8px 0 rgb(0 0 0 / 20%), 0 4px 18px 0 rgb(0 0 0 / 19%);
}
.form-control.error, .form-select.error {
	border: solid 1px rgb(255, 0, 0); 
	color: rgba(245, 9, 9, 0.932);
	background-repeat: no-repeat;
    background-position: right calc(0.375em + 0.1875rem) center;
    background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
	background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23dc3545' viewBox='0 0 12 12'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");
}
input[type="text"].valid, input[type="email"].valid, input[type="password"].valid, .form-select.valid, .form-control.valid {
    background-repeat: no-repeat; background-position: right calc(0.375em + 0.1875rem) center; background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
	background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%2328a745' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");
}
form cite {
	color: red;
	float: right;
	font-size: 20px;
	margin:-8px 0 0 8px;
}
input[type='url'], input[type='tel'], input[type='file'], input[type='text'], input[type='email'], input[type='search'], input[type='number'], input[type='password'], textarea {
	color: #333;
	*font-size: 1rem;
	*line-height: 1.5;
	*padding: 0.375rem 0.75rem;
	border: 1px solid #ced4da;
}
textarea {
	height: 38px;
}

select::placeholder, input.form-control::-webkit-input-placeholder, textarea.form-control::-webkit-input-placeholder, textarea::-webkit-input-placeholder {
	opacity:.75; color: #808080;
}
input::-webkit-input-placeholder, input::-moz-placeholder, input::-o-placeholder {
	opacity:.55; color: #808080;
}
/*
input::-moz-placeholder {
	opacity:.55; color: #808080;
}
input:-ms-input-placeholder {
	opacity:.55; color: #808080;  
}
input:-o-placeholder {
	opacity:.55; color: #808080;   
}
input.form-control.valid + .input-group-text i.fa {
	color: #0d6efd;
}
*/
/* input[type='url']:focus::placeholder,
input[type='tel']:focus::placeholder,
input[type='file']:focus::placeholder,
input[type='text']:focus::placeholder,
input[type='email']:focus::placeholder,
input[type='number']:focus::placeholder,
input[type='search']:focus::placeholder,
input[type='password']:focus::placeholder,  */
select:focus::placeholder, input.form-control:focus::placeholder, textarea:focus::placeholder {
	opacity: 0;
}

input[type="date"] {
	-webkit-appearance: none;
    	-moz-appearance: none;
			appearance: none;
}
  
/***select:required.error,  appearance: none;*/
input.error::-webkit-input-placeholder {
	color: red !important;
	opacity: 1.0;
}
input.error::-moz-placeholder {
	color  : red !important;
	opacity: 1.0;
}
input.error:-ms-input-placeholder {
	color  : red !important;
	opacity: 1.0;
}
textarea.error::-webkit-input-placeholder {
	color  : red !important;
	opacity: 1.0;
}
textarea.error::-moz-input-placeholder {
	color  : red !important;
	opacity: 1.0;
}

textarea.error::-ms-input-placeholder {
	opacity: 1.0;
	color  : red !important;
}

input[type="checkbox"], input[type="radio"] {
	width: 1em;
	float: left;
	opacity: 0;
	display: block;
	z-index: -1;
	margin-right: -2em;
	-moz-appearance: none;
		-webkit-appearance: none;
			-ms-appearance: none;
				appearance: none;
}

input[type="checkbox"]+label, input[type="radio"]+label {
	*text-decoration: none;
	margin: 2px;
	color          : #646464;
	cursor         : pointer;
	display        : inline-block;
	font-size      : 1em;
	font-weight    : 400;
	position: relative;
	width         : 1.6em;
	height        : 1.6em;
	display       : inline-block;
	background    : #fff;
	border        : solid 1px #b5c0cb;
	vertical-align: middle;
}

input[type="checkbox"]+label:before, input[type="radio"]+label:before {
	-moz-osx-font-smoothing: grayscale;
	-webkit-font-smoothing : antialiased;
	font-style    : normal;
	font-variant  : normal;
	text-rendering: auto;
	line-height   : 1;
	text-transform: none !important;
	font-family   : 'FontAwesome';
	font-weight   : 400;
}

input[type="checkbox"]+label:before, input[type="radio"]+label:before {
	content    : '';
	display    : inline-block;
	font-size  : 1.05em;
	top        : 0;
	left       : 0;
	right      : 0;
	line-height: 1.45em;
	position   : absolute;
	text-align : center;
}

input[type="checkbox"]:checked+label:before {
	*background : #0d6efd;
	*border-color: #0d6efd;
	*color      : #ffffff;
	*background : #ffffff;
	*border-color: #474747;
	color: #474747;
	content: '\f00c';
}
input[type="radio"]:checked+label:before {
	content: '\f111';
}
input[type="checkbox"]:focus+label:before, input[type="radio"]:focus+label:before {
	border-color: #0d6efd;
}
input[type="radio"]+label {
	border-radius: 100%;
}

.breadcrumbs h5 {
	line-height: 1;
	margin: 1.5em 0;
	font-weight: 400;
	font-size: 1.1em;
}
.breadcrumbs h5 a {
	text-decoration: none;
}
.category-title {
	color: #aaa;
	padding: 10px 0;
	font-weight: 400;
 	position: relative;
}
.category-title::after {
	top: 0;
    right: 0;
    content: '...';
	font-size: 1.55em;
	position: absolute;
}

.card a[role="card"] > img {
    -webkit-transition	: -webkit-transform 0.2s ease-out;
		-moz-transition	: -moz-transform 0.2s ease-out;
    		-ms-transition: -ms-transform 0.2s ease-out;
    			transition: transform 0.2s ease-out;
}
.card:hover a[role="card"] > img {
    -webkit-transform : scale(1.15);
		-moz-transform: scale(1.15);
    		-ms-transform:scale(1.15);
    			transform:scale(1.15);
}

.tab-pane .modal-body {
	padding: 0;
}
.tab-pane .modal-footer {
	padding         : 0;
	text-align      : left;
	background-color: #fff;
	border-top      : 0px;
}

table.list > thead > tr > th {
	font-weight: 400;
	*font-size: 1.048em;
}
table.list > thead > tr > th, table.list > tbody > tr > td {
	padding: .35rem .2rem;
	white-space: nowrap;
	vertical-align: middle;
}
table.list > thead > tr > th:nth-child(6) {
	*text-align: center;
}
table.list>tbody>tr>td:nth-child(6) {
	padding: 1px 5px;
}
table.list>thead>tr>th:first-child, 
table.list>thead>tr>th:last-child,
table.list>tbody>tr>td:last-child,
table.list>tbody>tr>td:first-child,
table.list>tfoot>tr>th:first-child,
table.list>tfoot>tr>th:last-child {
	text-align: center;
}
table.list > tbody > tr > td a {
	text-decoration: none;
}
table.list > tbody > tr > td img.icon {
	width:34px;
	margin:-2px 0;
	*height: 34px;
	*margin: 1px auto;
	*vertical-align: central;
	-webkit-transition-duration: 0.3s;
	-moz-transition-duration   : 0.3s;
	-o-transition-duration : 0.3s;
	transition-duration: 0.3s;
	-moz-box-shadow: 0 0 4px #bbb;
	-webkit-box-shadow: 0 0 4px #bbb;
	-o-box-shadow: 0 0 4px #bbb;
	box-shadow: 0 0 4px #bbb;
}

table.list > tbody > tr > td img:hover {
	z-index: 1;
	-webkit-transform: scale(1.6);
	-moz-transform: scale(1.6);
	-o-transform: scale(1.6);
	transform: scale(1.6); 
}

.cursor-pointer{
	cursor: pointer;
}
.object-fit-none, .o-fit-none {
	object-fit:none;
}
.object-fit-fill, .o-fit-fill {
	object-fit:fill;
}
.object-fit-cover, .o-fit-cover {
	object-fit:cover;
}
.object-fit-contain, .o-fit-contain {
	object-fit: contain;
}
.circleAvatar {
	width: 100%;
	height:auto;
	max-width: 220px;
	max-height:220px;
}
.circleAvatar > img {
	width: inherit;
    height: inherit;
	max-width: inherit;
	max-height:inherit;
	*object-fit: cover;
}

.circleAvatar .overlay {
	left: 0;
	right: 0;
	bottom: 0;
	height: 0;
	width: 100%;
	cursor: pointer;
	overflow: hidden;
	position: absolute;
	transition: .5s ease;
	background-color: rgba(255, 255, 255, .75);
}
.circleAvatar:hover .overlay {
	height: 25%;
}
.circleAvatar .overlay > a {
	color: #1c1c1c;
	font-size: 1.55em;
	top: 45%;
	-webkit-transform: translate(-50%, -50%);
		-ms-transform: translate(-50%, -50%);
			transform: translate(-50%, -50%);
}
.objectFit {
	width        : 100%;
	height       : 100%;
	object-fit   : cover;
	-o-object-fit: cover;
}

.labelFile > input[type="file"] {
	width   : .1px;
	height  : .1px;
	opacity : 0;
	overflow: hidden;
	position: absolute;
	z-index : -1;
}

#xhrStatus {
	padding: 4px; line-height: 1.5; display: inline-block;
}

.labelFile>.icon:before {
	content: "\f093";
}
.labelFile>.icon.value:before {
	content: "\f00c";
	color  : green;
}

/*Tabs*/
ul.nav-tabs > li {
	*float: left;
}
ul.nav-tabs > li > a {
	padding: 8px 20px;
}
ul.nav-tabs > li > a:before {
	z-index: 1;
	left: 51%;
	right: 51%;
	bottom:-1px;
	height: 1px;
	content: '';
	position: absolute;
	-webkit-transition-property: left, right;
		transition-property: left, right;
	-webkit-transition-duration: 0.3s;
		transition-duration: 0.3s;
	-webkit-transition-timing-function: ease-out;
		transition-timing-function: ease-out;
}
ul.nav-tabs > li > a:hover:before, ul.nav-tabs > li > a:focus:before {
	left: 0; 
	right: 0;
}

ul.nav-tabs > li > a.active {
	color: #0d6efd; 
}
.card.info-grid * {
	box-sizing: border-box;
}            
.card.info-grid img.card-img {
	height: 260px;
	object-position: 50% 0%;
	transition: all 300ms;
	transform: scale(1);
}
.card.info-grid:hover img.card-img {
	transition: all 300ms;
	transform: scale(1.1);
}
.card.info-grid .card-img-overlay {
	bottom: 90px;
	padding: 0 5px;
	text-align: center;
	transform: translateY(100%);
	background: linear-gradient(rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 1));
	text-shadow: 0 0 8px rgba(0, 0, 0, 0.8), 0 2px 10px rgba(0, 0, 0, 1);
	transition: transform 600ms;
}
.card.info-grid:hover .card-img-overlay {
	top: 0; bottom:0;
	transform: translateY(0);
}
.card.info-grid .card-img-overlay h3 {
	height: 90px;
	font-size: 18px;
	font-weight: 400;
	line-height: 22px;
	display: flex;
	align-items: center;
	font-family: "Roboto Condensed Light", sans-serif;
	margin-bottom: 12px;
}
.card.info-grid .card-img-overlay h2 {
	height: 90px;
	font-size: 22px;
	font-weight: 400;
	display: flex;
	align-items: center;
	font-family: "Roboto Condensed Light", sans-serif;
	margin-bottom: 12px;
}
.card.info-grid .card-img-overlay p {
	font-size: 16px;
	font-weight: 300;
	line-height: 20px;
}
.card.info-grid .card-img-overlay a[role="button"] {
	left: 10px;
	right: 10px;
	bottom: 10px;
	font-size: 16px;
	line-height: 36px;
	text-decoration: none;
	background-color: var(--blue-color)
}
.card.info-grid .card-img-overlay .line {
	width: 0;
	height: .8px;
	background-color: var(--blue-color);
	margin: -10px auto 15px;
	-webkit-transition: all .8s ease-in-out;
		-moz-transition: all .8s ease-in-out;
			-o-transition: all .8s ease-in-out;
				transition: all .8s ease-in-out;
}
.card.info-grid:hover .card-img-overlay .line {
	width: 80%;
}

@media screen and (max-width: 991px) {
	table.list > thead {
	  	display: none;
	}
	table.list > tbody > tr {
		display: block;
	}
	table.list > tbody > tr > td {
		display: block;
		text-align: right;
		padding: 0.25rem .75rem;
	}
	table.list > tbody > tr > td:before {
		float: left;
		content: attr(aria-label);
	}
	table.list > tbody > tr > td:first-child,
	table.list > tbody > tr > td:last-child,
	table.list > tbody > tr > td:nth-child(6) {
		display: none;
	}

	.card.info-grid img.card-img {
		min-height: 220px;
	}
	.card.info-grid .card-img-overlay h3 {
		*font-size: 18px;
		*margin-bottom: 12px;
	}
}

@media screen and (max-width: 768px) {
	.card.info-grid .card-img-overlay h3 {
		*font-size: 24px;
		*margin-bottom: 14px;
	}
	.card.info-grid .card-img-overlay {
		bottom: 70px;
	}
}
@media screen and (max-width: 684px) {
	.card.info-grid .card-img-overlay img {
		height: 340px;
	}
	.card.info-grid .card-img-overlay p {
		margin: 10px auto; 
		max-width: 60%;
		line-height: 1.65;
	}
}

[role="switch"] {
	width: 165px;
	height: 28px;
	border-radius: 30px;
	background: #fff;
	z-index: 0;
	cursor: pointer;
	position: relative;
	display: inline-block;
	box-shadow: inset 0 0 6px 0 #cccccc7d;
}
[role="switch"]::after {
	top: -1px;
	z-index: 1;
	content: '';
	width: 28px;
	height: 28px;
	border-radius: 50%;
	background: #fff;
	transition-duration: 400ms;
	box-shadow: 0 0 4px 0 #CCC;
	position: absolute;
}
[role="switch"].switch-no {
	color: gray;
}
[role="switch"].switch-no::after {
	left: 0;
}
[role="switch"].switch-ok {
	color: var(--blue-color);
}
[role="switch"].switch-ok::after {
	left: 138px;
	background: var(--blue-color);
}

#showOverlay:empty {
	width : 0;
	height: 0;
	display: none;
	background: none;
}
#showOverlay {
	top: 0;
	left:0;
    z-index: 5;
	width: 100%;
	height: 100%;
	position: fixed;
	text-align: center;
	background: rgba(0, 0, 0, 0.7);
}
.screen-inner {
	width : 100%;
	height: 100%;
	display: flex;
	align-items: center;
	flex-direction: column;
	justify-content: center;
}
#screen-img {
	width : auto;
	height: auto;
	transition: 0.3s;
	max-height: 100%;
	animation : zoom linear .5s;
}

.screen-caption:empty {
	height:0; padding:0;
}
.screen-caption {
	left  : 0;
	bottom: 0;
	color: #FFF;
	width: 100%;
	padding: .8em;
	position: absolute;
	background: rgba(0, 0, 0, 0.4);
	animation: fadeInUp .5s both;
}
.screen-inner > .btn-close {
	top: 28px;
  	right: 28px;
	opacity: .75;
	font-size: 24px;
	position: absolute;
	filter: invert(1) grayscale(100%) brightness(200%);
}
@keyframes zoom {
	from {
		transform: scale(0);
	}
	to {
		transform: scale(1);
	}
}
@keyframes fade {
	from {
		opacity: 0;
	}
	to {
		opacity: 1;
	}
}
@keyframes slideY {
	from {
	  transform: translateY(0);
	}
	to {
	  transform: translateY(100px);
	}
}
@keyframes fadeInDown {
	from {
		transform: translate3d(0, 0, 0);
	}
	to {
		transform: translate3d(0, 100%, 0);
	}
}  

@keyframes fadeInUp {
	from {
		transform: translate3d(0, 100%, 0);
	}
	to {
		transform: translate3d(0, 0, 0);
	}
}

#nachKopf {
    right: 10px;
    bottom: -70px;
	width: 48px;
    height: 48px;
    z-index: 100;
    padding: 10px 0;
    cursor: pointer;
    transition: bottom 0.3s;
    background: rgba(255, 255, 255, .85);
}
#nachKopf:hover {
    color: #FFF;
	background-color: #0d6efd;
}

ul.social-icons {
	*display: flex;
}
ul.social-icons li a {
	width: 50px;
	height: 50px;
	line-height: 45px;
	font-size: 26px;
	border-radius: 50%;
	border: 2px solid #fff;
}
ul.social-icons li a:hover {
	box-shadow: 0 0 4px #fff;
}
ul.social-icons a .fa {
	color: #262626;
	transition: .5s;
	position: relative;
}
ul.social-icons li a:hover .fa {
	color: #fff;
	transform: rotateY(360deg);	 
}
ul.social-icons li a:before {
	content: '';
	left: 0;
	top: 100%;
	width: 100%;
	height: 100%;
	background: #f00;
	transition: .5s;
	position: absolute;
}
ul.social-icons li a:hover:before {
	top: 0;
}
ul.social-icons li.facebook a:before{
	background: #3b5999;
}
ul.social-icons li.twitter a:before{
	background: #55acee;
}
ul.social-icons li.telegram a:before {
	background: #0077b5;
}
ul.social-icons li.google-plus a:before {
	background: #dd4b39;
}
ul.social-icons li.whatsapp a:before {
	background: #50b154;
}
ul.social-icons li.odnoklassniki a:before {
	background: #FF7700;
}

.spinner {
    width: 40px;
    height: 40px;
	margin-top: 20px;
    border-top: 4px solid #000;
    border-radius: 50%;
	border: 4px solid #ddd;
    animation: rotation360deg 1s linear infinite;
}

form > .result .alert {
	padding: .85em; font-size: .95em;
}

/*loader*/
.loader {
	background: rgba(255, 255, 255, .7);
}
.loader > span {
	width : 50px;
	height: 50px;
	box-sizing: border-box;
	border: 5px dotted #0d6efd;
	animation: rotation360deg 2s linear infinite;
}
.form-loading {
    display: block;
    position: absolute;
    top: calc(50% - 75px);
	left: calc(50% - 75px);
    width: 150px;
    height: 150px;
    border-radius: 50%;
    border: 3px solid transparent;
    border-top-color: #337AB7;
    animation: rotation360deg 2s linear infinite;
}
.form-loading:before {
    content: '';
    position: absolute;
    top: 5px;
    left: 5px;
    right: 5px;
    bottom: 5px;
    border-radius: 50%;
    border: 3px solid transparent;
    border-top-color: #BFE2FF;
    animation: rotation360deg 3s linear infinite;
}
.form-loading:after {
    content: '';
    position: absolute;
    top: 15px;
    left: 15px;
    right: 15px;
    bottom: 15px;
    border-radius: 50%;
    border: 3px solid transparent;
    border-top-color: #337AB7;
    animation: rotation360deg 1.5s linear infinite;
}

footer.footer {
	background-color: #161616; /*#161616* #1c1c1c*/
}
footer.footer .footer-row a {
	text-decoration: none;
}

@keyframes rotation360deg {
	0% {
		transform: rotate(0deg);
	}
	100% {
		transform: rotate(360deg);
	}
}
@keyframes dropdownAnimation {
	0% {
		opacity: 0;
		transform: translateY(-8px);
	}
}

.servises a[role="button"] {
	display: block;
}
.servises a[role="button"].animate-l {
	animation: fadeInLeft .8s ease-out;
}
.servises a[role="button"].animate-r {
	animation: fadeInRight .8s ease-out;
}

[contenteditable="true"]:empty::before {
    color: #CCCCCC; 
    content: attr(placeholder);
}
[contenteditable="true"]:focus::before {
    content: '';
}
