:root {
	--white: #ffffff; /* white*/
	--blue: #1AB6CD; /* AI blue */	
	--black: #000000; /* supra */
	--gray: #888888;

	--duration: .25s; 
	--radius: 0px;	

	--PioneerShadow: 0px 0px 25px #0FBCCD;
	--PioneerGlow: 0px 0px 44.7px 21.46px #20B8CB, 0px 0px 15.65px 0px #0FBCCD, 0px 0px 8.94px 0px #000000E5;
}

@keyframes ai-pulse {
    0% {
		transform: scale(1);
		filter: drop-shadow(0px 0px 0px #0FBCCD);
	}   
    50% {
		transform: scale(1.1);
		filter: drop-shadow(0px 0px 15px #0FBCCD);
	}
    100% {
		transform: scale(1);
		filter: drop-shadow(0px 0px 0px #0FBCCD);
	}	
}


.bgc-b{background-color: var(--black) !important;}
.bgc-w{background-color: var(--white) !important;}
.bgc-bl{background-color: var(--blue) !important;}

.fc-b{color: var(--black);}
.fc-w{color: var(--white);}
.fc-bl{color: var(--blue);}

.ai-pulse{
	animation: ai-pulse 1.5s ease 0s infinite;
}

@font-face {
      font-family: 'Inter';
      src: url(fonts/Inter-VariableFont.ttf) format('truetype');
}

html {
	min-height:100%;
	scroll-behavior: smooth;
}

body {
	font-family: 'Inter', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;	
	min-height: 100vh;
	font-weight: 400;
	background-color: var(--black);
    color: var(--white);
	position: relative;
	overflow-x: hidden;	
}
a {
	color: var(--blue);
    text-decoration: none;
    background-color: transparent;
	transition: color var(--duration) ease;
}
a:hover{
	text-decoration: none;
}
ul, ol {
    padding: 0;
}
ul li {
    list-style-type: none;
}
:active, :hover, :focus, :active:focus {
    outline: 0;
    outline-offset: 0;
}
:active, :focus, :active:focus {
	box-shadow: none !important;
}

.f-b {font-weight: 700;}
.f-m {font-weight: 500;}
.f-l {font-weight: 300;}


h1, .h1{
	color: var(--blue);
	font-weight: 400;
}
h2, .h2{}
h3, .h3{}
h4, .h4{}
h5, .h5{}
h6, .h6{}


/* --- elements -- */
.btn-primary{
	color: var(--white);
    background-color: var(--blue);	
	border: 1px solid var(--blue);
	border-radius: var(--radius);
	text-transform: uppercase;
	transition: all var(--duration) ease;
}
.btn-primary:hover, 
.btn-primary:focus, 
.btn-primary:active, 
.btn-primary:active:focus{
	color: var(--blue) !important;
    background-color: var(--white) !important;
	border-color: var(--blue) !important;
	box-shadow: none;
}


.btn-cls{
	transition: transform 0.5s ease-out 0s;
}
.btn-cls:hover{
	transform: rotate(90deg);
}

.btn-cls {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 37px;
    height: 37px;
    position: absolute;
    transition: all .3s ease;
    background: transparent;
}
.btn-cls:before {
    content: url(./img/arrow.svg);
    transition: all .3s ease;
    transform: rotate(0deg) scale(2);
    transform-origin: 50% 50%;
    margin: -6px 0 0 0;
}

/* --- Header -- */
header{
	position: sticky;
	width: 100%;
	top: 0;
	z-index: 200;
	background-color: var(--black);	
}
header .search{
    max-width: 550px;
    width: 100%;
    margin-left: 1rem;
}
header .search form{
    width: 100%;
}
header .search-group{
	position: relative;
}
header .icon-search {	
	position: absolute;
    top: calc(0.75rem + 1px);
    right: calc(0.75rem + 1px);
    height: 1rem;
    width: 1rem;
}
header .icon-search:hover {	
	cursor: pointer;
}

header .icon {	
	width: 100%;
	height: 100%;
	fill: var(--blue);
	vertical-align: top;
}
header .icon-search:hover .icon {	
	fill: var(--blue);
}
header .form-control {
	color: var(--white);
    background-color: transparent;
    padding-right: 2.25rem;
    border: 1px solid var(--blue);
	border-radius: .5rem;
}
header .form-control:focus {
    background-color: var(--white);
	color: var(--black);
}
header input:-internal-autofill-selected {

}
header .form-control::placeholder {
	color: var(--gray);
}
header .form-control:focus {
	box-shadow: 0 0 0 0.25rem rgba(212, 212, 212, 0.25);
}	

header .logo{
	padding-top: 1rem;
	padding-bottom: 1rem;
	padding-right: calc(var(--bs-gutter-x) * 0.5);
    padding-left: calc(var(--bs-gutter-x) * 0.5);	
	height: 70px;
	width: 300px;
	display: flex;
    justify-content: flex-end;
}
header .logo a{
	display: flex;	
}
header .logo img{
	height: 100%;
	width: 100%;	
}

header .logo .ai{
	filter: drop-shadow(var(--PioneerShadow));
}

header .tel{
	padding-top: 1rem;
	padding-bottom: 1rem;
	padding-right: calc(var(--bs-gutter-x) * 0.5);
    padding-left: calc(var(--bs-gutter-x) * 0.5);	
	display: inline-block;
    width: auto;
	text-align: right;
}
header .tel a{
	color: var(--blue);
	transition: color var(--duration) ease;
}
header .tel a:hover{	
	color: var(--white);
}

header .header-bottom-menu{
	align-items: center;
}

header .catalog-menu {
    display: flex;
    flex-direction: row;
}
header .catalog-menu > div {
    padding-right: 1rem;		
}
header .catalog-menu > div:not(:first-child) {
    padding-left: 1rem;
}
header .catalog-menu > div:not(:last-child) {
    border-right: 2px solid var(--blue);
}

header .catalog-menu a{
	color: var(--white);
	text-transform: uppercase;
	transition: color var(--duration) ease;
}
header .catalog-menu .select a{
	opacity: .75;
}
header .catalog-menu > div:last-child a {
    color: #8A1F43;
}
header .catalog-menu a:hover{
	color: var(--blue) !important;
}


.btn-menu {
    float: right;
    position: relative;
    cursor: pointer;    
    width: 38px;
    height: 38px;
    border: none;
    -webkit-transition: all ease .25;
    -moz-transition: all ease .25s;
    transition: all ease .25s;
	
}

.btn-menu:before, .btn-menu:after, .btn-menu span {
    background-color: var(--white);
    -webkit-transition: all ease .25s;
    -moz-transition: all ease .25s;
    transition: all ease .25s;
}

.btn-menu:before, .btn-menu:after {
    content: "";
    position: absolute;
    top: 0;
    height: 3px;
    width: 100%;
    left: 0;
    top: 50%;
    -webkit-transform-origin: 50% 50%;
    -ms-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
}
.btn-menu span {
    position: absolute;
    width: 100%;
    height: 3px;
    left: 0;
    top: 50%;
    overflow: hidden;
    text-indent: 200%;
    opacity: 0;	
}

.btn-menu.collapsed:before {
    -webkit-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0);
}
.btn-menu:before {
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
}
.btn-menu.collapsed:after {
    -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0);
}
.btn-menu:after {
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
}

.btn-menu.collapsed span {
    opacity: 1;
}
.offcanvas.offcanvas-start {
	position: absolute;
    top: 70px;
	bottom: auto;
	background-color: var(--black);
	border-top: 2px solid var(--blue);
	border-right: 2px solid var(--blue);
	border-bottom: 2px solid var(--blue);
	border-radius: 0 1rem 1rem 0;
	overflow: hidden;
	max-width: calc(100% - 1rem);
}
.offcanvas .offcanvas-header{
	padding-bottom: 0;
}
.offcanvas .offcanvas-header h5{
	padding-left: 1rem;
	text-transform: uppercase;
}
.offcanvas .offcanvas-header .btn-close{
	opacity: 1;
	filter: invert(1);
	transition: transform var(--duration) linear;	
}
.offcanvas .offcanvas-header .btn-close:hover{
	transform: rotate(45deg);
}

.offcanvas .offcanvas-footer{
	padding-block: 2rem;
	padding-left: 1rem;
}


/* --- Title -- */
section.title{
	
}
section.title h1{
	
}
.bx-breadcrumb-item span {
	
}


/* --- Sections -- */

main{
	padding-bottom: 6rem;
	min-height: 100vh;
}
main.inner{
	background-color: var(--white);
	color: var(--black);
}

main section:not(.title){
	margin-top: 6rem;
}
main section.mainpage-slider-block{
	margin-top: 0;
}

section.title h1{
     margin-bottom: 0;
}


/* --- Form -- */

.select2-results__option{
	color: var(--black);
}

/* --- Footer -- */


footer{
	padding-top: 2rem;
	padding-bottom: 2rem;		
}

footer .bottom-menu-title{
	font-size: 1.125rem;
	font-weight: 300;
	text-transform: uppercase;
	color: var(--blue);
}
footer .bottom-menu a{
	color: var(--white);
}
footer .bottom-menu a:hover{
	text-decoration: underline;
}
footer .footer-links{
	display: flex;
    flex-direction: column;
    align-items: flex-end;
	justify-content: space-between;
}

footer .tel {
    padding-top: 1rem;
}
footer .tel a{
	color: var(--blue);
	font-weight: 300;
	font-size: 2rem;
	line-height: 2rem;
}
footer .social{
	display: flex;
	flex-direction: row;	
	padding-top: 1rem;
}
.social a{
	display: flex;
	justify-content: center;
    align-items: center;
	height: 42px;
	width: 42px;
	background-color: var(--white);
	border-radius: 50%;
	margin-left: 1.5rem;
}
.social a::after{
	height: 28px;
	width: 28px;
	filter: grayscale(1) brightness(0%);
	transition: filter var(--duration) ease;
}
.social a:hover::after{
	filter: grayscale(0) brightness(100%);
}
.social a.vk::after{
	content: url(./img/vk.svg);
}
.social a.youtube::after{
	content: url(./img/youtube.svg);
}
.social a.telegram::after{
	content: url(./img/telegram.svg);
}
.social a.dzen::after{
	content: url(./img/dzen.svg);
}
.social a.ok::after{
	content: url(./img/ok.svg);
}

.footer-bottom > div {
	padding-top: 2.5px;
	padding-bottom: 2.5px;
}
.copyright{
	font-size: .75rem;
	text-transform: uppercase;
	text-align: right;
	padding-top: 0;
	padding-bottom: 0;	
}

footer img{
	width: 100%;
    height: 100%;
}

/* --- To TOP Button -- */
#toTop {
	display: flex;
	position: fixed;
	bottom: 100px;
	right: 0px;
	width: 50px;
	height: 50px;
	border-top-left-radius: var(--radius);
	border-bottom-left-radius: var(--radius);
	background-color: var(--blue);
    justify-content: center;
    align-items: center;
    z-index: 1040;	
	transition: background-color var(--duration) ease;
}
#toTop {
	display: none;	
}
#toTop:hover{
	cursor: pointer;
	background-color: var(--gray);		
}
#toTop img{
    width: 30px;
	
}
#toTop:hover img{

}

/* --- cookienotification banner-- */
#cookie_notification {
	display: none;
	position: fixed;
	width: 100%;
	padding: 25px;
	bottom: 0;
	background-color: white;
	box-shadow: 0 -3px 10px rgba(0, 0, 0, 0.25);
	z-index: 1200;
}
#cookie_notification.show{
    display: flex;
}
#cookie_notification > div{
	display: flex;
	justify-content: space-between;
	align-items: center;
}
#cookie_notification .note{
	margin: 0;
	font-size: 0.875rem;
	text-align: left;
	color: var(--black);
}
#cookie_notification .cookie_accept{
	padding: 0.5rem 1rem;
	margin: 0 0 0 25px;	
}

/* --- Modal -- */



/* --- Responsive -- */

@media (max-width: 1399px) {

}
@media (max-width: 1199px) {
	main {

	}
	footer .footer-top > div:nth-of-type(-n+2){
		padding-bottom: 1rem;
	}
	
}
@media (max-width: 991px) {
	header{

	}
	header .icon-search {
		top: calc(0.5rem + 1px);
		left: calc(0.5rem + 1px);
	}
	.form-control {
    	padding: 3px 0.75rem;
		padding-left: 2rem;
	}	
	main{
		//padding-top: 70px;
	}
	footer{

	} 
	footer .tel a{
		font-size: 1.5rem;
    	line-height: 1.5rem;
	} 
}
@media (max-width: 767px) {  
	html {
		font-size: 15px;
	}
	header{
			
	}
	header .logo{
		height: 50px;
		width: 175px;
	}
	header .tel a {
		color: var(--blue);
		transition: color var(--duration) ease;
	}
	header .top-menu .menu{
		justify-content: end;	
	}
	.btn-menu {
		width: 28px;
		height: 28px;
	}
	.offcanvas.offcanvas-start {
		top: 50px;
	}
	main {
		
	}
	main section:not(.title) {
		margin-top: 4rem;
	}

	.footer{

	}
	footer .footer-top > div:nth-of-type(-n+3){
		padding-bottom: 1rem;
	}
	footer .footer-links{
		align-items: flex-start;
		justify-content: flex-start;
	}
	.social a {
		margin-right: 1.25rem;		
		margin-left: auto;
	}	

	#toTop{
		bottom:75px;
		width: 50px;
		height: 50px;			
	}			
}
@media (max-width: 575px) {
	html {
		font-size: 14px;
	}
	header{

	}

	main {
		
	}
	main section:not(.title) {
		margin-top: 2rem;
	}
	.footer{
		
	}
	footer .social {
		padding-right: 0;
	}
	footer .tel {
		padding-left: 0;
	}	
	
}
