

/* Start:/local/templates/softmajor/style.css?1691066253106677*/
@font-face { 
	font-family: 'GT-Walsheim-Pro'; 
	src: url(/local/templates/softmajor/fonts/GT-Walsheim-Pro-Regular.ttf) format("truetype"), 
	url(/local/templates/softmajor/fonts/GT-Walsheim-Pro-Regular.woff) format('woff');
	font-display: swap;
}

@font-face { 
	font-family: 'GT-Walsheim-Pro-Light'; 
	src: url(/local/templates/softmajor/fonts/GT-Walsheim-Pro-Light.ttf) format("truetype"), 
	url(/local/templates/softmajor/fonts/GT-Walsheim-Pro-Light.woff) format('woff');
	font-display: swap;
}

@font-face { 
	font-family: 'GT-Walsheim-Pro-Medium'; 
	src: url(/local/templates/softmajor/fonts/GT-Walsheim-Pro-Medium.ttf) format("truetype"), 
	url(/local/templates/softmajor/fonts/GT-Walsheim-Pro-Medium.woff) format('woff');
	font-display: swap;
}

@font-face { 
	font-family: 'GT-Walsheim-Pro-Medium-Oblique'; 
	src: url(/local/templates/softmajor/fonts/GT-Walsheim-Pro-Medium-Oblique.ttf) format("truetype"), 
	url(/local/templates/softmajor/fonts/GT-Walsheim-Pro-Medium-Oblique.woff) format('woff');
	font-display: swap;
}

@font-face { 
	font-family: 'GT-Walsheim-Pro-Bold'; 
	src: url(/local/templates/softmajor/fonts/GT-Walsheim-Pro-Bold.ttf) format("truetype"), 
	url(/local/templates/softmajor/fonts/GT-Walsheim-Pro-Bold.woff) format('woff');
	font-display: swap;
}

/*  */
#svg24{
	transform: rotate(360deg);
}

#svg24 path{
	transform: rotate(360deg);
}
/*  */

html { height: 100%; width: 100%; }
body { width: 100%; height: 100%; padding: 0; margin: 0; background: #f0f0f0; font: 85% 'Montserrat', Arial, sans-serif; color: #111; }

span, div { box-sizing: border-box }	
	
a { color: #523e79; outline: none }	
a:hover { color: #db241c; }
	
img, form, p, ul, ol, li, tr, div { padding: 0; margin: 0; border: 0; }
	
p { padding-bottom: 1.5em; }
	
ul { padding: 0 0 1.5em 0; clear: left }	
ul > li { list-style: none; list-style-type: none; padding: 0 0 .5em 30px; position: relative }
ul > li:before { content: ''; width: 12px; height: 1px; position: absolute; top: .6em; left: 0; background: #000; }
ul ul { margin-left: 30px }
ul ul > li:before { }
ul ol > li { list-style: auto; }	

ol { padding: 0 0 1.5em 20px; clear: left  }	
ol > li { padding: 0 0 .5em 10px; }	

ol ul, ul ul, ul ol, ol ol { padding: 1em 0 0 0; } 
	
table { font-size: 100%; }
table * { font-family: 'Montserrat' !important; }
	
h1 { font-size: 220%; font-weight: normal; margin: 0; padding: 0 0 1em 0; color: #000; line-height: 1.25; font-weight: 500 }	
h2 { font-size: 190%; font-weight: normal; margin: 0; padding: .5em 0 .7em 0; color: #000; line-height: 1.25; font-weight: 500 }	
h3 { font-size: 180%; font-weight: normal; margin: 0; padding: .5em 0 .7em 0; color: #000; line-height: normal; font-weight: 500 }	
h4 { font-size: 160%; font-weight: normal; margin: 0; padding: .5em 0 .7em 0; color: #000; line-height: normal; font-weight: 500 }	
h5 { font-size: 140%; font-weight: normal; margin: 0; padding: .5em 0 .7em 0; color: #000; line-height: normal; font-weight: 500 }	
h6 { font-size: 130%; font-weight: bold; margin: 0; padding: .5em 0 .5em 0; color: #000; line-height: normal; font-weight: 500 }

h2:first-child, h3:first-child, h4:first-child, h5:first-child, h6:first-child { padding-top: 0; }
	
input, select, textarea { font-family: inherit; padding: 0 0 .1em 4px; font-size: 100%; outline: none; box-sizing: border-box; }

button { -webkit-appearance: none;  -webkit-writing-mode: none !important;}
	
a img { border: none; }
	
.img-lft { float: left; margin: 0 20px 20px 0; }	
.img-rgh { float: right; margin: 0 0 20px 20px; }
	
cite { font-style: italic; }
	
.table { border-collapse: collapse; margin: .5em 0 2em 0; border: 0; }	
.table th { color: #111; padding: .8em 30px .8em 30px; text-align: left; background: #f0f0f0; font-size: 100%; font-weight: normal; border: 1px solid #dadada; font-weight: 500 }	
.table td { padding: .8em 30px; vertical-align: top; border: 1px solid #dadada }	
.table p { padding: 0 }
	
blockquote { margin: 0 0 2em 0; padding: 0 0 0 30px; font-size: 22px; position: relative; color: #523e79; font-weight: 500; font-style: italic; }
blockquote:before { content: ''; width: 22px; height: 16px; background: url(/local/templates/softmajor/img/blockq.png) no-repeat 0 0; position: absolute; top: 0; left: 0 }
	
.clear { clear: both }	
.shadow { box-shadow: 0 0 6px #3577db; transition: border linear 0.2s, box-shadow linear 0.2s; }

input.infocus { color: #000 !important; font-style: normal !important }

article, aside, details, figcaption, figure, footer, header, menu, nav, section { display: block; }

/*=========================*/
.container { min-height: 100%; }
.disabled .container { overflow: hidden; height: 100%; position: relative }
.container:before { content: ''; position: absolute; width: 100%; height: 100%; background: #000; top: 0; left: 0; z-index: 30; transition: all .3s ease 0s; opacity: 0; visibility: hidden } 
.disabled .container:before { opacity: .5; visibility: visible }

.container:after { content: ''; position: fixed; width: 100%; height: 100%; background: #000; top: 0; left: 0; z-index: 30; transition: all .3s ease 0s; opacity: 0; visibility: hidden } 
.fadet .container:after { opacity: .5; visibility: visible }

.container div, .container a, .container span { transition: all .3s ease 0s; }	

.head { max-width: 1340px; position: relative; padding: 40px 0 0 0; height: 120px; overflow: hidden; margin: 0 auto; background: #fff; z-index: 31 }
.head-in { max-width: 1200px; margin: 0 auto; position: relative; }
.head .logo { display: inline-block; width: 170px; height: 56px; background: url(/local/templates/softmajor/img/logo.svg) no-repeat 0 0; background-size: contain; margin-left: 20px }
.head .logo.en {background-image: url(/local/templates/softmajor/img/logo_en.svg);width: 300px;}
.main-menu { position: absolute; right: 22%; top: 20px; font-size: 0; }
.main-menu-item { font-size: 16px; display: inline-block; font-family: Montserrat; margin-left: 30px; position: relative; height: 60px }
.main-menu-item a { text-decoration: none; height: 55px; display: block }
.main-menu-item a:before { content: ''; height: 2px; background: transparent; width: 100%; position: absolute; bottom: 0; left: 0; transition: all .3s ease 0s }
.main-menu-item.active a { color: #db241c }
.main-menu-item.active a:before, .main-menu-item a:hover:before { background: #523e79 }

.main-menu-popup { position: relative; max-width: 1340px; margin: 0 auto; z-index: 32 }
.main-menu-popup-in { position: absolute; width: 100%; top: 0; left: 0; background: #f0f0f0;  }
.main-menu-popup-mw { max-width: 1200px; margin: 0 auto; padding: 0 255px 0 0; overflow: hidden; }
#mmpopup { float: right; width: 670px; display: none; transition: none;  }
#mmpopup.active {  }
.main-menu-popup-index { overflow: hidden; display: none; padding: 50px 0 30px 0; }
.main-menu-popup-item { padding: 0 85px 20px 0 }
.main-menu-popup-item a { text-decoration: none; color: #000; font-size: 16px; font-weight: 300 }
.main-menu-popup-item a:hover { color: #523e79 }
.main-menu-popup-col { width: 50%; float: left }
.main-menu-popup-col:first-child { border-right: 1px solid #fff }
.main-menu-popup-col:last-child .main-menu-popup-item { padding: 0 0 20px 50px }

.head .options { position: absolute; top: 20px; right: 20px; /*font-size: 0;*/ font-size: 16px;  }
.head .options .socnets { display: inline-block; vertical-align: middle }
.head .options .socnets a { display: inline-block; vertical-align: middle; background-image: url(/local/templates/softmajor/img/socnets.png?v=1); background-repeat: no-repeat; width: 25px; height: 25px; margin-left: 11px }
.head .options .socnets .fb { background-position: 0 0; }
.head .options .socnets .tw { background-position: -36px 0; }
.head .options .socnets .tel { background-position: -72px 0; }
.head .options .socnets .ytb { background-position: -108px 0; }
.head .options .socnets .instagram { background-position: -144px 0; }

.head .search { display: inline-block; vertical-align: middle; border-right: 1px solid #f0f0f0; width: 46px; text-align: center; position: relative }
.head .search a { display: inline-block; vertical-align: middle; width: 24px; height: 24px; background: url(/local/templates/softmajor/img/svg/search.svg) no-repeat 0 0; cursor: pointer }
.head .search:after { content: ''; height: 2px; width: 24px; background: transparent; position: absolute; bottom: -35px; left: 50%; margin-left: -12px }
.head .search.active:after { background: #523e79 }

.head .subscribe { display: inline-block; vertical-align: middle; /*border-right: 1px solid #f0f0f0;*/ width: 46px; text-align: center; position: relative }
.head .subscribe a { display: inline-block; vertical-align: middle; width: 24px; height: 24px; background: url(/local/templates/softmajor/img/svg/mail.svg) no-repeat 0 0; cursor: pointer }

.search-popup { position: relative; max-width: 1340px; margin: 0 auto; z-index: 30 }
.search-popup .search-popup-in { position: absolute; width: 100%; top: 0; left: 0; background: #ffffff; /*background: #f0f0f0;*/ height: 130px; display: none; transition: none }
.search-popup-mw { max-width: 1200px; margin: 25px auto 0; /*padding: 45px 20px 0 20px;*/ position: relative  }

.search-popup input[type="text"] { width: 100%; padding: 0; background: none; border: none; font-size: 20px; height: 40px } 
.search-popup input[type=text]::-moz-placeholder { color: rgb(0 0 0 / 40%); opacity: 1 }
.search-popup input[type=text]::-webkit-input-placeholder { color: rgb(0 0 0 / 40%); opacity: 1 }
.search-popup input[type=text]:-ms-input-placeholder { color: rgb(0 0 0 / 40%); opacity: 1 }
.search-popup input[type=text]::-ms-input-placeholder { color: rgb(0 0 0 / 40%); opacity: 1 }
.search-popup input[type=text]::placeholder { color: rgb(0 0 0 / 40%); opacity: 1 } 

.search-popup input[type="submit"] { width: 24px; height: 24px; background: url(/local/templates/softmajor/img/svg/search.svg) no-repeat 0 0; cursor: pointer; /*position: absolute; top: 55px; right: 20px;*/ border: none; font-size: 0 }

.language { /*display: inline-block; vertical-align: middle;*/ border-right: 1px solid #f0f0f0; width: 46px; text-align: center; position: relative; }
.language a  { display: inline-block; vertical-align: middle; width: 24px; height: 24px; /*background: url(/local/templates/softmajor/img/language.png) no-repeat 0 0;*/ cursor: pointer }
/*.language:after { content: ''; height: 2px; width: 24px; background: transparent; position: absolute; bottom: -35px; left: 50%; margin-left: -12px }
.language.active:after { background: #523e79 }

.language-popup { position: relative; max-width: 1200px; margin: 0 auto; z-index: 31 }
.language-popup .language-popup-in { position: absolute; width: 270px; top: 0; right: 80px; height: 140px; background: #f0f0f0; padding: 30px 0 0 30px; display: none; transition: none }
.language-popup a, .language-popup span { display: block; font-size: 16px; font-weight: 300; text-decoration: none; padding-bottom: 20px }*/

.slider { margin: 0 auto 0 auto; max-width: 1340px; height: 600px; overflow: hidden; width: 100%; position: relative }
.slider-item { display: block; height: 600px; background-size: cover; background-position: 50% 50%; }
.slider-item:before { content: ''; background: #000; position: absolute; width: 100%; height: 100%; top: 0; left: 0; opacity: .1 } 
.slider-info { /* max-width: 1200px; */width: 100%; height: 100%; margin: 0 auto; position: absolute; left: 0; top: 0; z-index: 1 }
.slider-info > a{box-sizing: border-box; display: block; width: 100%; height: 100%;text-decoration: none; padding: 130px 20px 0 20px;}
.slider-title { color: #fff; font-size: 72px; font-weight: bold; line-height: 1.1em; max-width: 980px; margin-bottom: 30px }
.slider-text { color: #fff; font-size: 36px; line-height: 1.4em; max-width: 980px; margin-bottom: 40px }
.slider-button { display: inline-block; color: #fff; background: #523e79; width: 172px; text-align: center; text-decoration: none; padding: 10px 0; font-size: 18px }
.slider-button:hover { color: #fff; background: #523e79 }

.slider .owl-dots { position: absolute; bottom: 17px; left: 0; z-index: 30; width: 100%; text-align: center }
.slider .owl-dots .owl-dot { display: inline-block; vertical-align: middle; width: 16px !important; height: 16px !important; background: #fff; border-radius: 50%; margin: 0 8px; /* box-sizing: content-box */border: none; outline: none; box-shadow: none; border: 1px solid #523e79; font-size: 0 }
.slider .owl-dots .owl-dot.active { background: #523e79; }

.news-wrapper { margin: 0 auto; max-width: 1340px; padding: 70px 40px; background: #f0f0f0 }
.content-wrapper .news-wrapper { background: none; padding-top: 0; margin-top: 0 }
.news-wrapper-in { margin: 0 auto; max-width: 1200px; }
.news-wrapper.wbg { background: #fff; padding: 80px 40px 110px 40px; margin-bottom: 0 }
.news-wrapper.news-wrapper_on_page { margin-bottom: 70px; padding-bottom: 80px; }
.page-title { font-size: 25px; padding-bottom: 70px; font-weight: 500 }

.news-slider {  }
.news-slider-item { background: #F5F5F5; }

.noslider { display: flex; flex-wrap: wrap; margin-bottom: -50px }
.noslider .news-slider-item { width: 30%; margin: 0 5% 5% 0 }
.noslider .news-slider-item:nth-child(3n) { margin-right: 0 }

#news_slider2 .news-slider-item,
#news_slider_on_page .news-slider-item { background: #fff }
.news-slider-image { height: 253px; background-repeat: no-repeat; background-position: 50% 50%; background-size: cover; }
.news-slider-image a { display: block; height: 100% }
.news-slider-type { color: #6d7175; padding: 19px 37px; font-size: 18px; font-weight: 300;  }
.news-slider-date { color: #6d7175; padding: 19px 37px 10px 37px; font-size: 18px; font-weight: 500 }
.news-slider-info { min-height: 140px; padding: 20px 0 }
#news_slider2 .news-slider-info,
#news_slider_on_page .news-slider-info { padding-top: 0; }
.news-slider-link { font-size: 24px; line-height: 1.1em; padding: 0 37px; }
.news-slider-link a { text-decoration: none; }

.main-news {}
.main-news .news-slider-popup { position: absolute; width: 100%; height: 100%; top: 0; left: 0; background-size: cover; opacity: 0; transition: all .6s ease 0s }
.main-news .news-slider-item { height: 300px; display: flex; align-items: center }
.main-news .news-slider-item:hover .news-slider-popup { opacity: 1; }
.main-news .news-slider-item:before { content: ''; background: transparent; position: absolute; width: 100%; height: 100%; top: 0; left: 0; z-index: 2; transition: all .6s ease 0s }
.main-news .news-slider-item a { position: absolute; width: 100%; height: 100%; top: 0; left: 0; z-index: 3; background: transparent }
.main-news .news-slider-item:hover:before { background: rgba(0,0,0,.3) }
.main-news .news-slider-info { padding: 20px 20px 20px 0; position: relative; z-index: 2 }
.main-news .news-slider-link { color: #523e79 }
.main-news .news-slider-item:hover .news-slider-link { color: #fff }
.main-news .news-slider-item:hover .news-slider-date { color: #fff }
.main-news .page-title { padding-bottom: 35px }

.news-slider .owl-nav { position: absolute; top: 45%; left: 0; z-index: 30; width: 100%; font-size: 0 }
.news-slider .owl-prev { display: block; border: none; outline: none; box-shadow: none; position: absolute; width: 15px; height: 26px; background: url(/local/templates/softmajor/img/nav.png) no-repeat 0 0; left: -30px; top: 0; margin-top: -26px; flex-shrink: 0; flex-grow: 0; }
.news-slider .owl-next { 
	display: block;
	border: none; 
	outline: none; 
	box-shadow: none; 
	position: absolute; 
	width: 15px; 
	height: 26px; 
	background-image: url(/local/templates/softmajor/img/nav.png);
	background-repeat: no-repeat;
	background-position: 100% 0; 
	/* background-size: 100%; */
	background-color: transparent;
	right: -30px; 
	top: 0; 
	margin-top: -26px;
	flex-shrink: 0;
	flex-grow: 0;
}
#other-service .owl-prev.disabled, 
#other-service .owl-next.disabled,
.news-slider .owl-prev.disabled, 
.news-slider .owl-next.disabled { opacity: .3 }
.main-news .news-slider .owl-prev { margin-top: 0 }
.main-news .news-slider .owl-next { margin-top: 0 }

.news-slider .owl-dots { position: relative; text-align: center; padding-top: 40px; font-size: 0; display: flex; flex-wrap: wrap; align-items: center; justify-content: center; }
.news-slider .owl-dots .owl-dot { display: block; vertical-align: middle; width: 16px !important; height: 16px !important; border-radius: 50%; margin: 0 8px 10px 8px; border: 1px solid #523e79; box-sizing: border-box !important; flex-shrink: 0; flex-grow: 0; }
.news-slider .owl-dots .owl-dot.active { background: #523e79; }

.alink { text-align: right; font-size: 18px; font-weight: 300; padding-top: 30px }
.alink a { color: #0095a9; text-decoration: none }

.footer { background: #523e79; margin: 0 auto; max-width: 1340px; }
.footer-in { margin: 0 auto; max-width: 1200px; padding: 90px 20px 110px 20px; position: relative }

.footer-copy { color: #fff; font-size: 11px; margin: 0 0 20px; }

.footer-socnets { margin-bottom: 30px; font-size: 0 }
.footer-socnets span { font-size: 32px; font-weight: bold; color: #fff; font-weight: 700; display: inline-block; vertical-align: middle; }
.footer-socnets a { display: inline-block; vertical-align: middle; width: 50px; height: 50px; margin-left: 21px }
/*
.footer-socnets a { display: inline-block; vertical-align: middle; background-image: url(/local/templates/softmajor/img/socnets_big.png); background-repeat: no-repeat; width: 50px; height: 50px; margin-left: 21px }
.footer-socnets .fb { background-position: 0 0; }
.footer-socnets .tw { background-position: -71px 0; }
.footer-socnets .tel { background-position: -141px 0; }
.footer-socnets .ytb { background-position: -211px 0; }
*/
.footer-socnets a.instagram { background-image: url(/local/templates/softmajor/img/svg/instagram_white.svg); }

.footer-menu { position: absolute; top: 110px; right: 20px; font-size: 0; font-weight: 700;  }
.footer-menu a { color: #fff; font-size: 11px; position: relative; margin: 0 12px 15px 0; text-decoration: none; white-space: nowrap; display: inline-block; border-bottom: 1px solid #523e79 }
.footer-menu a:hover { border-bottom: 1px solid #fff }
.footer-menu a:after { content: '|'; position: absolute; right: -8px; top: -1px; }
.footer-menu a:last-child:after { display: none }

.mobile-menu { background: #fff; position: absolute; width: 100%; top: 120px; left: 0; z-index: 31; padding-bottom: 70px; left: -9999px; transition: all .3s ease 0s; }
.mobile-menu div, .mobile-menu a, .mobile-menu span { transition: all .3s ease 0s; }	
.disabled .mobile-menu { left: 0 }
.mobile-menu_in { max-width: 650px; margin: 0 auto; position: relative; padding: 35px 0 40px 20px; } 
.mobile-menu_item { font-size: 36px; font-weight: 300; padding: 10px 0 25px 50px; position: relative }
.mobile-menu_item a { text-decoration: none }

.mobile-search { background: #523e79; }
.mobile-search-in { max-width: 650px; margin: 0 auto; position: relative; padding: 0 20px; height: 80px; }
.mobile-search input[type=text] { height: 80px; vertical-align: top; width: 80%; border: none; background: #523e79; color: #fff; font-size: 20px; padding: 0; }
.mobile-search input[type=submit] { position: absolute; border: none; width: 24px; height: 24px; background: url(/local/templates/softmajor/img/search_m.png) no-repeat 0 0; top: 50%; right: 20px; margin-top: -12px; cursor: pointer }

.mobile-search input[type=text]::-moz-placeholder { color: #fff; opacity: 1 }
.mobile-search input[type=text]::-webkit-input-placeholder { color: #fff; opacity: 1 }
.mobile-search input[type=text]:-ms-input-placeholder { color: #fff; opacity: 1 }
.mobile-search input[type=text]::-ms-input-placeholder { color: #fff; opacity: 1 }
.mobile-search input[type=text]::placeholder { color: #fff; opacity: 1 } 

.submenu_icon { position: absolute; left: 0; top: 50%; width: 16px; height: 16px; margin-top: -13px; cursor: pointer; }
.submenu_icon:before { content: ''; position: absolute; top: 8px; left: 0; height: 2px; width: 100%; background: #523e79; transition: all .3s ease 0s; transform: rotate(90deg) }
.submenu_icon:after { content: ''; position: absolute; top: 8px; left: 0; height: 2px; width: 100%; background: #523e79; transition: all .3s ease 0s; transform: rotate(-180deg) }

.mobile-menu_footer { position: relative; max-width: 650px; margin: 0 auto; font-size: 0;  }
.mobile-menu_lang { font-weight: 300; }
.mobile-menu_lang a, .mobile-menu_lang span { font-size: 20px; text-decoration: none; padding-right: 25px }

.mobile-socnets { position: absolute; top: -25px; right: 0; }
.mobile-socnets a { display: inline-block; vertical-align: middle; width: 50px; height: 50px; margin-left: 21px; }
.mobile-socnets svg { width: 50px; height: 50px; }

.mobile-socnets .instagram { display: inline-block; vertical-align: middle; background-image: url(/local/templates/softmajor/img/svg/instagram.svg); background-repeat: no-repeat; width: 50px; height: 50px; background-position: 0px 0; background-size: cover;}


/*
.mobile-socnets a { display: inline-block; vertical-align: middle; background-image: url(/local/templates/softmajor/img/socnets_mob.png); background-repeat: no-repeat; width: 50px; height: 50px; margin-left: 21px }
.mobile-socnets .fb { background-position: 0 0; }
.mobile-socnets .ytb { background-position: -71px 0; }
*/

.mobile-submenu { padding: 5px 0 10px 50px; transition: none !important; display: none }
.mobile-submenu_item { position: relative; padding: 0 0 25px 0; font-size: 20px; font-weight: 300; }
.mobile-submenu_item a { text-decoration: none; }
.mobile-submenu_item.active a { color: #0095a9; }
.mobile-submenu_item .submenu_icon { left: -22px; margin-top: -16px; }
.mobile-submenu_item .submenu_icon:before { background: #0095a9; }
.mobile-submenu_item .submenu_icon:after { background: #0095a9; }

.submenu_icon.active:before { transform: rotate(45deg) }
.submenu_icon.active:after { transform: rotate(-45deg) }

.path { max-width: 1200px; margin: 0 auto; padding: 40px 20px 40px 20px; font-size: 18px; font-weight: 300;  }
.path span { padding: 0 6px; color: #523e79 } 
.path a { text-decoration: none }

.page-title-wrapper { background: url(/local/templates/softmajor/img/service-new.png) top right / cover no-repeat; margin: 0 auto 50px auto; max-width: 1340px; }
.page-title-in { max-width: 1200px; margin: 0 auto; padding: 20px 390px 20px 20px; min-height: 180px; font-size: 58px; display: flex; align-items: center; position: relative } 
.page-title-in a { text-decoration: none }
.page-title-in h1, .page-title-in .h1 { color: #523e79; font-size: 48px; padding: 0; font-weight: 500; line-height: 1.1em; }
.page-title-in a:before { content:'←'; font-weight: 300; font-size: 62px; line-height: 62px; margin-right: 18px }
.page-title-in .fbg { position: absolute; height: 100%; width: 378px; right: 0; top: 0; background-size: contain; background-position: 50% 50%; background-repeat: no-repeat }
.page-title-in .fbg { display: none; }
.page-title-in .fbg.show { display: block; }
.page-title-in .nbg { position: absolute; height: 100%; width: 331px; right: 0; top: 0; background-size: contain; background-position: 50% 50%; background-image: url(/local/templates/softmajor/img/error404.png); background-repeat: no-repeat; }

.content-wrapper { max-width: 1200px; margin: 0 auto; padding: 0 20px 80px 20px; }
.content-left { float: left; width: 305px; margin-right: 100px }

.side-menu {}
.side-title { font-size: 34px; line-height: 1; font-weight: 500; padding-bottom: 32px }
.side-menu-item { font-size: 17px; font-weight: 300; margin-bottom: 22px; line-height: 1.3em; position: relative; padding-right: 10px }
.side-menu-item a { text-decoration: none }
.side-menu-item .selected { font-weight: bold; }
.side-menu-item .root-item{
display:none;
}
.side-menu-item.selected_item .root-item{
display:block;
    padding-left: 22px;
    padding-top: 22px;
}
.side-menu-item.hasitem { cursor: pointer }
.side-menu-item.hasitem:after { content: ''; width: 6px; height: 10px; background: url(/local/templates/softmajor/img/marr.png) no-repeat 0 0; position: absolute; top: 12px; right: 0; margin-top: -5px; transition: all .3s ease 0s }
.side-menu-item.active:after { transform: rotate(90deg) }
.side-menu-sub { padding: 0 0 15px 17px; display: none; transition: none !important }
.side-menu-sub .side-menu-item { margin-bottom: 14px }

.content-right { overflow: hidden; font-size: 18px; font-weight: 300; padding: 0 2px }
.content-right p { line-height: 1.4em; }
.content-right h5 { font-size: 18px }

.news-list {}
.news-list-title { font-size: 24px; font-weight: 500; padding-top: 30px }
.news-item { overflow: hidden; padding-bottom: 20px }
.news-item_image { float: left; margin-right: 20px }
.news-item_info { overflow: hidden;  }
.news-item_date { padding-bottom: 6px; font-size: 14px; color: #6d7175 }
.news-item_title { font-size: 18px; line-height: 1.3em }
.news-item_title a { text-decoration: none }

.doc-list { padding: 30px 0 45px 0; font-size: 0; }
.news-item_image .ext { width: 40px; height: 40px; color: #523e79; background: #fff; display: flex; border-radius: 50%; font-size: 14px; font-weight: 500; align-items: center; justify-content: center; text-decoration: none }
.doc-list .news-item { width: 48%; display: inline-block; vertical-align: top; margin-right: 2% }
.doc-list .news-item:nth-child(2n) { margin-right: 0;  }

.news-list-alink { padding: 10px 0 5px 0; font-size: 18px }
.news-list-alink a { color: #0095a9; text-decoration: none; border-bottom: 1px solid transparent; cursor: pointer }
.news-list-alink a:hover { border-color: #0095a9; }

.service-slider {  }
.service-slider-item { overflow: hidden }
.service-slider-block { position: relative; height: 570px; margin-bottom: 85px; }
.service-slider-block a { color: #000; }
.service-slider-illustration { width: 100%; height: 400px; margin-bottom: 40px; background-repeat: no-repeat; background-size: cover; background-position: 50% 50%; position: relative; /*top: 0; left: -400px;*/  }
.active .service-slider-illustration { left: 0; transition-duration: 1s }
/*.service-slider-illustration:before { content: ''; position: absolute; width: 100%; height: 60%; bottom: 0; left: 0; background: linear-gradient(to top, #000, transparent); opacity: .6 }*/
.service-slider-illustration_title { position: absolute; bottom: 0; left: 0; width: 100%; font-size: 32px; font-weight: 500; padding: 30px; line-height: 1.2em; color: #fff }

.service-slider-info { position: absolute; right: 0; top: 0; width: 35% }
.service-slider-photo { /*height: 270px;*/ height: 400px; margin-bottom: 30px; background-position: 50% 50%; background-size: cover; position: relative; top: -270px; }
.active .service-slider-photo { top: 0; transition-duration: 1s }
.service-slider-text { background: #fff; padding: 20px; height: 270px; overflow: hidden; position: relative; bottom: -270px }
.active .service-slider-text { bottom: 0; transition-duration: 1s }
.service-slider-text h3 { color: #523e79; padding-bottom: 15px; line-height: 1em; font-size: 24px }
.service-slider-text .description { color: #6d7175; font-size: 16px; line-height: 1.3em }
.service-slider-text .detail { font-size: 18px; font-weight: 500; padding: 10px 0 0 0; margin-bottom: -5px }
.service-slider-text a { text-decoration: none }

.service-slider .owl-nav { position: absolute; top: 0; left: 0; z-index: 30; font-size: 0; width: 100% }
.service-slider .owl-prev { border: none; outline: none; box-shadow: none; position: absolute; width: 15px; height: 26px; background: url(/local/templates/softmajor/img/nav.png) no-repeat 0 0; left: 20px; top: 285px; margin-top: -13px }
.service-slider .owl-next { border: none; outline: none; box-shadow: none; position: absolute; width: 15px; height: 26px; background: url(/local/templates/softmajor/img/nav.png) no-repeat 100% 0; left: 60%; top: 285px; margin-top: -13px; margin-left: -40px }
.service-slider .owl-prev.disabled, .service-slider .owl-next.disabled { opacity: .3; cursor: default !important }

.service-slider .owl-dots { position: absolute; top: 600px; left: 0; z-index: 30; width: 60%; text-align: center }
.service-slider .owl-dots .owl-dot { display: inline-block; vertical-align: middle; width: 13px; height: 13px !important; background: transparent; border-radius: 50%; margin: 0 8px; /* box-sizing: content-box; */ border: 1px solid #523e79 }
.service-slider .owl-dots .owl-dot.active { background: #523e79; }

.service-slider .show-docs { transition: none }

#branchesSliderMobile { position: absolute; left: -99999px; top: 0; }

.branches-wrapper {}
.branches-title { font-size: 24px; font-weight: 500; padding-bottom: 35px } 

#branchesSlider.active > .owl-nav, #branchesSliderMobile.active > .owl-nav { display: none }

.branches-list { background-size: cover; background-position: 50% 50%; }
.branches-item { position: relative; height: 360px; overflow: hidden; }
#branchesSliderMobile .branches-item { height: 260px }
.branches-item.active { }

.branches-one { width: 28%; border-top: 1px solid #fff; padding: 22px 0; overflow: hidden; height: 140px; cursor: pointer; position: absolute; }
#branchesSliderMobile .branches-one { width: 90%; height: 110px }
.branches-one.disabled { opacity: .6 }
.branches-one.disabled:hover { opacity: 1 }

.branches-one:nth-child(1) { top: 70px; left: 5% }
#branchesSliderMobile .branches-one:nth-child(1) { top: 30px; }
.branches-one:nth-child(3) { top: 70px; left: 36.3% }
#branchesSliderMobile .branches-one:nth-child(3) { top: auto; bottom: 0; left: 5% }

.branches-one:nth-child(5) { top: 70px; left: 67.3% }
.branches-one:nth-child(7) { bottom: 0; left: 5% }
.branches-one:nth-child(9) { bottom: 0; left: 36.3% }
.branches-one:nth-child(11) { bottom: 0; left: 67.3% }

.branches-one-image { width: 60px; height: 60px; background-color: #523e79; background-position: 50% 50%; border-radius: 50%; background-repeat: no-repeat; position: relative; float: left; margin-right: 20px }
.branches-one-image:before { content: ''; border: 2px solid #fff; position: absolute; width: 50px; height: 50px; border-radius: 50%; top: 3px; left: 3px  }
.branches-one-title { font-size: 14px; color: #fff; overflow: hidden; line-height: 1.3em; font-family: 'Montserrat'; padding-top: 9px }

.branches-info { background: #fff; font-size: 16px; position: absolute; right: -100%; width: 100%; overflow: hidden; margin-top: 180px; top: 0; padding: 30px 5% 20px 5%; }
.branches-info .close { width: 17px; height: 17px; position: absolute; top: 30px; right: 30px; cursor: pointer }
.branches-info .close:before { content: ''; width: 2px; height: 100%; background: #000; position: absolute; top: 0; left: 50%; transform: rotate(-45deg) }
.branches-info .close:after { content: ''; width: 2px; height: 100%; background: #000; position: absolute; top: 0; left: 50%; transform: rotate(45deg) }

.branches-one.active + .branches-info { right: 0;  }
.branches-info h3 { font-size: 18px; font-weight: 500 }

.branches-info-slider { margin-top: 10px }
.branches-info-slider_item { padding: 0 150px 0 50px; }
.branches-info-slider_item blockquote { margin-bottom: 0 }
.branches-info-slider_item small { padding-left: 30px }

.branches-slider .owl-nav { position: absolute; top: 50%; left: 0; z-index: 30; font-size: 0; width: 100% }
.branches-slider .owl-prev { border: none; outline: none; box-shadow: none; position: absolute; width: 15px; height: 26px; background: url(/local/templates/softmajor/img/nav_w.png) no-repeat 0 0; left: 20px; top: -13px; }
.branches-slider .owl-next { border: none; outline: none; box-shadow: none; position: absolute; width: 15px; height: 26px; background: url(/local/templates/softmajor/img/nav_w.png) no-repeat 100% 0; right: 20px; top: -13px; }
.branches-slider .owl-prev.disabled, .branches-slider .owl-next.disabled { opacity: .3; cursor: default !important }

.branches-info .owl-nav { position: absolute; top: 50%; left: 0; z-index: 30; font-size: 0; width: 100% }
.branches-info .owl-prev { border: none; outline: none; box-shadow: none; position: absolute; width: 15px; height: 26px; background: url(/local/templates/softmajor/img/nav.png) no-repeat 0 0; left: 0; top: -25px; margin-top: -13px }
.branches-info .owl-next { border: none; outline: none; box-shadow: none; position: absolute; width: 15px; height: 26px; background: url(/local/templates/softmajor/img/nav.png) no-repeat 100% 0; right: 0; top: -25px; margin-top: -13px; margin-left: -40px }
.branches-info .owl-prev.disabled, .branches-info .owl-next.disabled { opacity: .3; cursor: default !important }

.filter-form { position: relative; background: #fff; padding: 6px; }
.filter-form label.error { position: absolute; bottom: -25px; left: 25px; color: red; font-size: 12px }
.filter-form-i { position: absolute; font-size: 0; width: 15px; height: 15px; background: url(/local/templates/softmajor/img/list.png) no-repeat 50% 50%; left: 47.5%; top: 50%; margin-left: -7px; margin-top: -7px }
.filter-form input[type="text"] { height: 48px; background: #fff; border: none; padding: 0 0 0 30px;  }
.filter-form input[type="text"].error {  }
.filter-form input.datepicker-here { background: url(/local/templates/softmajor/img/list.png) no-repeat 100% 50%; cursor: pointer }
.filter-form input[type="submit"] { position: absolute; height: 48px; background: #523e79; border: none; color: #fff; right: 6px; top: 6px; width: 46%; cursor: pointer; transition: all .3s ease 0s }
.filter-form input[type="submit"]:hover { background: #523e79 }

.filter-form_options { position: relative; padding: 30px 0 45px 0; line-height: 1em; transition: none !important; overflow: hidden; transition: none !important }
.filter-form_reset { color: #0095a9; cursor: pointer; float: right; background: transparent; border: 0; }
.link-icon-block a { position: relative }
.link-icon-block a:after { content: ''; position: absolute; top: 0; right: -12px; width: 11px; height: 11px; background: url(/local/templates/softmajor/img/link.png) no-repeat 0 0; }

.filter-form.wideform { font-size: 0; }
.filter-form.wideform input[type="text"] { padding-left: 20px; width: 75%; vertical-align: middle; font-size: 18px }
.filter-form.wideform input.datepicker-here { width: 14.5%; }
.filter-form.wideform input[type="submit"] { right: 6px; top: 6px; width: 22%; font-size: 18px }
.wideform .filter-form-i { left: 23%; }

.input.select { position: relative; display: inline-block; vertical-align: middle; border-left: 1px solid #e2dfdc;  }
.wideform .input.select { width: 23.5% }
.input.select input[type="text"] { position: relative; z-index: 1; cursor: pointer; width: 85%; height: 40px; }
.input.select:after { content: ''; position: absolute; width: 20px; height: 20px; background: url(/local/templates/softmajor/img/select.png) no-repeat 0 0; top: 45%; right: 0; pointer-events: none}
:root .input.select:after {display: none\0/IE9; }


.select-list-wrapper { position: relative; z-index: 1 }
.select-list-wrapper.active { z-index: 2; }
.select-list { position: absolute; width: 100%; top: 0; background: #fff; border: 1px solid #e2e1e1; border-top: none; box-shadow: 0 0 6px #ddd; opacity: 0; visibility: hidden }
.active .select-list { opacity: 1; visibility: visible; max-height: 250px; overflow-y: auto; }
.select-list-item { padding: 5px 15px; font-size: 95%; cursor: pointer; font-size: 16px }
.select-list-item:hover { background: #e9e9e9 }

.link-icon-block {}

.list-wrapper { font-size: 0; font-weight: 500; display: flex; flex-flow: row wrap }
.list-item { width: 46%; font-size: 18px; background: #fff; margin-bottom: 4%; padding: 30px; margin-right: 4% }
.tripple .list-item { width: 31.3%; margin-right: 3%; margin-bottom: 3% }
.tripple .list-item:nth-child(3n) { margin-right: 0 }

.list-item_date { color: #6d7175; margin-bottom: 15px }
.list-item_link { font-size: 24px; line-height: 1.3em; }
.list-item_link a { text-decoration: none } 
.list-item_text { margin-bottom: 15px; font: 24px/1.3em; font-weight: 300; color: #523e79; }
.newmedia .list-item { width: 100%;}
.list-item_newmedia .list-item_link { font-size: 18px; line-height: 1.3em; }
.list-item_newmedia .list-item_link a { color: #333; }

.event-items { margin: 0 -15px 30px; font-size: 0; }
.event-item { display: inline-block; vertical-align: top; width: 50%; margin: 0 0 15px; padding: 0 15px; font-size: 18px; }
.event-item a { text-decoration: none; }
.event-item-img { height: 250px; background-color: #f0f0f0; background-repeat: no-repeat; background-position: 50% 50%; background-size: cover; }
.event-item-content { min-height: 250px; padding: 30px; background: #fff; }
.event-item-date { margin: 0 0 15px; color: #6d7175; }
.event-item-title { font: 24px/1.3em; font-weight: 300; color: #523e79; }
.event-item a .event-item-title { color: #db241c; }

.content-right .event-items {display: flex; flex-wrap: wrap;}
.content-right .event-item a {height: 100%; display: block; background: #fff;}
.content-right .event-item-content {border-top: 1px solid #523e79; min-height: auto;}
.content-right a .event-item-date {font-weight: 500;}
.content-right a .event-item-title {color: #523e79; font-family: 'Montserrat';}
.event-item a .event-item-title:hover { color: #db241c;}
.event-items ~ #feedback-wrapper {display: none;}

.pagination { overflow: hidden; margin: 40px 0; padding-bottom: 10px; position: relative; font-weight: 500; font-size: 16px; position: relative }
.pagination a { display: inline-block; vertical-align: middle; height: 35px; min-width: 35px; border: 2px solid transparent; border-radius: 50%; line-height: 35px; text-align: center; color: #737373; text-decoration: none }
.pagination a.sel { border-color: #0095a9 }

.pagination .next { border-radius: 0; height: auto; font-weight: 300; font-size: 18px; color: #0095a9; position: absolute; right: 0; top: .5em; border: none; }
.pagination .next span { border-bottom: 1px solid transparent  }
.pagination .next:hover span { border-color: #0095a9 }

.date-block { font-size: 115%; padding-bottom: 50px }
.date-block_title { font-size: 12px; padding-bottom: 15px }

.socnets-inpage { position: relative }
.socnets-inpage-in { position: absolute; top: 5px; right: 0; }
.socnets-inpage a { display: inline-block; vertical-align: middle; }
.socnets-inpage ul { margin: 0; padding: 0; list-style: none; }
.socnets-inpage ul li { margin: 0; padding: 0; list-style: none; }
.socnets-inpage ul li:before { display: none; }
.socnets-inpage .ya-share2__container_size_m .ya-share2__item { margin: 0 0 12px 12px; }
.socnets-inpage .ya-share2__container_size_m .ya-share2__icon { width: 38px; height: 38px; }
.socnets-inpage .ya-share2__item .ya-share2__badge { background: transparent; }
.socnets-inpage .ya-share2__item_service_facebook .ya-share2__icon { background: url(/local/templates/softmajor/img/svg/facebook.svg); }
.socnets-inpage .ya-share2__item_service_twitter .ya-share2__icon { background: url(/local/templates/softmajor/img/svg/twitter.svg); }
.socnets-inpage .ya-share2__item_service_telegram .ya-share2__icon { background: url(/local/templates/softmajor/img/svg/telegram.svg); }


.site-search-footer { background: #fff; padding: 70px 0 100px 0; font-size: 0; max-width: 1340px; margin: 0 auto }
.site-search-footer-in { max-width: 1200px; margin: 0 auto; padding: 0 285px 0 20px; position: relative }

.site-search-title { font-size: 34px; padding-bottom: 35px; color: #111 }
.site-search-footer input[type="text"] { background: #f0f0f0; font-size: 18px; border: none; height: 60px; padding: 0 30px; width: 100% }
.site-search-footer input[type="text"].error { border: 1px solid red }
.site-search-footer label.error { position: absolute; top: -17px; left: 0; color: red; font-size: 12px }
.site-search-footer input[type="submit"] { font-size: 18px; background: #523e79; height: 60px; position: absolute; right: 20px; bottom: 0; border: none; width: 245px; color: #fff; cursor: pointer; transition: all .3s ease 0s }
.site-search-footer input[type="submit"]:hover { background: #60498d }

.content-error { font-size: 34px; line-height: 40px; font-weight: 500; width: 80% }
.content-error a { color: #0095a9; text-decoration: none; border-bottom: 1px solid transparent }
.content-error a:hover { border-color: #0095a9 }

.page-description { padding-bottom: 10px }

.journal-one { }
.journal-image { background-repeat: no-repeat; background-position: 50% 50%; width: 371px; height: 525px; float: left; margin-right: 50px; background-size: contain }

.journal-info { overflow: hidden; }
.journal-info_options { overflow: hidden; padding-bottom: 35px }
.journal-info_options .date-block { float: left; margin-right: 70px }
.journal-selected .date-block { width: 29%; margin-right: 0; }

.spoiler-list { padding-bottom: 1.2em }
.spoiler { margin-bottom: 12px }
.spoiler-title { background: #fff; font-size: 28px; padding: 29px 50px 29px 30px; position: relative; cursor: pointer; color: #523e79 }
.spoiler-title > a{display: block; width: 100%; height: 100%; text-decoration: none;}
.spoiler-title.active { border-bottom: 3px solid #0095a9 }
.spoiler-toggle { position: absolute; top: 50%; margin-top: -7px; right: 30px; transition: all .3s ease 0s; font-size: 0; width: 14px; height: 14px }
.spoiler-toggle:before { content: ''; height: 2px; width: 14px; background: #523e79; position: absolute; top: 50%; left: 0; margin-top: -1px  }
.spoiler-toggle:after { content: ''; width: 2px; height: 14px; background: #523e79; position: absolute; top: 0; left: 50%; margin-left: -1px  }
.active .spoiler-toggle { transform: rotate(90deg); }
.active .spoiler-toggle:before { display: none }

.spoiler-content { padding: 20px 20px 20px 20px; line-height: 1.3em; transition: none !important; display: none }
.spoiler-content a { font-weight: 500 }

.page-navigation { background: #fff; padding: 70px 0 90px 0; max-width: 1340px; margin: 0 auto }
.page-navigation-in { max-width: 1200px; margin: 0 auto; position: relative; display: flex; justify-content: space-between; padding: 0 20px }
.page-navigation-in > div { max-width: 33% }
.page-navigation_link { font-size: 34px; font-weight: 500; }
.page-navigation_link a { border-color: #0095a9; color: #0095a9; border-bottom: 1px solid transparent; text-decoration: none }
.page-navigation_link a:hover { border-color: #0095a9 }
.page-navigation_title { font-size: 14px; font-weight: 300; padding-bottom: 25px;  }
.page-navigation .next { text-align: right }
.page-navigation .tolist { text-align: center }
.tolist .page-navigation_link { font-size: 20px }

.journal-text { overflow: hidden; padding-bottom: 3px }

.socnets-inpage.inj { position: relative; float: right; width: 10%;  }
.inj .socnets-inpage-in { position: relative; top: 0; width: 50px; text-align: right; float: right }

.association-list { display: flex; justify-content: space-between; flex-flow: row wrap; margin-bottom: 5% }  
.association-item { width: 31%; background: #fff; padding: 30px; margin-bottom: 4% }
.association-image { height: 130px; background-repeat: no-repeat; background-position: 50% 0; margin-bottom: 20px }
.association-link { min-height: 110px; display: flex; align-items: flex-end }
.association-link a { text-decoration: none; position: relative }
.association-link a:after { content: ''; width: 11px; height: 11px; background: url(/local/templates/softmajor/img/link.png) no-repeat 0 0; display: inline-block; margin-left: 4px; position: relative; top: -5px }
.association-item_horizontal { flex-grow: 3; display: flex; align-items: center; justify-content: space-between; }
.association-item_horizontal .association-image { width: 25%; background-position: 50% 50%; margin: 0 5% 0 5%; background-size: contain }
.association-item_horizontal .association-link { overflow: hidden; min-height: 0; width: 60% }

.career-slider { margin-bottom: 70px }
.career-slider-item { position: relative; height: 570px; background-size: cover; background-position: 50% 50%; background-repeat: no-repeat; }
.career-slider .owl-nav { position: absolute; top: 50%; left: 0; z-index: 30; width: 100%; font-size: 0; }
.career-slider .owl-prev { border: none; outline: none; box-shadow: none; position: absolute; width: 15px; height: 26px; background: url(/local/templates/softmajor/img/nav.png) no-repeat 0 0; left: 20px; top: 0; margin-top: -13px }
.career-slider .owl-next { border: none; outline: none; box-shadow: none; position: absolute; width: 15px; height: 26px; background: url(/local/templates/softmajor/img/nav.png) no-repeat 100% 0; right: 20px; top: 0; margin-top: -13px }
.career-slider .owl-prev.disabled, .career-slider .owl-next.disabled { opacity: .3 }

.career-slider-info { float: right; width: 40%; margin-right: 9%; padding: 60px 0 0 0 }
.career-slider-title { font-size: 36px; line-height: 1.1em; margin-bottom: 70px; font-weight: 500 }
.career-slider-opt { position: relative; padding: 0 0 30px 80px; font-weight: 500 }
.career-slider-opt i { position: absolute; width: 60px; height: 60px; background: #523e79; top: -5px; left: 0; background-position: 50% 50%; background-repeat: no-repeat; border-radius: 50% }
.career-slider-opt i:before { content: ''; width: 50px; height: 50px; border: 2px solid #fff; top: 3px; left: 3px; border-radius: 50%; position: absolute; }

.career-slider .owl-dots { position: relative; text-align: center; }
.career-slider .owl-dots .owl-dot { display: inline-block; vertical-align: middle; width: 13px; height: 13px; border-radius: 50%; margin: 0 8px 10px 8px; /* box-sizing: content-box; */ border: 1px solid #523e79; position: relative; top: 40px }
.career-slider .owl-dots .owl-dot.active { background: #523e79; }

.personal-list { margin: 20px 0 30px 0 }
.personal-list-item { border-top: 1px solid #523e79; display: flex; padding: 30px 0; justify-content: space-between; }
.personal-list-image { width: 130px; height: 140px; background-position: 50% 50%; background-size: contain; background-repeat: no-repeat; margin-right: 30px; flex: none; position: relative }
.personal-list-image a { display: block; height: 100% }

.personal-list-info { margin-right: 30px; width: 90% }

.personal-list-name { font-size: 24px; line-height: 1.3em; font-weight: 500; margin-bottom: 15px }
.personal-list-name a { text-decoration: none }
.personal-list-descr { color: #6d7175; font-size: 16px; }

.personal-list-fone { width: 205px; flex: none }
.personal-list-fone span { font-weight: 500; display: block; padding-bottom: 10px }
.personal-list-fone a { font-weight: 500; text-decoration: none }


.flex-form { max-width: 810px; }
.flex-form input, .flex-form textarea { transition: all .3s ease 0s; }
.flex-form h2 { font-size: 34px }
.flex-form-row { display: flex; justify-content: space-between; align-items: center; padding-bottom: 40px  }
.flex-form-input { position: relative }
.flex-form-input input,
.flex-form-input textarea,
.flex-form-input select,
.input.select select { 
	width: 100%; 
	border: none; 
	background: #fff; 
	height: 48px; 
	padding: 0 15px; 
	border: 1px solid #fff; 
	font-size: 18px; 
	-webkit-appearance: none;
    -moz-appearance: none;
    -ms-appearance: none;
    appearance: none !important;
}
.flex-form-input input:hover,
.flex-form-input textarea:hover,
.flex-form-input select:hover { box-shadow: 0 0 2px #523e79 }
.flex-form-input input:focus,
.flex-form-input textarea:focus,
.flex-form-input select:focus { border-color: #523e79 }
.flex-form-input textarea { height: 110px; padding: 15px; max-width: 100%; transition: none }
.flex-form-input.required:after { content: '*'; position: absolute; top: 19px; right: 16px; color: #bbb2a7; font-size: 30px; }

.flex-form .grow-3 { width: 31% }
.flex-form .grow-2 { width: 65.5% }
.flex-form .grow-1 { width: 100% }

.flex-form-row.options { justify-content: flex-start; align-items: center }
.flex-form-row.options div { margin-right: 5% }
.flex-form-submit { height: 60px; background: #523e79; color: #fff; font-size: 18px; border: none; width: 246px; font-weight: 500; cursor: pointer }
.flex-form-submit:hover { background: #523e79 }

.flex-form-input label.error { position: absolute; bottom: -25px; left: 0; font-size: 11px; color: red }
.checkbox { position: relative; }
.checkbox label.error { position: absolute; top: 100%; left: 1; font-size: 11px; color: red }
.checkbox.hh label.error { position: absolute; bottom: -0px; left: 1; font-size: 11px; color: red }
.flex-form-input input.error { border-color: red }
.flex-form-input input.error:hover { box-shadow: 0 0 2px red }

.flex-form-input input.datepicker-here { background: #fff url(/local/templates/softmajor/img/list.png) no-repeat 100% 50% }

.flex-form-add { padding-bottom: 50px }
.flex-form-add input { border: none; background: #fff; height: 48px; padding: 0 15px; border: 1px solid #fff; width: 140px; margin-right: 10px }
.flex-form-add span { padding: 0 20px 0 0 }

.flex-form-input.select input { background-image: url(/local/templates/softmajor/img/select.png); background-position: 100% 55%; background-repeat: no-repeat; position: relative; z-index: 1; cursor: pointer; }

.flex-form h5 { padding: 0 0 1em 0 }

.flex-form-checkbox { padding-bottom: 20px }
.flex-form-checkbox-title { padding-bottom: 30px }
.flex-form-checkbox-block { padding-bottom: 20px }

.flex-form-checkbox-input { display: inline-block; padding-right: 30px; position: relative }
.flex-form-checkbox-input label { position: relative; padding-left: 26px; cursor: pointer; }
.flex-form-checkbox-input label:before { content: ''; width: 10px; height: 10px; position: absolute; top: 50%; margin-top: -8px; left: 0; background: #dadada; border: 4px solid transparent; border-radius: 50% }
.flex-form-checkbox-input input:checked ~ label:before { background: #00b7c9; border-color: #dadada }
.flex-form-checkbox-input input { position: absolute; left: -99999px; top: 0; }

.flex-form-input.period span { position: absolute; right: 20px }

.map-wrapper { max-width: 1340px; margin: -30px auto 0 auto }
.map-block { height: 550px }

.contacts-table { padding-bottom: 20px }
.contacts-table-row { display: flex; justify-content: space-between; border-top: 1px solid #523e79 }
.contacts-table-item { padding: 35px 20px 35px 0; line-height: 1.7em }

.contacts-table .grow-3{width: 50%; text-align: left;}
.contacts-table .grow-3:first-child { width: 25%; flex: none; font-size: 22px; font-weight: 500; line-height: 1.2em }
.contacts-table .grow-3:last-child { width: 20%; flex: none; font-weight: 500 }


.contacts-table .grow-2:first-child { width: 30%; font-size: 22px; font-weight: 500; line-height: 1.2em }
.contacts-table .grow-2:last-child { width: 60%; }

.contacts-table ul, .contacts-table ol { padding-bottom: 0 }

.contacts-table-footer { font-size: 75%; line-height: 1.4em; border-top: 1px solid #523e79; padding: 35px 0 }
.contacts-table-footer p { padding-bottom: .8em;  }

.filter-form-option { padding: 50px 0 40px 0 }
.filter-form-check { display: inline-block; vertical-align: middle; position: relative; margin: 0 30px 10px 0; padding-left: 30px }
.filter-form-check label { vertical-align: middle; cursor: pointer; line-height: 1em }
.filter-form-check label:before  { content: ''; width: 20px; height: 20px; background: #dadada; display: inline-block; vertical-align: middle; margin: 0 10px 2px 0; position: absolute; top: .1em; left: 0; }
.filter-form-check input:checked ~ label:before { background: url(/local/templates/softmajor/img/check.png) no-repeat 0 0;  }
.filter-form-check label.error { position: absolute; font-size: 12px; color: red; left: 25px; bottom: -20px; white-space: nowrap }
.filter-form-check label.error:before { display: none }

.filter-form-check input { position: absolute; left: -10000px }

.infoblock-list { margin: 20px 0 40px 0 }
.infoblock-list-item { overflow: hidden; border-top: 1px solid #523e79; padding: 32px 0; line-height: 1.5em }
.infoblock-list-item a { text-decoration: none }
.infoblock-list-link { float: left; width: 20%; padding-right: 20px }
.infoblock-list-descr { overflow: hidden }
.infoblock-list-name { font-size: 120%; padding-bottom: 20px; font-weight: 500;  }
.infoblock-list-date { margin: 0 0 20px; }
.infoblock-list-text { margin: 0 0 20px; }
.infoblock-list-path { }
.infoblock-list .searched { background: #fff }

.footer-links { font-size: 120%; display: flex; justify-content: space-between; min-height: 2em; margin-top: 30px }
.footer-links a { color: #0095a9; text-decoration: none;  }
.footer-links a span { border-bottom: 1px solid transparent; }
.footer-links a:hover span { border-color: #0095a9; }

.card-type-list { padding-top: 12px; display: flex; flex-flow: row wrap; justify-content: space-between }
.card-type-item { display: flex; justify-content: space-between; background: #fff; padding: 30px; margin-bottom: 5%; width: 47.5% }
.card-type-image { width: 135px; height: 135px; flex: none }
.card-type-info { padding-bottom: 50px; position: relative }
.card-type-title { font-weight: 500; }
.card-type-link { position: absolute; bottom: 0; left: 0; white-space: nowrap; font-size: 90% }
.card-type-link a { color: #0095a9; text-decoration: none }

.appeal-wrapper { display: flex; justify-content: space-between; padding-bottom: 30px }
.appeal-item { border-bottom: 1px solid #000; padding-bottom: 35px; opacity: .5; cursor: pointer }
.appeal-item:hover { opacity: .6 }
.appeal-item.active { opacity: 1; cursor: default }
.appeal-item-image { width: 235px; height: 235px; background-size: contain; background-position: 50% 50%; margin-bottom: 20px; border-radius: 50%; border: 2px solid #fff }
.appeal-item-title { font-size: 34px; line-height: 1.3em; font-weight: 500 }

.appeal-text div { transition: none }

.appeal-item-text { display: none; border-bottom: 1px solid #000; padding: 0 0 20px 0; margin-bottom: 40px }

.leader-card { display: flex; padding-bottom: 40px; margin-bottom: 45px; border-bottom: 1px solid #523e79 }
.leader-card-image { flex: none; width: 273px; height: 280px; margin-right: 34px; background-position: 50% 50%; background-repeat: no-repeat; background-size: cover; }
.leader-card-name { font-size: 34px; line-height: 1.2em; font-weight: 500; padding-bottom: 40px }
.leader-card-text { padding-bottom: 20px }
.leader-card-fone { font-weight: 500; line-height: 1.9em; position: absolute; bottom: -.5em; left: 0 }
.leader-card-info { position: relative }

.culture-slider { padding: .5em 0 2em 0 }
.culture-slider-item { background-position: 50% 50%; height: 440px; background-size: cover; position: relative }
.culture-slider-item:before { content: ''; position: absolute; width: 100%; height: 100%; top: 0; left: 0; background: #000; opacity: .3 }
.culture-slider-name { position: absolute; bottom: 0; left: 0; font-size: 36px; line-height: 1.3em; padding: 40px 30px; color: #fff; font-weight: 500; z-index: 1 }

.culture-slider .owl-nav { position: absolute; top: 50%; left: 0; z-index: 30; width: 100%; font-size: 0 }
.culture-slider .owl-prev { border: none; outline: none; box-shadow: none; position: absolute; width: 15px; height: 26px; background: url(/local/templates/softmajor/img/nav_w.png) no-repeat 0 0; left: 20px; top: 0; margin-top: -33px }
.culture-slider .owl-next { border: none; outline: none; box-shadow: none; position: absolute; width: 15px; height: 26px; background: url(/local/templates/softmajor/img/nav_w.png) no-repeat 100% 0; right: 20px; top: 0; margin-top: -33px }
.culture-slider .owl-prev.disabled, .culture-slider .owl-next.disabled { opacity: .3 }

.culture-slider .owl-dots { position: relative; text-align: center; margin-top: 40px }
.culture-slider .owl-dots .owl-dot { display: inline-block; vertical-align: middle; width: 13px; height: 14px; border-radius: 50%; margin: 0 8px 10px 8px; /* box-sizing: content-box; */ border: 1px solid #523e79 }
.culture-slider .owl-dots .owl-dot.active { background: #523e79; }
.culture-slider .owl-dots .owl-dot span{  width: 100%;}

.vacance-list-item { border-top: 1px solid #523e79; padding: 30px 0 40px 0; display: flex; justify-content: space-between  }
.vacance-list-title { padding-right: 30px; font-size: 24px; width: 55%; line-height: 1.3em; font-weight: 500 }
.vacance-list-title a { text-decoration: none }
.vacance-list-links { flex: none }
.vacance-list-link { padding-bottom: 20px; white-space: nowrap }
.vacance-list-link a { text-decoration: none; color: #0095a9 }

.vac-title { color: #523e79; padding-bottom: 1.6em }
.vac-title span { font-weight: 300; color: #111; display: block }

#addingFormBlock { position: absolute; top: 0; left: -99999px }
.addingFormBlock { padding: 20px 0 65px 0; margin-bottom: 50px }
.addingFormBlock a { display: inline-block; background: #dadada; color: #111; width: 245px; padding: 15px; position: absolute; cursor: pointer }
.addingFormBlock a:hover { background: #c8c1b9 }
.addingFormBlock i { width: 11px; height: 11px; position: absolute; top: 50%; right: 16px; margin-top: -6px }
.addingFormBlock i:before { content: ''; height: 1px; width: 100%; background: #523e79; position: absolute; top: 50%; left: 0; }
.addingFormBlock i:after { content: ''; width: 1px; height: 100%; background: #523e79; position: absolute; top: 0; left: 50%; }

.datepicker--cell.-range-to-{ background-color:rgba(92,196,239,1) !important; color:#fff }
.datepicker--cell.-in-range-{ background-color:rgba(92,196,239,.9) !important; color:#fff !important; }
.datepicker--cell.-in-range-.-focus-{ background-color:rgba(92,196,239,1) !important }

/*===LONGREAD===*/
.longread-block { transition: none !important }
.longread-wrapper { margin: 0 auto 0 auto; max-width: 1340px; background: #fff; }
.longread-wrapper-in { margin: 0 auto; max-width: 1200px; overflow: hidden; padding: 0 20px }

.longread-title-wrapper { background: #fff; padding-bottom: 80px; max-width: 1340px; margin: 0 auto }
.longread-title { font-size: 24px; margin: 0 auto; max-width: 1200px; padding: 0 20px }
.longread-title span { color: #523e79; border-bottom: 2px solid #9a9b9d; }
.longread-title span#js-longread-button { cursor: pointer; }
.longread-title span.active { color: #de002e }

.longread-quote-block { overflow: hidden; padding-bottom: 80px }
.longread-quote-person { float: left; margin-right: 90px }
.longread-quote-text { overflow: hidden; background: #f0f0f0; padding: 43px 38px; font-size: 24px; color: #787674; font-style: italic; font-weight: 500;  }
.longread-quote-text:before { content: ''; display: inline-block; vertical-align: top; width: 35px; height: 26px; background: url(/local/templates/softmajor/img/blockq2.png) no-repeat 0 0; margin: 0 17px 0 0; position: relative; top: -2px }
.longread-quote-foto { width: 130px; height: 130px; background-position: 50% 0; background-size: cover; border-radius: 50%; margin-left: 5px; margin-bottom: 25px }
.longread-quote-name { font-size: 18px; margin-left: 70px; line-height: 1.2em; font-weight: 300; }
.longread-quote-name span { font-size: 24px; display: block; font-weight: 500; padding-bottom: 5px; line-height: 1.3em; }
.longread-quote-block.rgh .longread-quote-person { float: right; margin-right: 0; margin-left: 70px }

.longread-history-wrapper { margin: 0 auto 0 auto; max-width: 1340px; }
.longread-history-wrapper.follow { background: #fff; display: none; }
.longread-history { font-size: 48px; line-height: 1.2em; font-weight: 300; }
.longread-history-wrapper .longread-history { margin: 0 auto; max-width: 1200px; padding: 90px 20px 20px 20px }
.longread-history-title { font-size: 24px; font-weight: 500; margin-bottom: 30px }
.longread-history-wrapper a { text-decoration: none }

.longread-path { padding-bottom: 100px }
.longread-path-block { font-size: 0; position: relative; min-height: 373px; padding-top: 180px; padding-bottom: 111px; }
.longread-path-block.last { min-height: 373px; padding-top: 52px; padding-bottom: 111px; }
.longread-path-logo { font-size: 34px; font-weight: 300; line-height: 1.2em; display: inline-block; vertical-align: middle; width: 500px; position: relative; z-index: 1; top: -4px }
.longread-path-block.toright { text-align: right; }
/* .longread-path-block.toright:after { content: ''; position: absolute; top: 235px; right: 370px; width: 408px; height: 453px; background: url(/local/templates/softmajor/img/path_curve.png) no-repeat 50% 50%; z-index: 1 }  */
/* .longread-path-block.toleft:after { content: ''; position: absolute; top: 363px; right: 370px; width: 408px; height: 454px; background: url(/local/templates/softmajor/img/path_curve2.png) no-repeat 50% 50%; z-index: 1 }  */

/*  */
.longread-path-block .path-right{position: absolute; top: 235px; right: 370px;width: 408px; height: 453px; z-index: 1;}
.longread-path-block .path-left{position: absolute; top: 363px; right: 370px; width: 408px; height: 454px; z-index: 1;}

.longread-path-block .path-small{
	position: absolute;
	top: 186px;
	right: 50%;
	width: 5px;
	margin-right: -3px;
	height: 265px;
	display: none;
	z-index: 1;
}
/*  */

.longread-path-block.last:after { display: none }
.longread-path-name { font-size: 24px; display: inline-block; vertical-align: middle; text-align: left; font-weight: 300; width: 290px; position: relative; z-index: 1 }
.toleft .longread-path-name { text-align: right; width: 300px } 
.longread-path-name span { font-size: 34px; display: block; color: #523e79; font-family: 'Montserrat-Bold' }
.longread-path-i { position: relative; display: inline-block; vertical-align: middle; margin: 0 65px; width: 40px; height: 40px; top: -10px; }
.longread-path-i:after { content: ''; width: 40px; height: 40px; background: url(/local/templates/softmajor/img/path_punkt.png) no-repeat 50% 50%; background-size: cover; position: relative; z-index: 1; display: block }
.longread-path-i:before { content: ''; background-size: cover; position: absolute; }
/* .longread-path-i.type1:before { background: url(/local/templates/softmajor/img/path1.png) no-repeat 50% 50%; width: 308px; height: 366px; top: -190px; left: -133px; } */
/* .longread-path-i.type2:before { background: url(/local/templates/softmajor/img/path2.png) no-repeat 50% 50%; width: 370px; height: 371px; top: -165px; left: -165px; } */
/* .longread-path-i.type3:before { background: url(/local/templates/softmajor/img/path3.png) no-repeat 50% 50%; width: 370px; height: 371px; top: -165px; left: -165px; } */
/* .longread-path-i.type4:before { background: url(/local/templates/softmajor/img/path4.png) no-repeat 50% 50%; width: 430px; height: 430px; top: -195px; left: -195px; } */
/* .longread-path-i.type5:before { background: url(/local/templates/softmajor/img/path5.png) no-repeat 50% 50%; width: 430px; height: 430px; top: -195px; left: -195px; } */
.longread-logo-list { font-size: 0; padding-top: 12px }
.longread-logo-list img { margin-right: 10px }

.motto-wrapper { margin: 0 auto; max-width: 1200px; overflow: hidden; padding: 115px 20px 0 20px; min-height: 510px; position: relative; }
.motto-wrapper-title { text-transform: uppercase; font-size: 14px; font-weight: 300; letter-spacing: 3px; padding-bottom: 30px }
.motto-wrapper-name { color: #523e79; font-size: 80px; line-height: 1.1em }
.motto-wrapper:before { content: ''; position: absolute; width: 382px; height: 342px; background: url(/local/templates/softmajor/img/motto2.png) no-repeat 0 0; top: 85px; right: -30px; z-index: -1;}

.longread-slider { margin: 0 auto 0 auto; max-width: 1340px; height: 600px; overflow: hidden }
.longread-slider-item { /*height: 600px;*/ height: 31.25vw; background-size: cover; background-position: 50% 50% }
.longread-slider-item-in { position: relative; margin: 0 auto; max-width: 1200px; padding: 115px 20px 0 20px; color: #fff; }
.longread-slider-item-title { font-size: 24px; padding-bottom: 38px }
.longread-slider-item-name { font-size: 48px; width: 60%; line-height: 1.2em; padding-bottom: 40px }
.longread-slider-item-link { position: absolute; top: 100%; right: 10%; font-size: 16px; display: inline-block; border: 2px solid #fff; width: 170px; color: #fff }
.longread-slider-item-link a { color: #fff; text-decoration: none; display: block; padding: 10px 0; text-align: center }
.longread-slider-item-link a:hover { text-decoration: underline }
.longread-slider .owl-dots { position: absolute; bottom: 35px; left: 0; z-index: 30; width: 100%; text-align: center }
.longread-slider .owl-dots .owl-dot { display: inline-block; vertical-align: middle; width: 13px; height: 13px; background: #fff; border-radius: 50%; margin: 0 8px; /* box-sizing: content-box */ border: none; outline: none; box-shadow: none; }
.longread-slider .owl-dots .owl-dot.active { background: #523e79; }

.card-type-list.index-card-type { padding: 0 20px 100px 20px; display: block; margin: 0 auto; max-width: 1200px; }
.index-card-type .card-type-item { width: 370px;  }
.index-card-type .owl-nav { position: absolute; top: 50%; left: 0; z-index: 30; width: 100%; font-size: 0 }
.index-card-type .owl-prev { border: none; outline: none; box-shadow: none; position: absolute; width: 15px; height: 26px; background: url(/local/templates/softmajor/img/nav.png) no-repeat 0 0; left: -30px; top: 0; margin-top: -26px }
.index-card-type .owl-next { border: none; outline: none; box-shadow: none; position: absolute; width: 15px; height: 26px; background: url(/local/templates/softmajor/img/nav.png) no-repeat 100% 0; right: -30px; top: 0; margin-top: -26px }
.index-card-type .owl-prev.disabled, .index-card-type .owl-next.disabled { opacity: .3 }
.index-card-type .card-type-title { font-size: 18px; line-height: 1.15; }
.index-card-type .card-type-link { font-size: 14px }

.career-slider-wrapper { margin: 0 auto 0 auto; max-width: 1340px; display: flex }
.career-slider-wrapper .career-slider { width: 55%; margin: 0; }
.career-slider-wrapper .career-slider-opt { font-size: 18px }
.career-slider-wrapper .career-slider .owl-nav { display: none }
.career-slider-wrapper .career-slider .owl-dots { position: absolute; width: 100%; bottom: 15px; left: 0; }
.career-slider-wrapper .career-slider .owl-dots .owl-dot { top: 0; background: #fff; }
.career-slider-wrapper .career-slider .owl-dots .owl-dot.active { background: #523e79 }


/* --- */
.career-newslider .owl-dots { position: absolute; bottom: 35px; left: 0; z-index: 30; width: 100%; text-align: center }
.career-newslider .owl-dots .owl-dot { display: inline-block; vertical-align: middle; width: 13px; height: 13px; background: #fff; border-radius: 50%; margin: 0 8px; /* box-sizing: content-box */ border: 1px solid #523e79; outline: none; box-shadow: none; }
.career-newslider .owl-dots .owl-dot.active { background: #523e79; }

.career-slider-left { width: 45%; background: #523e79; color: #fff; display: flex; align-items: center; padding: 0 100px 0 30px; justify-content: flex-end }
.career-slider-left > div { max-width: 450px; }
.career-slider-left_title { font-size: 24px; padding-bottom: 35px }
.career-slider-left_name { font-size: 48px; line-height: 1.2em; font-weight: 300 }

.clients-list { display: flex; flex-wrap: wrap }
.clients-list-one { width: 24.1%; margin-bottom: 36px; margin-right: .9% }
.clients-list-image { background: #fff; display: flex; height: 193px; align-items: center; position: relative }
.clients-list-image a { position: absolute; width: 100%; height: 100% } 
.clients-list-image div { height: 190px; width: 100%; background-position: 50% 50%; background-repeat: no-repeat }
.clients-list-name { padding: 18px 10px 0 10px; font-size: 18px; font-weight: 500 }
.clients-list-name a { text-decoration: none; color: #000 }
.clients-list-name a:hover { color: #dc311c }

/*=====*/
.career-newslider { transition: none; margin-bottom: 50px }
.career-newslider div {transition: none;}
.career-newslider-item { min-height: 570px; position: relative; background-position: 50% 50%; background-size: cover; overflow: hidden }
.career-newslider-col { width: 50%; float: right; }
.career-newslider-colored-title { margin: 40px 0 0 0; font-family: 'Montserrat'; position: relative;  }
.career-newslider-colored-title span { font-weight: 300; display: block; }
.career-newslider-colored-title svg { position: absolute; top: 50%; left: -42%; width: 36%; margin-top: -18%; z-index: 1 }
.type1 .career-newslider-colored-title { background: #00a7b5; color: #fff }
.type4 .career-newslider-colored-title,
.type2 .career-newslider-colored-title { background: #523e79; color: #fff; }
.type3 .career-newslider-colored-title { background: #00a7b5; color: #fff; }

.career-newslider-colored-in { position: relative; font-size: 36px; padding: 20px 20px 20px 0; line-height: 1.1em;  }
.career-newslider-colored-in:before { content: ''; position: absolute; top: 0; left: -50%; height: 100%; width: 50%; border-radius: 50% 0 0 50%; }
.type1 .career-newslider-colored-title :before { background: #00a7b5; }
.type4 .career-newslider-colored-title :before,
.type2 .career-newslider-colored-title :before { background: #523e79; }
.type3 .career-newslider-colored-title :before { background: #00a7b5; }

.career-newslider-item .illustr { display: none; position: absolute; left: 5%; bottom: 3%; background-size: contain; background-position: 50% 50%; background-repeat: no-repeat }  

.type1 .illustr { background-image: url(/local/templates/softmajor/img/health_rgb_teal.png); width: 40%; height: 50%;  }
.type2 .illustr { background-image: url(/local/templates/softmajor/img/focus_rgb_teal.png); width: 40%; height: 50%;  }
.type3 .illustr { background-image: url(/local/templates/softmajor/img/leadership2_rgb_teal.png); width: 40%; height: 50%;  }
.type4 .illustr { background-image: url(/local/templates/softmajor/img/global_business_rgb_teal.png); width: 40%; height: 50%; }

.type4 .title-icon{ 
	position: absolute;
    top: 50%;
    left: -42%;
    width: 36%;
    /* margin-top: -18%; */
    z-index: 1;
	transform: translateY(-50%); 
	height: 140px;
	background-image: url('/local/templates/softmajor/img/slide5-team.svg');
	background-repeat: no-repeat;
	background-position: 50% 50%; 
	background-size: contain;
}

.career-newslider-list { padding-top: 40px }
.career-newslider-list-item { font-size: 18px; font-family: 'Montserrat'; line-height: 1.3em; padding: 0 80px 0 78px; margin-bottom: 30px; position: relative; min-height: 60px; }
.career-newslider-list-ico { width: 60px; height: 60px; background: #523e79; border-radius: 50%; position: absolute; top: -8px; left: 0 }
.career-newslider-list-ico svg { margin-left: 5%; margin-top: 5%; width: 90%; height: 90% }

.career-newslider .owl-nav { position: absolute; top: 50%; left: 0; z-index: 30; width: 100%; font-size: 0; }
.career-newslider .owl-prev { border: none; outline: none; box-shadow: none; position: absolute; width: 15px; height: 26px; background: url(/local/templates/softmajor/img/nav.png) no-repeat 0 0; left: 20px; top: 0; margin-top: -13px }
.career-newslider .owl-next { border: none; outline: none; box-shadow: none; position: absolute; width: 15px; height: 26px; background: url(/local/templates/softmajor/img/nav.png) no-repeat 100% 0; right: 20px; top: 0; margin-top: -13px }
.career-newslider .owl-prev.disabled, .career-newslider .owl-next.disabled { opacity: .3 }

/*  */
.owl-stage-outer,
.owl-height{
	width: 100%;
}
.owl-stage{
	width: 100%;
}

.owl-item{
	/* width: 100% !important; */
	/* min-width: 100%; */
}

.service-slider-block{
	width: 100%;
}

.owl-stage{
	height: 100%;
}

.service-slider-block > a{
	display: block;
	width: 100%;
	height: 100%;
}

.owl-prev span,
.owl-next span{ visibility: hidden; opacity: 0;}
/*  */
	.longread-quote-block .longread-quote-person{
		opacity: 0;
		transform: translateX(-5%);
		transition: opacity .6s, transform 1s;
	}

	.longread-quote-block .longread-quote-person.active{
		opacity: 1;
		transform: translateX(0);
	}

	.longread-quote-block .longread-quote-text{
		opacity: 0;
		transform: translateX(5%);
		transition: opacity .6s, transform 1s;
	}

	.longread-quote-block .longread-quote-text.active{
		opacity: 1;
		transform: translateX(0);
	}

	.longread-wrapper-in .longread-history{
		opacity: 0;
		transform: translateY(8%);
		transition: opacity .6s, transform 1s;
	}

	.longread-wrapper-in .longread-history.active{
		opacity: 1;
		transform: translateY(0);
	}

	.longread-path-block .longread-path-logo,
	.longread-path-block .longread-path-name{
		opacity: 0;
		transform: translateY(25%);
		transition: opacity .6s , transform 1s;
	}

	.longread-path-block .longread-path-logo.active,
	.longread-path-block .longread-path-name.active{
		opacity: 1;
		transform: translateY(0);
	}

/*  */
.news-link-group{
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding-top: 77px;
}

.news-link-group .news-prev-link,
.news-link-group .news-next-link{
	display: flex;
	justify-content: center;
	align-items: center;
	color: #0095a9;
	padding-bottom: 5px;
	font-size: 18px;
	font-weight: 400;
	text-decoration: none;
	transition: none;
}

.news-link-group .news-next-link {
	text-align: right;
}

.news-link-group .news-prev-link__arrow,
.news-link-group .news-next-link__arrow{
	display: block;
	width: 14px; 
	height: 9px;
	/* transition: color .3s; */
}

.news-next-link__arrow{
	margin-left: 8px;
  margin-top: -8px;
}

.news-prev-link__arrow{
	margin-bottom: -12px;
	margin-right: 8px;
	transform: rotate(180deg);
}

.news-prev-link:hover,
.news-next-link:hover,
.news-prev-link:hover .news-prev-link__arrow,
.news-next-link:hover .news-next-link__arrow{
	
	color: #db241c;
}

.filter-form .w13{
	width: 13%;
}

.filter-form .w25{
	width: 25%;
}



/*  */
 @media all and (-ms-high-contrast: none), (-ms-high-contrast: active) { 
	/* IE10+ CSS styles go here */

	.owl-dot {
		height: 16px !important;
		/* box-sizing: inherit !important; */
	}

	.owl-dot span{
		/* display: inline-block;
		width: 100%;
		height: 100%; */
		display: none; 	
	}
	
	.career-newslider .owl-dot,
	.culture-slider .owl-dot,
	.career-slider .owl-dot,
	.news-slider .owl-dot{
	    height: 17px !important;
	}

	.career-newslider-colored-title svg{
		transform: translateY(-15%);
	}

} 

@-moz-document url-prefix(){
	.owl-dot span{
		display: none;
	}

	.owl-dot {
		height: 15px !important;
		box-sizing: inherit !important;
	}
}
/*  */
@media(max-width:1190px) and (min-width:1100px){
.motto-wrapper:before {
   background-size: 80%;
	}
}
@media(max-width:1100px){
	.career-newslider-colored-in { font-size: 29px; padding: 15px 20px 15px 0; }
	.career-newslider-list-item { font-size: 16px; padding: 0 40px 0 78px  }

	.longread-path-block .path-left,
	.longread-path-block .path-right{
		display: none;
	}

	.longread-path-block .path-small{
		display: block;
	}
}

@media(max-width:650px){
	.career-newslider-colored-title { margin-top: 30px; }
	.career-newslider-colored-in:before { min-height: 120px; left: -40%; width: 40%; }
	.career-newslider-colored-title svg { top: 50%; left: -33%; width: 28%; margin-top: -14%; z-index: 1 }
	.career-newslider-colored-in { font-size: 20px; padding: 15px 20px 15px 0; min-height: 120px; display: flex; align-items: center }
	.career-newslider-list-item { font-size: 16px; padding: 0 40px 0 50px }
	.career-newslider-list-ico { width: 40px; height: 40px; }
	.career-newslider-item { min-height: 420px }
}

@media(max-width:650px){	
	.career-newslider-colored-in:before { min-height: 100px; }
	.career-newslider-colored-in { font-size: 15px; padding: 15px 20px 15px 0; min-height: 100px; }
	.career-newslider-list-item { font-size: 11px; padding: 0 40px 0 50px; min-height: 40px; }
	.career-newslider-item { min-height: 320px }
	.career-newslider .owl-prev { left: 5px; }
	.career-newslider .owl-next { right: 5px; }

}

@media(max-width:450px){	
	.career-newslider-colored-title { margin-top: 20px; }
	.career-newslider-colored-in:before { min-height: 10px; }
	.career-newslider-colored-in { padding: 10px 20px 10px 0; min-height: 10px; }
	.career-newslider-list-item { padding: 0 20px 0 50px; }	
	.career-newslider-list { padding-top: 20px }	
}

@media(max-width:380px){
	.career-newslider-colored-in { font-size: 14px; padding: 6px 20px 6px 0; }
	.career-newslider-item { min-height: 230px }
	.career-newslider-list-ico { width: 35px; height: 35px; top: -6px; }
	.career-newslider-list-item { padding: 0 20px 0 45px }
}


.service-categories {
  max-width: 1340px;
  width: 100%;
  margin: 0 auto;
  padding: 0 85px 135px 85px;
}

.service-categories p,
.service-categories-caption {
  color: #000000;
  font-family: "Montserrat", Arial, sans-serif;
  font-size: 22px;
  font-weight: 400;
  line-height: 20px;
  padding-bottom: 50px;
}

.service-categories-list {
  display: flex;
  flex-wrap: wrap;
  margin-left: -15px;
  margin-right: -15px;
}

.service-categories-list-item {
  padding-left: 15px;
  padding-right: 15px;
  width: 33.33333%;
  box-sizing: border-box;
  height: 175px;
  margin-bottom: 30px;
  cursor: pointer;
}

.service-categories-list-item >.item-inner {
  padding: 35px 30px 30px 30px;
  width: 100%;
  height: 100%;
  background-color: #523e79;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  box-sizing: border-box;
  text-decoration: none;
}

.service-categories-list-item:hover >.item-inner{
  background-color: #fff;
  transition: background-color .4s;
}

.service-categories-list-item:hover h5{
  color: #000000;
  transition: color .4s;
}
.service-categories-list-item.main {
  display: none;
}
.service-categories-list-item.main >.item-inner {
  background-color: #fff;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  padding-right: 50px;

}

.service-categories-list-item.empty >.item-inner {
  background-color: #ebe6e2;
}

.service-categories-list-item.main h5 {
  color: #523e79;
  font-family: "Montserrat", Arial, sans-serif;
  font-size: 34px;
  font-weight: 400;
  padding-bottom: 0;
}

.service-categories-list-item h5 {
  color: #ffffff;
  font-family: "Montserrat", Arial, sans-serif;
  font-size: 18px;
  font-weight: 400;
  line-height: 24px;
}

.service-categories-list-item .item-link{
  color: #0095a9;
  font-family: "Montserrat", Arial, sans-serif;
  font-size: 14px;
  font-weight: 400;
  text-decoration: none;
}

/* --- */

.bissnes-plan .list-item{
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  height: 155px;
}

.bissnes-plan .list-item .head{
  padding-top: 0;
  display: block;
  width: 100%;
  color: #000000;
  font-family: "Montserrat",Arial, sans-serif;
  font-size: 18px;
  font-weight: 400;
  line-height: 24px;
  text-align: left;
  z-index: 10;
}

.bissnes-plan .list-item > a{
  color: #0095a9;
  font-family: "Montserrat", Arial, sans-serif;
  font-size: 14px;
  font-weight: 400;
  text-decoration: none;
}

.bissnes-plan > h3{
  padding-top: 0;
  padding-bottom: 0;
  color: #000000;
  font-family: "Montserrat", Arial, sans-serif;
  font-size: 32px;
  font-weight: 400;
  width: 100%;
  margin-top: 32px;
  margin-bottom: 32px;
}

/* ---- */

.analityc-block{
  display: flex;
  width: 100%;
  margin-left: -10px;
  margin-right: -10px;
}

.analityc-block-item{
  padding-left: 10px;
  padding-right: 10px;
  width: 50%;
  display: flex;
}

.analityc-block-item > img{
  width: 40px;
  height: 40px;
  margin-right: 11px;
}

.analityc-block-item-text{
  display: flex;
  flex-direction: column;
  margin-top: 10px;
}

.analityc-block-item-text span{
  display: inline-block;
  cursor: pointer;
}

.analityc-block-item__size{
  color: #6d7175;
  font-family: "Montserrat", Arial, sans-serif;
  font-size: 14px;
  font-weight: 300;
  line-height: 20px;
}

.analityc-block-all-docs__link{
  display: block;
  color: #0095a9;
  font-family: "Montserrat", Arial, sans-serif;
  font-size: 18px;
  font-weight: 400;
  text-decoration: none;
  margin-bottom: 25px;
}

/* ----- */
#newServiceSlider{
	/* pointer-events: none; */
}

#other-service{
  padding-left: 30px;
  padding-right: 30px;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

#other-service .owl-prev,
#other-service .owl-next,
#other-service .owl-dots button{
	background-color: transparent;
	border: none;
	outline: none;
	box-shadow: none;
}

.other-service-slider{
  width: 100%;
  height: 198px;
}

.other-service-slider .owl-stage-outer{
  height: 155px;
}

.other-service-slider .owl-item{
  height: 155px;
  background-color: #ffffff;
}

@media all and (-ms-high-contrast:none){
  .other-service-slider .owl-nav{
    transform: translateY(-115%);
  }
}

.other-service-slider .owl-nav{
  margin-left: -30px;
  margin-right: -30px;
  position: absolute;
  top: 50%;
  transform: translateY(calc(-50% - 21px));
  width: 100%;
  display: flex;
  justify-content: space-between;
}

.other-service-slider .other-service-slider-item{
  height: 100%;
  width: 100%;
  padding: 37px 30px 30px 30px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.other-service-slider .other-service-slider-item h5{
  color: #000000;
  font-family: "Montserrat", Arial, sans-serif;
  font-size: 18px;
  font-weight: 400;
  line-height: 24px;
}

.other-service-slider .other-service-slider-item a{
  color: #0095a9;
  font-family: "Montserrat", Arial, sans-serif;
  font-size: 14px;
  font-weight: 400;
  text-decoration: none;
}

.other-service-slider .owl-dots{
  display: flex;
  justify-content: center;
  align-items: flex-end;
  width: 100%;
}

.other-service-slider .owl-dot span{
  display: block;
  width: 13px;
  height: 13px;
  border-radius: 50%;
  /* margin-right: 8px; */
  border: 1px solid #523e79;
  background-color: #fff;
}

.other-service-slider .owl-dot.active span{
  background-color: #523e79;
}

.other-service-slider .owl-dot{
	margin-right: 8px;
}

/* ------- */
#branchesSlider{
  max-height: 360px;
}

#branchesSliderMobile{
  height: 350px;
}

.career-newslider-colored-in{
  	height: 196px;
}

.type4 .title-icon{
	width: 128.16px;
	height: 128.16px
}

.recaptcha_wrap {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: flex-start;
	margin: 37px 0px 42px 0px;
}
.poyas-text {
	padding: 0px 0px 0px 30px;
}
.subscribe-edit input[type="submit"] { position: relative; height: 48px; background: #523e79; border: none; color: #fff; right: 6px; top: 6px; width: 247px; cursor: pointer; transition: all .3s ease 0s }
.subscribe-edit input[type="submit"]:hover { background: #523e79 }


.subscribe_inputs {
	width: calc(100% + 15px);
	position: relative;
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: flex-start;
	margin: 0px 0px 0px 0px;
}
.subscriber_label {
	position: relative;
	display: block;
	width: calc(((100%) / 4) - 30px);
	margin: 0px 30px 30px 0px;
}
.subscribe_inputs input[type="text"] {
	height: 48px;
	width: 100%;
	background: #fff;
	border: none;
	padding: 0 32px 0 30px;
	margin: 0px 0px 0px 0px;
}
.subscribe_inputs label:nth-child(4) input[type="text"] {
	margin: 0px 0px 0px 0px;
}
.subscribe_inputs input[type="text"].required {
	background: url(/local/templates/softmajor/img/zve.png) calc(100% - 15px) 20px no-repeat #fff;
}
#subscribe_form .filter-form-option {
	padding: 10px 0 32px 0;
}
.subscribe_inputs label.error {
	position: absolute;
	bottom: -20px;
	font-size: 12px;
	color: red;
	left: 30px;
}
#solgobrab + label.error {
	bottom: 18px;
	left: 30px;
}






@media (max-width: 1100px){

  .service-categories {
    max-width: 650px;
    padding-left: 20px;
    padding-right: 20px;
    padding-bottom: 50px;
  }

  .service-categories-list-item{
    width: 100%;
  }

  .service-categories-list-item.empty{
    display: none;
  }

  /* --- */
  .bissnes-plan > h3{
    margin-top: 20px !important;
    margin-bottom: 15px !important;
    font-size: 25px;
  }

  .career-newslider-colored-in{
  	height: 154px;
  }
	
  .type4 .title-icon{
  	width: 109px;
  	height: 109px;
  }	
.subscriber_label {
	width: calc(((100%) / 2) - 30px);
}
.subscribe_inputs input[type="text"] {
	height: 48px;
	background: #fff;
	border: none;
	padding: 0 0 0 30px;
	margin: 0px 30px 0px 0px;
}
.subscribe_inputs label:nth-child(2n) input[type="text"] {
	margin: 0px 0px 0px 0px !important;
}
.subscribe_inputs label:nth-child(4) input[type="text"] {
	margin: 0px 30px 0px 0px;
}
.subscribe_inputs input[type="text"].required {
	background-position: calc(100% - 5px) 20px;
}
#solgobrab + label.error {
	bottom: 38px;
}

}

@media (max-width: 886px){

  /* .service-categories {
    padding-left: 20px;
    padding-right: 20px;
    padding-bottom: 50px;
  }
 */
}

@media (max-width: 668px){
  /* .service-categories-list-item{
    width: 100%;
  } */

  /*#slider .owl-dot{
  	display: none;
  }*/
}

@media (max-width: 668px){
	@supports (-webkit-overflow-scrolling: touch) {
	  /* CSS specific to iOS devices */

	  .owl-dot{

	  	display: block;
	  	box-sizing: border-box !important;
	  	padding-left: 0;
	  	padding-right: 0;

	  	width: 13px !important;
	  	height: 13px !important; 
	  	-webkit-border-radius: 50%;
	  	-webkit-writing-mode: lr-tb;
	  }

	  .owl-next { 
		background-position: 185% 0 !important;
	  }	
	  
	  .owl-prev{
		background-position: -100% 0 !important;
	  }

	  
	}
}

@media (max-width: 650px){
	.type4 .title-icon{
		left: -33%;
	}

	.career-newslider-colored-in{
		height: auto !important;
	}
}

@media (max-width: 451px){

	.career-newslider-colored-in{
		min-height: 84px;
	}

	.career-newslider-item.type4 .career-newslider-colored-in > div{
		/* margin-left: 5px; */
	}
	.mob100 {
		width: 100px !important;
		height: auto !important;
		margin-bottom: 53px;
	}
	.nmob {
		display: none !important;
	}
	.nmob + h3 {
		clear: both;
	}
	
	.subscriber_label {
		width: 100%;
	}
	.subscribe_inputs input[type="text"] {
		height: 38px;
		width: 100%;
		background: #fff;
		border: none;
		padding: 0 24px 0 15px;
		margin: 0px 0px 0px 0px;
	}
	.subscribe_inputs label:nth-child(2n) input[type="text"] {
		margin: 0px 0px 0px 0px !important;
	}
	.subscribe_inputs label:nth-child(4) input[type="text"] {
		margin: 0px 0px 0px 0px;
	}
	.subscribe_inputs input[type="text"].required {
		background-position: calc(100% - 8px) 14px;
	}
	.subscribe_soglas .filter-form-check {
		width: 100%;
	}
	.filter-form-check label.error {
		left: 30px;
		bottom: -14px;
	}
	.subscribe_inputs label.error {
		bottom: -19px;
		left: 15px;
	}
	#solgobrab + label.error {
		bottom: 30px;
	}
	.recaptcha_wrap {
		margin: 15px 0px 15px 0px;
	}
	.poyas-text {
		padding: 15px 0px 0px 0px;
	}
	#subscribe_form .filter-form-option {
		padding: 15px 0 0px 0;
	}
	#subscribe_form .filter-form-check {
		margin: 0 15px 22px 0;
	}
	
	
}

@media (max-width: 399px){
	#solgobrab + label.error {
		bottom: 46px;
	}
}

.av-zag {
	display: block;
	width: 710px;
	max-width: 100%;
}
.av-zag b {
	color: #523e79;
	font: 24px/1.3em; font-weight: 300;
}
.av-zag span {
	margin: 0 0 8px;
	color: #6d7175;
	font-weight: 500;
	font-size: 18px;
	display: block;
}
.news-item iframe {
	max-width: 100%;
}

.filtr-bigsel {
	width: 48%;
}
.filtr-bigres {
	position: relative !important;
	margin-left: auto;
	display: block;
	width: 48% !important;
	margin: 12px 0px 16px auto;
}
@media(max-width:1100px){
.filtr-bigsel {
	padding: 0px 0px 0px 8px;
	margin: 0px 0px 0px 0px !important;
}
.filtr-bigres {
	width: 45% !important;
	margin: 0px auto 16px 34px;
}
}
@media(max-width:630px){
.filtr-bigsel {
	width: calc(100% - 16px) !important;
	padding: 0px 0px 0px 0px;
	margin: 0px 0px 0px 0px !important;
}
.filtr-bigsel select {
	padding-left: 4px !Important;
}
.filtr-bigres {
	width: calc(100% - 16px) !important;
	margin: 0px auto 18px 16px;
}
.nfr {
	height: auto !important;
}
}

.services-flex-list {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	position: relative;
}
.services-flex-item {
	width: 33.33333%;
	height: 360px;
	color: #fff;
	padding: 70px 30px 30px;
	position: relative;
	z-index: 1;
	transition: .4s linear;
}
.services-flex-list:hover .services-flex-item {
	width: 120px;
}
.services-flex-list:hover .services-flex-item:hover {
	width: calc(100% - 240px);
}
.max-ref {
	position: absolute;
	left: 0;
	top: 0;
	display: block;
	width: 100%;
	height: 100%;
}
.services-flex-item .max-ref {
	display: none;
}
.services-flex-list:hover .services-flex-item:hover .max-ref {
	display: block;
}
.purple-item {
	background: #523e79;
}
.teal-item {
	background: #00B7C9;
}
.gray-item {
	background: #C5B9AC;
}
.services-flex-ico {
	text-align: center;
	margin-bottom: 50px;
	position: absolute;
	top: 70px;
	left: 30px;
	width: 120px;
}
.services-flex-list:hover .services-flex-item .services-flex-ico {
	opacity: 0;
}
.services-flex-list:hover .services-flex-item:hover .services-flex-ico {
	position: absolute;
	top: 90px;
	right: 100px;
	transition: .4s;
	width: 180px;
	left: unset;
	opacity: 1;
}
.services-flex-ico img {
	transition: .4s;
	width: 100%;
}
.services-flex-zag {
	font-size: 24px;
	line-height: 26px;
	width: 190px;
	margin-bottom: 20px;
	transition: .4s;
	position: absolute;
	top: 224px;
	left: 30px;
}
.services-flex-list:hover .services-flex-item .services-flex-zag {
	transform: rotate(-90deg) translate(60px,-75px);
}
.services-flex-list:hover .services-flex-item:hover .services-flex-zag {
	position: absolute;
	top: 50%;
	left: 30px;
	font-size: 48px;
	line-height: 53px;
	transform: translate(0, -50%) rotate(0deg);
	width: 380px;
}
.services-flex-mor {
	position: relative;
	height: 14px;
	position: absolute;
	bottom: 30px;
	left: 30px;
}
.services-flex-list:hover .services-flex-item:hover .services-flex-mor {
	position: absolute;
	left: 30px;
	bottom: 30px;
}
.services-more-link {
	position: absolute;
	top: 0;
	left: 0;
	opacity: 0;
	pointer-events: none;
	transition: .4s;
	display: flex;
	align-items: center;
	justify-content: flex-start;
}
.services-more-link img {
	margin-left: 10px;
	margin-top: 3px;
}
.services-flex-list:hover .services-flex-item:hover .services-more-link {
	opacity: 1;
}
.services-flex-plus {
	width: 14px;
	height: 14px;
	position: absolute;
	top: 0;
	left: 0;
}
.services-flex-list:hover .services-flex-item:hover .services-flex-plus {
	opacity: 0;
}
.services-flex-plus-line {
	width: 14px;
	height: 2px;
	position: absolute;
	top: 6px;
	left: 0;
	background: #fff;
}
.services-flex-plus-line:nth-child(2) {
	transform: rotate(90deg);
}
.grow {
	position: absolute;
	z-index: 0;
	width: 100%;
	height: 100%;
}
.nopoint {
	pointer-events: none;
}
@media(max-width:1100px){
	.services-flex-item {
		width: 100% !important;
		height: auto;
		padding: 48px 16px 16px;
	}
	.services-flex-ico {
		position: relative !important;
		top: 0px !important;
		left: 0 !important;
		right: 0px !important;
		width: 90px !important;
		margin: 0 auto 32px;
		opacity: 1 !important;
	}
	.services-flex-zag {
		font-size: 18px !important;
		line-height: 20px !important;
		width: 160px !important;
		position: relative !important;
		top: 0 !important;
		left: 0 !important;
		transform: none !important;
		margin-bottom: 16px;
	}
	.services-flex-mor {
		position: relative !important;
		left: 0 !important;
		top: 0 !important;
	}
	.services-flex-plus {
		display: none;
	}
	.services-more-link {
		opacity: 1 !important;
	}
	.services-flex-item .max-ref {
		display: block;
	}
}

.small-flex-services-list .services-flex-item {
	width: 30px !important;
	padding: 0 !important;
	height: 180px;
	overflow: hidden;
}

.small-flex-services-list .services-flex-item.active {
	width: calc(100% - 60px) !important;
}

.small-flex-services-list .services-flex-item .services-flex-zag {
	position: absolute;
	top: 50%;
	left: 30px;
	font-size: 48px;
	line-height: 53px;
	transform: translate(0, -50%) !important;
	min-width: calc(50vw);
	width: calc(100% - 200px) !important;
	opacity: 0 !important;
}
.small-flex-services-list .services-flex-item .services-flex-ico,
.small-flex-services-list .services-flex-item .services-flex-zag,
.small-flex-services-list .services-flex-item .max-ref {
	pointer-events: none;
	opacity: 0;
}
.small-flex-services-list .services-flex-item.active .services-flex-ico,
.small-flex-services-list .services-flex-item.active .services-flex-zag,
.small-flex-services-list .services-flex-item.active .max-ref {
	pointer-events: all;
	opacity: 1 !important;
}
.small-flex-services-list .services-flex-ico {
	margin-bottom: 0;
	position: absolute;
	top: 30px !important;
	left: unset !important;
	right: 30px !important;
	width: 120px !important;
}

.small-flex-services-list {
	background: #fff;
	margin: 0 auto 50px auto;
	max-width: 1340px;
}
@media(max-width:1100px){	
	.small-flex-services-list {
		margin-bottom: 30px;
	}
	.small-flex-services-list .services-flex-item:not(.active) {
		display: none !important;
	}
	.small-flex-services-list .services-flex-item.active {
		width: 100% !important;
		height: 160px !important;
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		justify-content: flex-start;
	}
	.small-flex-services-list .services-flex-item.active .services-flex-ico {
		width: 64px !important;
		top: 0px !important;
		right: 0px !important;
		margin: 0 16px 0 auto !important;
		order: 1;
	}
	.small-flex-services-list .services-flex-item.active .services-flex-zag {
		margin: 0 0 0 16px !important;
		min-width: unset !important;
		transform: none !important;
		width: calc(100% - 100px) !important;
	}
}

.services-main-ico {
	width: 263px;
	float: left;
	margin: 0 30px 30px 0;
}

.services-block-list {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	width: calc(100% + 30px)
}
.services-block-item {
	width: calc(50% - 30px);
	background: #fff;
	margin: 0 30px 30px 0;
	padding: 36px 30px 40px;
	min-height: 155px;
	position: relative;
}
.services-block-item p {
	font-weight: 500;
	padding-bottom: 10px;
}
.services-block-item a {
	color: #00B7C9;
	text-decoration: none;
}

.services-block-item-big {
	width: calc(100% - 30px);
}
.services-block-item-big p {
	width: calc(100% - 235px);
}
.services-block-ico {
	position: absolute;
	top: 30px;
	right: 30px;
	max-width: 170px;
	max-height: 95px;
}

@media(max-width:660px){	
	.services-block-list {
		width: 100%;
	}
	.services-block-item {
		width: 100%;
		margin: 0 0 16px 0;
		min-height: unset;
		padding: 24px 16px 32px;
	}
	.services-main-ico {
		width: 100%;
	}
	.services-block-item-big {
		width: 100%;
	}
	.services-block-item-big p {
		width: calc(100% - 96px);
	}
	.services-block-ico {
		top: 24px;
		right: 16px;
		max-width: 80px;
		max-height: 45px;
	}
}
.anchor-menu .side-menu-item {
	padding-left: 30px;
}
.anchor-menu .side-menu-item::before {
	content: '';
	display: block;
	width: 8px;
	height: 8px;
	position: absolute;
	top: 7px;
	left: 0px;
	box-shadow: inset 0px 0px 0px 1px #C5B9AC;
	border-radius: 50%;
	transition: .2s;
}
.anchor-menu .side-menu-item.active::before {
	background: #C5B9AC;
}
.content-hr {
	margin: 40px 0;
	width: 100%;
	height: 1px;
	background: #C5B9AC;
	border: none;
}
.back-left {
	text-decoration: none;
	font-size: 18px;
	line-height: 20px;
}
.moved-left {
	position: sticky;
	top: 32px;
}
.mobile {
	display: none;
}
@media(max-width:1100px){	
	.mobile {
		display: block;
	}
	.content-hr {
		margin: 24px 0;
	}
	.nmob {
		display: none;
	}
	.content-right[style="overflow: visible;"] .content-left {
		display: block;
		width: 100%;
		height: auto !important;
	}
	.anchor-menu {
		margin-bottom: 24px;
	}
	.anchor-menu .side-menu-item {
		padding-left: 0px;
		margin-bottom: 8px;
	}
	.anchor-menu .side-menu-item::before {
		display: none;
	}
	.side-title {
		font-size: 18px;
		padding-bottom: 20px;
	}
}

.service-slider .manager-slider .owl-dots { width: 100%; top: 580px }
@media(max-width:1100px){	
	.manager-slider-item { display: flex; }
	.manager-slider-item .service-slider-info a:first-child { float: none; width: auto }
	.service-slider .manager-slider .owl-dots { top: auto; bottom: -40px; width: auto }
}


.justify-text {
	text-align: justify;
}



.filter-form-check-dummy {
	pointer-events: none;
}
.filter-form-check-dummy label::before {
	border-radius: 50%;
	background: #dadada !important;
}


.ffr-start {
	justify-content: flex-start;
}

.ffr-start .flex-form-input {
	margin-right: 28px;
}

.feedback-link {
	display: flex !important;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	padding: 15px 15px;
	width: calc(100% - 40px) !important;
	background: #523e79;
	color: #fff !important;
	border: none;
	position: absolute;
	right: 20px;
	bottom: 20px;
	z-index: 1;
	text-decoration: none;
	font-size: 18px;
	box-sizing: border-box;
}
.feedback-link i {
	display: inline-block;
	width: 30px;
	height: 30px;
	margin-right: 10px;
	background: url('/local/templates/softmajor/img/svg/mailwhite.svg') center center no-repeat;
	flex-shrink: 0;
}
.feedback-link-mobile {
	display: none !important;
	position: relative;
	left: 0;
	top: 0;
	width: 100% !important;
	margin-top: 20px;
}
@media (max-width: 600px) {
	.feedback-link {
		display: none !important;
	}
	.feedback-link-mobile {
		display: flex !important;
	}
}
.feedback-link {
	position: relative;
	left: auto;
        right: auto;
	bottom: auto;
	width: 100% !important;
	margin-top: 20px;
}
.leader-card-fone {
    position: relative;
    bottom: auto;
    left: auto;
    margin-top: 10px;
}
.team-list-feeback-link {
	position: relative;
	left: 0;
	top: 0;
	margin-top: 0px;
	width: 50px !important;
	height: 50px;
	padding: 0;
	border-radius: 50%;
	position: relative;
}
.team-list-feeback-link i {
	position: relative;
	left: 0;
	top: 0;
	margin-right: 0px;
	width: 40px;
	height: 40px;
	background-size: contain;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}
.ref {
    text-decoration: none;
    position: relative;
}

.ref span {
    position: absolute;
    top: 0.1em;
    left: 0.1em;
    font-weight: 800;
    font-size: 1.5em;
}

.popup-window .bx-calendar {
	font-family: "Montserrat";
}

/* cookie-files-banner */

.cookie-files-banner {
	position: fixed;
	top: auto;
	left: 0;
	right: 0;
	bottom: 20px;
	z-index: 99999;
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	max-width: 1340px;
	margin: 0 auto;
	padding: 20px 40px 20px 20px;
	background: #523e79;
	color: #ffffff;
	font-size: 18px;
	line-height: 1.2;
	transform: translateY(400px);
}
@media (max-width: 1024px) {
	.cookie-files-banner {
		font-size: 16px;
		transform: translateY(450px);
	}
}
@media (max-width: 768px) {
	.cookie-files-banner {
		font-size: 14px;
	}
}
@media (max-width: 600px) {
	.cookie-files-banner {
		flex-wrap: wrap;
		padding: 15px 35px 15px 15px;
		font-size: 13px;
	}
}
@media (max-width: 480px) {
	.cookie-files-banner {
		font-size: 12px;
	}
}

.cookie-files-banner.active {
	transform: translateY(0);
}
@media screen and (-webkit-min-device-pixel-ratio:0) {
	.cookie-files-banner.active {
		transform: translateY(0px);
	}
}

.cookie-files-close {
	position: absolute;
	top: 14px;
	right: 8px;
	width: 17px;
	height: 17px;
	cursor: pointer;
}

.cookie-files-close:before,
.cookie-files-close:after {
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	display: block;
	width: 13px;
	height: 2px;
	background: #ffffff;
	transition: all 0.3s ease 0s;
}

.cookie-files-close:before {transform: translate(-50%, -50%) rotateZ(45deg)}
.cookie-files-close:after {transform: translate(-50%, -50%) rotateZ(-45deg)}

.cookie-files-close:hover:before,
.cookie-files-close:hover:after {
	width: 17px;
}

.cookie-files-text {
	width: calc(100% - 164px);
	padding: 0 20px 0 0;
}
@media (max-width: 768px) {
	.cookie-files-text {
		width: calc(100% - 130px);
	}
}
@media (max-width: 600px) {
	.cookie-files-text {
		width: 100%;
		margin: 0 0 15px 0;
		padding: 0;
	}
}

.cookie-files-text a {
	color: #00b7c9;
}

.cookie-files-text a:hover {
	color: #db241c;
}

.cookie-files-accept {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 164px;
	height: 64px;
	background: #ffffff;
	color: #523e79;
	cursor: pointer;
	border: 2px solid #ffffff;
}
@media (max-width: 768px) {
	.cookie-files-accept {
		width: 130px;
		height: 55px;
	}
}
@media (max-width: 600px) {
	.cookie-files-accept {
		height: 30px;
		margin: 0 auto;
		transform: translateX(10px);
	}
}

.cookie-files-accept:hover {
	background: #523e79;
	border-color: #ffffff;
	color: #ffffff;
}

.head-fixed-container {
    	padding-top: 120px;
}

.head-fixed, .main-menu-fixed, .search-popup-fixed {
	position: fixed;
    	left: 0;
    	right: 0;
    	width: 100%;
}

.head-fixed {
    	top: 0;
}

.bx-core .head-fixed-container {
    	padding-top: 0;
}

.bx-core .head-fixed, .bx-core .main-menu-fixed, .bx-core .search-popup-fixed {
	position: sticky;
}

.main-menu-fixed, .search-popup-fixed {
    	top: 120px;
}

.search-popup-mw form {
    	display: flex;
    	align-items: center;
    	justify-content: space-between;
	background: #fff;
    	padding: 10px 20px;
	border: 1px solid #f0f0f0;
	margin: 0 20px;
}

.list-item_author {
	color: #6d7175;
    	margin-top: 15px;
}

.head .options {
	top: 7px;
	display: flex;
    	align-items: center;
}

.head .options a {
    	text-decoration: none;
}

.contact-us a {
	border: 2px solid #523e79;
    	color: #523e79;
    	display: flex;
    	align-items: center;
    	justify-content: center;
    	padding: 10px 0;
	width: 170px;
}

.contact-us a:hover {
    	text-decoration: underline;
}

/*Раскрытия*/
.disclosure-select {
	padding: 20px 10px 20px 20px;
	margin-bottom: 60px;
	background: #523e79;
	color: #fff;
	display: inline-flex;
	flex-wrap: nowrap;
	align-items: center;
	justify-content: flex-start;
	position: relative;
	z-index: 2;
}
.disclosure-select__title {
	/* width: 85px; */
	margin-right: 20px;
}
.disclosure-select__select {
	font-size: 48px;
	line-height: 120%;
}
.disclosure-select__now {
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	justify-content: flex-start;
	cursor: pointer;
}
.disclosure-select__now span {
	width: 108px;
}
.disclosure-select__arrow {
	width: 58px;
	height: 58px;
	position: relative;
	transition: .2s;
}
.disclosure-select__now.open .disclosure-select__arrow {
	transform: rotate(180deg);
}
.disclosure-select__arrow::before {
	content: '';
	display: block;
	width: 12px;
	height: 12px;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%) rotate(45deg);
	border-bottom: 2px solid #fff;
	border-right: 2px solid #fff;
	margin-top: -3px;
}
.disclosure-select__list {
	display: none;
	position: absolute;
	background: #523e79;
	top: 100%;
	right: 0;
	font-size: 80%;
	line-height: 100%;
	transition: none !important;
}
.disclosure-select__item {
	cursor: pointer;
	padding: 6px 90px 6px 16px;
	transition: .2s;
	border: 1px solid #523e79;
}
.disclosure-select__item:first-child {
	border-top: none;
}
.disclosure-select__item:hover {
	background: #fff;
	color: #523e79;
}
.disclosure-tab {
	margin-bottom: 64px;
	position: relative;
	z-index: 1;
}
.disclosure-tab__item {
	display: none;
}
.disclosure-tab__item.active {
	display: block;
}

.disclosure {
	width: 100%;
	margin-bottom: 120px;
}
.disclosure__row {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: flex-start;
	width: 100%;
	margin-top: 80px;
}
.disclosure__row--white {
	background: #fff;
	padding: 80px 0;
	box-shadow: 92px 0 0 0 #fff, -92px 0 0 0 #fff;
}
.disclosure__row:first-child {
	margin-top: 0;
}
.disclosure__title {
	width: 370px;
	font-family: 'Montserrat';
	font-weight: 600;
	font-size: 42px;
	line-height: 120%;
	color: #523e79;
}
.disclosure__content {
	width: calc(100% - 400px);
	margin-left: auto;
}
.disclosure__content p {
	padding: 0 0 20px;
}
.disclosure__content h6 {
	font-family: 'Montserrat';
	font-size: 24px;
	padding: 0 0 20px;
}
.disclosure__content img {
	max-width: 100%;
}
.disclosure__properties h6 {
	padding-bottom: 40px;
}
.disclosure__properties h6:last-child {
	padding-bottom: 0;
}
.oveflow-visible {
	overflow: visible;
}
.diagram-info {
	margin-bottom: 20px;
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: flex-start;
	font-size: 24px;
	line-height: 120%;
}
.diagram-info:last-child {
	margin-bottom: 0;
}
.diagram-info__color {
	display: block;
	width: 30px;
	height: 30px;
	position: relative;
}
.diagram-info__color::before {
	content: '';
	display: block;
	width: 10px;
	height: 10px;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	border-radius: 50%;
	background: #523e79;
}
.diagram-info:nth-child(2) .diagram-info__color::before {
	background: #00B7C9;
}
.diagram-info:nth-child(3) .diagram-info__color::before {
	background: #C5B9AC;
}
.diagram-info:nth-child(4) .diagram-info__color::before {
	background: #E92841;
}
.diagram-info:nth-child(5) .diagram-info__color::before {
	background: #79fd96;
}
.diagram-info:nth-child(6) .diagram-info__color::before {
	background: #414141;
}
.diagram-info:nth-child(7) .diagram-info__color::before {
	background: #faa12d;
}
.diagram-info:nth-child(8) .diagram-info__color::before {
	background: #ff38c3;
}
.diagram-info__value {
	width: 120px;
}
.diagram-info__separae {
	width: 30px;
	height: 30px;
	margin: 0 40px 0 20px;
	position: relative;
}
.diagram-info__separae::before {
	content: '';
	display: block;
	width: 16px;
	height: 1px;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	background: #111;
}
.diagram-info__title {
	width: 516px
}
.myCanvas {
	width: 312px;
	height: 312px;	
	transform: rotate(-90deg);
}

.disclosure__top-content {
	margin-bottom: 40px;
}
.disclosure__top-content:last-child {
	margin-bottom: 0;
}
.disclosure__top-title {
	font-size: 48px;
	line-height: 120%;
}
.disclosure__link {
	margin-top: 20px;
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	justify-content: space-between;
	text-decoration: none;
}
.disclosure__link-ico {
	max-width: calc(100% - 300px);
}
.disclosure__link-ico img {
	max-width: 100%;
}
.disclosure__link-text {
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	justify-content: flex-start;
	font-family: 'Montserrat';
	font-size: 24px;
	line-height: 120%;
	color: #00B7C9;
	transition: .2s;
}
.disclosure__link:hover .disclosure__link-text {
	color: #523e79;
}
.disclosure__link-text svg {
	margin-left: 10px;
}
.disclosure__link-text path {
	margin-left: 10px;
	transition: .2s;
}
.disclosure__link:hover .disclosure__link-text path {
	fill: #523e79;
}
.disclosure__content li {
	font-size: 24px;
	line-height: 120%;
	padding: 0;
}
.disclosure__content ul {
	padding: 0 0 20px 20px;
}
.disclosure__content ul li {
	list-style: disc;
}
.disclosure__content ul li::before {
	display: none;
}
input[name='organizationName'] {
	opacity: 0;
	font-size: 0;
	width: 0;
	height: 0;
	position: absolute;
}

.file_input {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	opacity: 0;
}
.file-info {
	width: 100%;
	min-height: 48px;
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	justify-content: flex-start;
	background: #fff;
	padding: 8px 0 8px 15px;
	color: #464545;
}
.file-name {
	color: #111;
	font-weight: 400;
	flex-shrink: 1;
}
.file-size {
	margin-left: 10px;
}
.file-close {
	width: 48px;
	height: 48px;
	margin-left: auto;
	position: relative;
	cursor: pointer;
	flex-shrink: 0;
}
.file-close::before,
.file-close::after {
	content: '';
	display: block;
	width: 16px;
	height: 2px;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%) rotate(45deg);
	background: #523e79;
}
.file-close::after {
	transform: translate(-50%, -50%) rotate(-45deg);
}
.file-error {
	color: red;
}
.file-row {
	display: none;
}
.file-row--start {
	display: block;
}
.file-row.filled,
.file-row.filled + .file-row{
	display: block;
}



@media (max-width: 630px) {
	.filter-news-form {
		height: auto !important;
	}
}
.filter-row {
	display: flex;
	margin: 16px 0 8px 24px;
}
@media (max-width: 630px) {
	.filter-row {
		display: flex;
		flex-wrap: wrap;
		margin: 12px 0 64px;
	}
}
@media (max-width: 630px) {
	.filter-row label {
		margin-bottom: 8px;
	}
}
.filter-row label:first-child {
	margin-right: 24px;
}
.longread-title-wrapper-text {
	background: none;
    	padding-top: 64px;
}
.longread-title-wrapper-text .longread-title {
	padding: 0;
}
.booklet-block {
	-moz-column-count: 2;
    	-webkit-column-count: 2;
    	column-count: 2;
	padding-bottom: 1.5em;
}
.booklet-item {
	display: inline-flex;
	margin: 1.5em 0;
    	font-weight: 500;
}
.booklet-num {
	color: #523e79;
    	flex: none;
    	height: 80px;
    	width: 80px;
    	display: flex;
    	align-items: center;
    	justify-content: center;
    	border: 4px solid #523e79;
    	border-radius: 50%;
    	font-size: 48px;
    	margin-right: 16px;
}
.booklet-text {
}
@media (max-width: 1100px) {
.booklet-block {
	-moz-column-count: 1;
    	-webkit-column-count: 1;
    	column-count: 1;
}
}
@media (max-width: 450px) {
.booklet-num {
    	font-size: 32px;
   	height: 64px;
    	width: 64px;
	border: 3px solid #523e79;
}
}
/* End */


/* Start:/local/templates/softmajor/resize.css?169106644930503*/
@media (max-width: 1250px) {
	.card-type-list.index-card-type { padding: 0 50px 100px 50px; }
}


@media (max-width: 1200px) {
	.longread-path-logo img{
		max-width: 440px;
	}

	.longread-path-block .path-left {
		top: 355px;
	}	

	.longread-path-block{
		padding-top: 190px;
	}

	.longread-path-block.last{
		padding-top: 80px;
	}

	.career-slider-left{
		padding: 0 60px 0 30px;
	}

	.career-slider-left_name,
	.career-slider-left_title{
		padding-left: 20px;
	}

	.career-slider-item{
		height: 540px;
	}
}

@media (max-width: 1175px) {
	.longread-path .longread-path-block:nth-child(even) .longread-path-name{
		width: 23vw;
	}
}

@media (max-width: 1169px) {
	.longread-path .longread-path-block:nth-child(even) .longread-path-name{
		width: 21vw;
	}
}

@media (max-width: 1100px) {
	.career-slider-wrapper .career-slider-item{
		max-height: 670px;
		height: 670px;
	}
}

@media (max-width: 1136px) {
	.longread-path .longread-path-block:nth-child(even) .longread-path-name{
		width: 19vw;
	}
}

@media (max-width: 1100px) {
	.head { padding-top: 60px; height: 140px }
	.head .options { top: 75px; right: 30px }
	.head .options .socnets { position: absolute; top: -50px; right: 0; width: 200px; text-align: right }
		
	.main-menu { right: 140px; top: 75px; font-size: 0; }
	.search { border-right: none; width: 36px; text-align: right }
		
}

@media (max-width: 1100px) {

	/*  */
	.longread-path .longread-path-block:nth-child(even) .longread-path-name{
		width: 250px;
	}

	.flex-form-input input, 
	.flex-form-input textarea, 
	.flex-form-input select, 
	.input.select select {
		font-size: 15px;
	}
	/*  */
	.head { padding: 40px 0 0 0; height: 120px }
	.head-fixed-container { padding-top: 0; }
	.head-fixed, .main-menu-fixed, .search-popup-fixed { position: relative; top: auto; }	
	.head-in { max-width: 650px; }
	.main-menu { display: none }
	.head .options { display: none }
	.slider-info { max-width: 650px; padding: 140px 20px 0 20px }
	.slider-title { font-size: 52px }
	.news-wrapper-in { max-width: 650px; }
	.footer-in { max-width: 650px; }  	
	.footer-menu { position: relative; top: 0; right: 0; margin: 50px 0 }	
	
	.mobile-menu_icon { position: absolute; width: 30px; height: 22px; top: 12px; right: 20px; cursor: pointer }
	.mobile-menu_icon i { position: absolute; top: 50%; left: 0; height: 2px; width: 100%; background: #4e2683; margin-top: -1px }
	.mobile-menu_icon:before { content: ''; position: absolute; top: 0; left: 0; height: 2px; width: 100%; background: #4e2683; transition: all .3s ease 0s;  }
	.mobile-menu_icon:after { content: ''; position: absolute; bottom: 0; left: 0; height: 2px; width: 100%; background: #4e2683; transition: all .3s ease 0s;  }

	.disabled .mobile-menu_icon i { display: none }
	.disabled .mobile-menu_icon:before { transform: rotate(45deg); top: 50%; }
	.disabled .mobile-menu_icon:after { transform: rotate(-45deg); top: 50%; }
	
	.path { max-width: 650px; }
	.page-title-in { max-width: 650px; height: 150px; padding-right: 250px }
	.page-title-in h1, .page-title-in .h1 { font-size: 48px; }
	.page-title-in a:before { font-size: 48px }
	.page-title-in .fbg { width: 250px; }
	.content-wrapper { max-width: 650px; }
	.content-left { display: none }
	.service-slider-text .description { font-size: 12px;
	/* display: none */ }
	
	.service-slider-illustration { width: auto; height: 400px; position: relative; margin-bottom: 21px }
	.service-slider-info { position: relative; width: auto; display: flex }
    .service-slider-info a:first-child { margin-bottom: 0; width: 104%; float: left; margin-right: 4% }
    .service-slider-photo { margin-bottom: 0px; height: 100% !important; background-position: center top }
    .service-slider-text { height: auto !important; max-width: 50%; min-width: 50% }
    .service-slider-info .service-slider-text a { height: auto; width: auto; margin: 0px; display: initial; width: 100%; }
	.service-slider-block { position: relative; height: auto; margin-bottom: 85px; }
    .service-slider .owl-dots { position: absolute; top: 720px; left: 0; z-index: 30; width: 100%; text-align: center }
	.other-service-slider .owl-stage-outer { height: auto !important }    
    .service-slider .owl-nav { position: absolute; top: 0; left: 0; z-index: 30; font-size: 0; width: 100% }
	.service-slider .owl-prev { left: 20px; top: 185px; margin-top: -13px }
	.service-slider .owl-next { left: auto; right: 20px; top: 185px; margin-top: -13px; }

	.service-slider-info .service-slider-photo {
		min-height: 310px !important;
	}
	
	.doc-list .news-item { width: auto; display: block; margin-right: 0 }
	
	.branches-one { width: 42%; }
	.branches-one:nth-child(5) { display: none; }	
	.branches-one:nth-child(3) { left: 52.5% }
	.branches-one:nth-child(9) { bottom: 0; left: 52.5% }
	.branches-one:nth-child(11) { display: none }
	
	.list-wrapper { display: block }
	.list-item, .tripple .list-item { width: 98%; margin-right: 0; }	
	
	.filter-form.wideform { height: auto }
	.filter-form.wideform input[type="text"] { width: 100%; padding-left: 20px; font-size: 18px; display: block; }
	.filter-form.wideform input[type="submit"] { position: relative; right: 0; top: 0; width: 100%; font-size: 18px; display: block; margin-top: 10px }	

	.input.select { display: block; border-left: none; margin: 5px 0 }
	.wideform .input.select { width: 100% }

	.journal-image { float: none; width: 100%; height: 400px; margin-bottom: 32px }
	.journal-info_options .date-block { margin-right: 20px }	
	
	.association-item { width: 48%; }	
	
	.career-slider-title { font-size: 31px; }	
	
	.page-title-in h1, .page-title-in .h1 { font-size: 30px }
	
	.page-title-wrapper { margin-bottom: 30px }	
	
	.contacts-table .grow-3 { width: 33.3%; }	 
	.contacts-table .grow-3:first-child { width: 33.3%; }
	.contacts-table .grow-3:last-child { width: 33.3%; }
	
	.appeal-item-title { font-size: 22px; }	
	
	.card-type-list { display: block;  }
	.card-type-item { padding: 20px; width: 100% }
	.card-type-image { width: 135px; height: 135px; flex: none }
	.card-type-info { padding-bottom: 40px; max-width: 60%;}		
	
	.longread-title { max-width: 690px; }

	.longread-wrapper-in { max-width: 690px; }
	.longread-quote-person { float: none; margin-right: 0 }
	.longread-quote-block.rgh .longread-quote-person { float: none; margin-left: 0 }
	.longread-quote-person { display: flex; align-items: center }
	.longread-quote-name { margin-left: 0; margin-left: 20px }	
	.longread-history { font-size: 36px; }
	.longread-history-wrapper {  }
	.longread-history-wrapper .longread-history { max-width: 650px; padding: 80px 20px 20px 20px }
	
	.longread-path { padding-bottom: 50px }
	
	
	.longread-path-block { display: flex; justify-content: center; min-height: 373px; padding-top: 180px; padding-bottom: 0px; }	
	.longread-path-block.toright { text-align: left; }
	.longread-path-block.last { min-height: 373px; padding-top: 52px; padding-bottom: 111px; }	

	.longread-path-block .path-small{
		top: 53%;
		height: 375px;
	}

	.longread-path-block .longread-path-name {
		width: 250px;
	}

	.longread-path-block .longread-path-logo { font-size: 30px; width: 250px; }
	.longread-path-logo img { width: 100% }
	.toright .longread-path-logo { text-align: right }
	
	/*  */.longread-path-block.toright:after { top: 275px; right: 50%; width: 8px; margin-right: 0; height: 391px; background: #4f2d7f }
	/*  */.longread-path-block.toleft:after { top: 290px; right: 50%; width: 8px; margin-right: 0; height: 390px; background: #4f2d7f }	
	.longread-path-name { font-size: 20px; width: 250px; }
	.toleft .longread-path-name { text-align: right; width: 250px } 
	.longread-path-name span { font-size: 30px; line-height: 1.1em }
	.longread-path-i { margin: 0 50px; width: 40px; height: 40px; top: 0; }
	
	.longread-path-i.type1:before { width: 308px; height: 366px; top: -190px; left: -133px; }
	.longread-path-i.type2:before { width: 370px; height: 371px; top: -165px; left: -165px; }
	.longread-path-i.type3:before { width: 370px; height: 371px; top: -165px; left: -165px; }
	.longread-path-i.type4:before { width: 430px; height: 430px; top: -195px; left: -195px; }
	.longread-path-i.type5:before { width: 430px; height: 430px; top: -195px; left: -195px; }
	
	.longread-logo-list img { width: 50px }
	.longread-path-block.last { padding-top: 165px }
	
	.motto-wrapper { min-height: 450px; padding: 0; }
	.motto-wrapper-in { max-width: 690px; padding: 115px 20px 0 20px; margin: 0 auto }
	.motto-wrapper-title { font-size: 14px; padding-bottom: 30px; color: #fff; position: relative; z-index: 1 }
	.motto-wrapper-name { color: #fff; font-size: 60px; line-height: 1.1em; position: relative; z-index: 1 }
	.motto-wrapper:after { content: ''; background: #53129c; position: absolute; width: 100%; height: 100%; top: 0; left: 0; opacity: .6 }
	.motto-wrapper:before { top: 70px; right: -20px; }

	.longread-slider-item-in { max-width: 690px; margin: 0 auto; padding: 90px 20px 0 20px; } 
	.longread-slider-item-title { font-size: 22px; padding-bottom: 38px }
	.longread-slider-item-name { font-size: 42px; width: 80%; line-height: 1.2em; padding-bottom: 40px }
	.longread-slider-item-link { font-size: 16px; }
	.longread-slider { /*height: 520px*/ height: 61.25vw; }
	.longread-slider-item { /*height: 520px*/ height: 61.25vw; }
	.card-type-list.index-card-type { max-width: 650px; margin: 0 auto }
	.career-slider-wrapper { display: block; }
	.career-slider-wrapper .career-slider { width: auto; }
	.career-slider-left { width: auto; padding: 0 }
	.career-slider-left > div { padding: 50px 20px; max-width: 650px; margin: 0 auto; width: auto }
	.career-slider-left_name { font-size: 38px; }
	
	.clients-list-one { width: 32.4%; margin-bottom: 36px; margin-right: .9% }	
	
	.noslider { display: block; margin-bottom: -50px }
	.noslider .news-slider-item { width: auto; margin: 0 auto 5% auto; max-width: 350px }
	.noslider .news-slider-item:nth-child(3n) { margin-right: auto }
	
	.disclosure {
		margin-bottom: 64px;
	}
	.disclosure__title {
		width: 100%;
		margin-bottom: 20px;
	}
	.disclosure__content {
		width: 100%;
	}
	.myCanvas {
		display: block;
		margin: 0 auto;
	}
	.diagram-info__title {
		width: calc(100% - 200px);
	}
	.diagram-info__separae {
		margin: 0 10px 0 10px;
	}
	.disclosure__row {
		margin-top: 48px;
	}
	.disclosure__row--white {
		padding: 40px 0;
		box-shadow: 250px 0 0 0 #fff, -250px 0 0 0 #fff;
	}
	.disclosure__top-title {
		font-size: 42px;
	}

}

@media (max-width: 992px) {
	.career-slider-wrapper .career-slider-item{
		max-height: 570px;
		height: 570px;
	}
}

@media (max-width: 780px) {  
	.index-card-type .card-type-title {
		font-size: 14px;
	}
    .main-news .news-slider-item .news-slider-popup {
        opacity: 1;
    }
    .main-news .news-slider-item:before {
        background: rgba(0,0,0,.3);
    }
    .main-news .news-slider-item .news-slider-date {
        color: #fff;
    }
    .main-news .news-slider-item .news-slider-link {
        color: #fff;
    }
}

@media (max-width: 720px) {
	.career-slider-wrapper .career-slider-item,
	.career-slider-item{
		max-height: 470px;
		height: 470px;
	}
}

@media (max-width: 700px) {  
	.longread-path .longread-path-block{
		display: flex;
		justify-content: center;
	}

	.longread-path-block .path-small {
		top: 52%;
    height: 86%;
  }	
	
	.longread-path-block { min-height: 300px; padding-top: 120px; padding-bottom: 0; text-align: center; }		
	.longread-path-block.toright { text-align: center; min-height: 300px; }
	.longread-path-block.last { min-height: 300px; padding-top: 120px; padding-bottom: 111px; }	
	
	.longread-path-logo { font-size: 18px; width: 105px; line-height: 1.1em;  }
	.longread-path-logo img { width: 100% }
	.toright .longread-path-logo { text-align: right; font-size: 16px; }
	
	.longread-path-block.toright:after { top: 178px; right: 50%; width: 5px; margin-right: -3px; height: 270px; background: #4f2d7f }
	.longread-path-block.toleft:after { top: 186px; right: 50%; width: 5px; margin-right: -3px; height: 265px; background: #4f2d7f }	
	.longread-path-block:nth-child(3n):after { height: 250px; top: 188px }
	.longread-path-block:nth-child(4n):after { height: 258px; top: 175px }
	
	.longread-path-name { font-size: 12px; width: 105px; line-height: 1.1em;  }
	
	.toleft .longread-path-name { text-align: right; /* width: 105px */ } 
	.longread-path-name span { font-size: 18px; line-height: 1.1em }
	.longread-path-name span.cyber { font-size: 16px }
	.longread-path-i { margin: 0 15px; width: 30px; height: 30px; top: 0; }
	.longread-path-i:after { width: 30px; height: 30px; background-size: cover }
	
	.longread-path-i.type1:before { width: 250px; height: 300px; top: -156px; left: -111px; background-size: contain }
	.longread-path-i.type2:before { width: 250px; height: 300px; top: -134px; left: -111px; background-size: contain }
	.longread-path-i.type3:before { width: 250px; height: 300px; top: -134px; left: -111px; background-size: contain }
	.longread-path-i.type4:before { width: 250px; height: 300px; top: -134px; left: -111px; background-size: contain }
	.longread-path-i.type5:before { width: 250px; height: 300px; top: -134px; left: -111px; background-size: contain }
	
	.longread-logo-list img { width: 23px; margin-right: 3px }	
	
}


@media (max-width: 630px) {
	.head { padding: 17px 0 0 0; height: 70px }	
	.head .logo { width: 126px; height: 35px; }
	.mobile-menu_icon { top: 8px }	
	.slider { margin-bottom: 35px; height: 480px; }	
	.slider-item { height: 480px; background-position: 90%}
	.slider-info { padding: 50px 20px 0 20px }
	.slider-title { font-size: 34px }
	.slider-text { font-size: 16px }
	.slider-button { font-size: 12px; width: 140px; }
	.page-title-in h1, .page-title-in .h1 { font-size: 22px }
	.page-title-in a:before { font-size: 22px }
	.page-title { font-size: 18px; padding-bottom: 30px; }
	
	.news-wrapper { margin: 0 auto 30px auto; padding: 0 20px }
	.news-slider-image { height: 190px; }
	.news-slider-info { min-height: 100px }
	#news_slider .owl-nav  { display: none }
	.news-slider .owl-prev { left: -10px; }
	.news-slider .owl-next { right: -10px; }
	
	.news-wrapper.wbg { padding: 30px 20px 50px 20px; }
	
	.news-slider-type { padding: 19px 20px; font-size: 14px; }
	.news-slider-date { padding: 19px 20px 17px 20px; font-size: 14px; }	
	.news-slider-link { font-size: 18px; padding: 0 20px; }

	.alink { font-size: 14px }
	
	.footer-socnets { margin-bottom: 0 }
	.footer-socnets span { font-size: 20px; display: block; margin-bottom: 20px; font-weight: normal }
	.footer-socnets a { margin: 0 20px 0 0 }
	
	.footer-menu { margin: 20px 0 }	
	.footer-in { padding: 50px 20px 50px 20px; }
	
	.mobile-menu { top: 70px }	
	.mobile-menu_in { padding: 25px 0 20px 20px; } 
	.mobile-menu_item { font-size: 24px;  padding: 10px 0 15px 40px; }
	.mobile-search-in { height: 70px; }
	.mobile-search input[type=text] { height: 70px; font-size: 14px }
	
	.mobile-menu_footer { margin: 10px 20px 0 20px; }
	.mobile-menu_lang a, .mobile-menu_lang span { font-size: 14px; padding-right: 20px }
	.mobile-socnets { top: -15px; }
	
	.mobile-submenu { padding: 5px 20px 10px 40px; }
	.mobile-submenu_item { padding: 0 0 15px 0; font-size: 14px;}	
	
	.branches-info-slider_item { padding: 0 40px 0 40px; }	
	
	.filter-form { height: 110px }
	.filter-form input[type="text"] { width: 96%; border: none; padding: 0 0 0 10px; font-size: 14px }
	.filter-form.wideform input[type="text"] { font-size: 14px }
	.filter-form input[type="submit"] { right: 2%; top: auto; bottom: 6px; width: 96%; }
	.filter-form-i { left: auto; right: 4%; top: 22px; margin-left: 0; margin-top: 0 }	
	
	
	.list-item { font-size: 14px; padding: 20px; }
	.list-item_date { margin-bottom: 10px }
	.list-item_link { font-size: 18px; }
	
	.pagination { font-size: 14px; }
	.pagination a { display: inline-block; vertical-align: middle; height: 35px; min-width: 35px; border: 2px solid transparent; border-radius: 50%; line-height: 35px; text-align: center; color: #737373; text-decoration: none }
	.pagination a.sel { border-color: #00b6c9 }

	.pagination .next { font-size: 14px; position: relative; display: block; text-align: left; padding-left: 15px; }	
	
	.site-search-footer { padding: 50px 0 50px 0; }
	.site-search-footer-in { padding: 0 20px }	
	.site-search-title { font-size: 18px; padding-bottom: 30px; }
	.site-search-footer input[type="text"] { font-size: 18px; height: 50px; padding: 0 20px; margin-bottom: 15px }
	.site-search-footer input[type="submit"] { font-size: 18px; background: #4e2683; height: 50px; position: relative; right: 0; bottom: 0; width: 100%; }
	
	.content-error { font-size: 16px }
	
	.page-navigation_link { font-size: 0; }
	.page-navigation { padding: 50px 0 60px 0; }
	
	.page-navigation_title { font-size: 10px; padding-bottom: 25px;  }
	.tolist .page-navigation_link { font-size: 13px }
	
	.page-navigation .prev .page-navigation_link a { position: relative; top: -6px; left: 22px }
	.page-navigation .prev .page-navigation_link a:before { content:'←'; font-size: 24px; font-family: 'GT-Walsheim-Pro-Light';  }
	
	.page-navigation .next .page-navigation_link a { position: relative; top: -6px; right: 22px }
	.page-navigation .next .page-navigation_link a:before { content:'→'; font-size: 24px; font-family: 'GT-Walsheim-Pro-Light';  }
	
	.table th { padding: .6em 10px .6em 10px; }	
	.table td { padding: .6em 10px; }	
	
	
	.personal-list-item { padding: 20px 0; display: block }
	.personal-list-image { float: left; width: 100px; height: 110px; }
	.personal-list-info { margin-right: 0; overflow: hidden; width: auto }
	.personal-list-name { font-size: 22px; }	
	.personal-list-descr { font-size: 15px; padding-bottom: 20px }
	.personal-list-fone { width: 100%; clear: both; padding-left: 130px }
	
	.flex-form-row { display: block; padding-bottom: 0; }	
	.flex-form .grow-1, .flex-form .grow-2, .flex-form .grow-3 { width: 100% }	
	.flex-form-input { padding-bottom: 20px }
	.flex-form-row.options div { margin-right: 0; padding-bottom: 20px }
	.flex-form-submit { width: 100% }
	.flex-form h2 { font-size: 24px }
		
	.contacts-table-row { display: block; padding-top: 10px }	
	.contacts-table-item { width: 100% !important; padding: 0 0 15px 0; }	 
	
	.footer-links { display: block; }
	.footer-links a { display: block; margin-bottom: 20px }
	
	.appeal-wrapper { display: block } 
	.appeal-item { margin-bottom: 40px; text-align: center; border-bottom: none; padding-bottom: 0; opacity: 1 !important; cursor: auto !important }
	.appeal-item-image { margin: 0 auto 20px auto }
	.appeal-text { display: none }
	.appeal-item-text { display: block }
	
	.leader-card { display: block; padding-bottom: 20px; margin-bottom: 25px; }
	.leader-card-image { margin: 0 auto 40px auto;  }
	.leader-card-name { font-size: 22px; padding-bottom: 30px; text-align: center; }	
	.leader-card-text { text-align: center }
	.leader-card-fone { position: relative; bottom: 0; text-align: center  }	
	
	.culture-slider-item { height: 440px; }	
	.culture-slider-name { font-size: 28px; padding: 30px 20px; }
	
	.vacance-list-item { padding: 20px 0 30px 0; display: block; }
	.vacance-list-title { padding-right: 0; font-size: 20px; width: auto; padding-bottom: 20px }		
	.vacance-list-link { padding-bottom: 10px; }	
	
	.flex-form-add { padding-bottom: 40px }
	.flex-form-add span:first-child { display: block; padding-bottom: 20px }
	.flex-form-checkbox-input { display: block; padding-bottom: 20px }
	
	.flex-form-checkbox { padding: 20px 0 0 0 }
	
	.journal-selected .date-block { width: auto; }
	
	.longread-quote-block { padding-bottom: 50px }
	.longread-quote-text { font-size: 18px; padding: 23px 20px; }
	.longread-quote-name { font-size: 16px; }
	.longread-quote-name span { font-size: 18px; }
	.longread-quote-foto { width: 110px; height: 110px; flex: none }
	.longread-history { font-size: 26px }
	.longread-history-title { font-size: 16px; margin-bottom: 10px }
	
	
	.motto-wrapper { min-height: auto; }
	.motto-wrapper-in { padding: 50px 20px 50px 20px; }
	.motto-wrapper-title { padding-bottom: 20px }
	.motto-wrapper-name { font-size: 32px }
	.motto-wrapper:before { height: 180px; width: 180px; right: -20px; top: 20px; background-size: contain }
	.longread-slider-item{background-size: cover;}
	.longread-slider-item-in { /*padding-top: 50px*/ padding-top: 20px }
	.longread-slider .owl-dots {bottom: 20px;}
	.longread-slider-item-title { font-size: 14px; padding-bottom: 10px }
	.longread-slider-item-name { font-size: 20px; line-height: normal; width: 100%; padding-bottom: 10px; }
	.longread-slider-item-link {width: auto;}
	.longread-slider-item-link a {padding: 5px 10px;}
	.longread-history-wrapper .longread-history { padding-top: 40px }
	.index-card-type .card-type-item { width: 250px }
	.card-type-list.index-card-type { padding-bottom: 50px }
	.card-type-list .card-type-image { width: 108px; height: 108px; background-size: cover }
	.career-slider-left_title { font-size: 16px; padding-bottom: 20px }
	.career-slider-left_name { font-size: 24px }
	.longread-slider-item-link { font-size: 14px; width: 140px }

	.captcha{
		margin-top: 15px;
	}

	.filter-form .w13{
		/*width: 53% !important;*/
	}
	
	.filter-form .w25{
		width: 45% !important;
	}
    
    
    .other-service-slider {
        height: auto;
    }
    .other-service-slider .owl-item {
        height: auto;
    }
    .other-service-slider .owl-dots { margin-top: 10px; }
	
	.noslider { margin-bottom: 0; padding-bottom: 10px }

	.disclosure__link {
		flex-wrap: wrap;
	}
	.disclosure__link-ico {
		max-width: 100%;
		width: 100%;
		margin-bottom: 10px;
	}

	.disclosure-select {
		padding: 5px 0px 5px 10px;
	}
	.disclosure-select__select {
		font-size: 40px;
		line-height: 120%;
	}
	.disclosure-select__arrow {
		width: 48px;
		height: 48px;
	}
	.disclosure__properties h6 {
		padding-bottom: 24px;
	}
	.myCanvas {
		max-width: calc(100vw - 40px);
		max-height: calc(100vw - 40px);
	}
	.disclosure-select__item {
		padding: 3px 85px 3px 8px;
	}
	.disclosure__row--white {
		padding: 32px 0;
		box-shadow: 20px 0 0 0 #fff, -20px 0 0 0 #fff;
	}
	.disclosure__title {
		font-size: 32px;
	}
	.disclosure__content h6 {
		font-size: 16px;
	}
	.diagram-info {
		font-size: 16px;
		margin-bottom: 16px;
	}
	.diagram-info__color {
		width: 20px;
		height: 20px;
	}
	.diagram-info__color::before {
		width: 6px;
		height: 6px;
	}
	.diagram-info__value {
		width: calc(100% - 20px);
	}
	.diagram-info__separae {
		display: none;
	}
	.diagram-info__title {
		width: 100%;
		margin-top: 6px;
	}
	.disclosure__top-title {
		font-size: 22px;
	}
	.disclosure__link-text {
		font-size: 14px;
	}
	.disclosure__content li {
		font-size: 16px;
	}
	.disclosure {
		margin-bottom: 32px;
	}
	.disclosure__row {
		margin-top: 24px;
	}
}

@media (max-width: 600px) {
	.career-slider-wrapper .career-slider-item,
	.career-slider-item{
		max-height: 370px;
		height: 370px;
	}

}

@media (max-width: 550px) {
	.clients-list-one { width: 49.1%; margin-bottom: 36px; margin-right: .9% }

	.footer-socnets a {
		width: 40px;
		height: 40px;
	}

}

@media (max-width: 500px) {
	.index-card-type .card-type-title {
		font-size: 11px;
	}
}

@media (max-width: 450px) {

	.flex-form-input input, 
	.flex-form-input textarea, 
	.flex-form-input select, 
	.input.select select {
		font-size: 12px;
	}

	.footer-socnets a {
		width: 30px;
		height: 30px;
	}
	
	h1 { font-size: 22px; }	
	h2 { font-size: 20px; }	
	h3 { font-size: 18px; }	
	h4 { font-size: 16px; }	
	h6 { font-size: 14px; }
	
	blockquote { font-size: 16px }
	
	.content-right h5 { font-size: 15px }
	
	.mobile-socnets { position: relative; top: 0; margin-top: 20px }
	.mobile-socnets a { margin-left: 0; margin-right: 15px }
	
	.path { font-size: 14px }
	
	.content-wrapper { padding: 0 20px 20px 20px; }
	
	.content-right { font-size: 14px }	
	
	.page-title-in { min-height: auto; height: 100px; padding-right: 0 }
	.page-title-in .fbg, .page-title-in .nbg { display: none }
	
	.service-slider-illustration { height: 280px; margin-bottom: 16px }
	.service-slider-illustration_title { font-size: 18px }
	
	.service-slider-photo { height: 150px; }
	.service-slider-text { height: 150px; padding: 10px 15px }
	.service-slider-text h3 { line-height: 1.3em; font-size: 14px; padding-bottom: 10px;}
	.service-slider-text .detail { font-size: 10px; padding: 5px 0 0 0; }
	
	.service-slider-block { position: relative; height: auto; margin-bottom: 55px; }
	.service-slider .owl-dots { top: 470px; }
	
	.service-slider .owl-prev { left: 15px; top: 110px; }
	.service-slider .owl-next { right: 15px; top: 110px; }
	
	.news-item_title { font-size: 14px }
	.news-list-alink { font-size: 14px }
	
	.news-item_image { margin-right: 10px }
	.news-item_image .ext { width: 30px; height: 30px; font-size: 11px }
	
	#branchesSlider { position: absolute; left: -99999px }
	#branchesSliderMobile { position: relative; left: 0 }
	
	.branches-info { font-size: 11px; margin-top: 140px; padding: 10px 5% 10px 5%; }
	.branches-info .close { width: 15px; height: 15px; top: 12px; right: 20px; }	
	.branches-info h3 { font-size: 12px; }
	.branches-info blockquote { font-size: 14px }
	
	.branches-slider .owl-prev { left: 10px; }
	.branches-slider .owl-next { right: 10px; }
	
	.branches-info-slider_item { padding: 0 15px 0 0px; }
	.branches-info-slider_item blockquote { margin-bottom: 0 }
	.branches-info-slider_item small { padding-left: 30px }

	.branches-info .owl-prev { top: -15px; margin-top: 0; margin-left: -10px }
	.branches-info .owl-next { top: -15px; margin-top: 0; margin-left: 0; margin-right: -10px }

	.journal-info_options { padding-bottom: 0 }
	
	.spoiler-title { font-size: 16px; padding: 20px 50px 20px 30px; }
	
	.socnets-inpage.inj { float: none; width: auto; margin-bottom: 20px }
	.inj .socnets-inpage-in { width: auto; text-align: left; float: none }
	.inj .socnets-inpage-in a { margin-left: 0; margin-right: 12px }
	
	.date-block_title { font-size: 10px; }
	.journal-info_options .date-block { font-size: 15px }
	
	.association-list {  }  
	.association-item { width: 48%; padding: 20px;  }
	.association-image { height: 130px; background-repeat: no-repeat; background-position: 50% 50%; margin-bottom: 20px; background-size: contain }
	.association-link { min-height: 0; display: block;  }	
	
	.association-item:last-child { /* display: block; */ }
	.association-item:last-child .association-image { /* width: auto; */ background-position: 50% 50%; margin: 0 0 20px 0; height: 100px; background-size: contain }
	.association-item:last-child .association-link { /* width: auto; */ }

	.association-link a:after { top: 0 }
	
	.career-slider { margin-bottom: 50px }		
	
	.career-slider-item { height: auto; min-height: 200px;  }
	.career-slider-info { width: 45%; margin-right: 5%; padding: 20px 0 0 0 }
	.career-slider-title { font-size: 14px; margin-bottom: 40px }
	
	.career-slider-opt { padding: 0 0 20px 50px; font-size: 10px; line-height: 1.2em; min-height: 40px }
	.career-slider-opt i { width: 40px; height: 40px; background-size: 60% 60% }
	.career-slider-opt i:before { width: 32px; height: 32px; border: 2px solid #fff; top: 2px; left: 2px; }
	
	.career-slider .owl-dot { top: -30px }
	
	.career-slider .owl-prev { left: 5px; margin-top: -26px }
	.career-slider .owl-next { right: 5px; margin-top: -26px }
	
	.infoblock-list-link { width: 30%; padding-right: 20px }

	.filter-form-check { width: 45%; margin: 0 0 10px 0 }
	
	.personal-list-name { font-size: 16px; }	
	.personal-list-image { margin-right: 15px }
	.personal-list-fone { padding-left: 115px }
	.personal-list-descr { font-size: 12px } 	
	
	.appeal-item-title { font-size: 18px } 
	
	.leader-card-image { margin: 0 auto 20px auto;  }
	.leader-card-name { padding-bottom: 15px; }		
	
	.culture-slider-item { height: 300px; }	
	.culture-slider-name { font-size: 18px; padding: 20px }
	
	.vacance-list-item { padding: 20px 0 10px 0; }
	.vacance-list-title { padding-bottom: 15px; font-size: 18px }				
	
	.card-type-item { padding: 20px; width: 100% }
	.card-type-image { width: 108px; height: 108px; background-size: cover }
	
	.longread-title { font-size: 18px }
	.career-slider-wrapper .career-slider-item { height: 400px }
	.career-slider-wrapper .career-slider-info { width: 50% }
	.career-slider-wrapper .career-slider-opt { font-size: 14px }
	
	.clients-list-one { width: 100%; margin-bottom: 25px; margin-right: 0 }
	.clients-list-name { font-size: 16px }
	
}

@media (max-width: 475px){
	.card-type-info {
    width: 140px;
		margin-right: 20%;
	}

	.card-type-item {
		justify-content: flex-start;
	}

	.index-card-type .card-type-title {
    font-size: 11px;
	}

	.card-type-list .card-type-image {
    width: 78px;
		height: 78px;
	}	

	.card-type-list.index-card-type {
    padding: 0 35px 100px 35px;
	}

	.career-slider-wrapper .career-slider-item{
		max-height: 300px;
		/* height: 300px; */
	}

	.service-slider-text .description { font-size: 10px;}
}


@media (max-width: 375px){
	.card-type-info {
    width: 140px;
		margin-right: 10%;
	}

	.flex-form-input input, 
	.flex-form-input textarea, 
	.flex-form-input select, 
	.input.select select {
		font-size: 11px;
	}

	.index-card-type .card-type-title {
    font-size: 10px;
	}

	
}

@media (max-width: 375px){
	.career-slider-wrapper .career-slider-item{
		max-height: 230px;
	}
}

@media (max-width: 1024px) {
	.slider, .slider-item {
		height: 45vw;
	}

	.slider-info {
    	padding: 0;
		max-width: 100%;
	}

	.slider-info > a {
		padding-top: 80px;
	}
}

@media (max-width: 992px) {
	.slider-text {
		font-size: 26px;
		margin-bottom: 30px;
	}

	.slider-title {
    	font-size: 42px;
		margin-bottom: 20px;
	}
}

@media (max-width: 780px) {
	.slider-text {
		font-size: 16px;
		margin-bottom: 20px;
	}

	.slider-title {
    	font-size: 32px;
		margin-bottom: 10px;
	}
}

@media (max-width: 630px) {
	.slider-info > a {
		padding-top: 40px;
	}
}

@media (max-width: 500px) { 
	.slider-info > a {
		padding-top: 20px;
	}
}

@media (max-width: 475px) {  
	.slider-text {
		font-size: 10px;
		margin-bottom: 10px;
	}

	.slider-title {
    	font-size: 26px;
		margin-bottom: 5px;
	}

	.slider-button {
    	font-size: 9px;
    	width: 80px;
		padding: 8px 0;
	}
}

@media (max-width: 1100px) {
	.event-item {
		width: 100%;
	}
	.event-item-img {
		height: calc(100vw / 1.88);
		background-position: left top;
		background-color: #fff;
		background-size: contain;
	}
}
@media (max-width: 652px) {
	.event-item-img {
		height: calc(100vw / 1.58);
	}
	.service-slider-info .service-slider-photo {
		min-height: 40vw !important;
	}
}
/* End */


/* Start:/local/templates/softmajor/assets/fancybox/jquery.fancybox.css?15627325644949*/
/*! fancyBox v2.1.5 fancyapps.com | fancyapps.com/fancybox/#license */
.fancybox-wrap, .fancybox-wrap * { transition: none }
.fancybox-wrap,
.fancybox-skin,
.fancybox-outer,
.fancybox-inner,
.fancybox-image,
.fancybox-wrap iframe,
.fancybox-wrap object,
.fancybox-nav,
.fancybox-nav span,
.fancybox-tmp
{
	padding: 0;
	margin: 0;
	border: 0;
	outline: none;
	vertical-align: top;
}

.fancybox-wrap {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 8020;
}

.fancybox-skin {
	position: relative;
	background: #f9f9f9;
	color: #444;
	text-shadow: none;
	-webkit-border-radius: 4px;
	   -moz-border-radius: 4px;
	        border-radius: 4px;
}

.fancybox-opened {
	z-index: 8030;
}

.fancybox-opened .fancybox-skin {
	-webkit-box-shadow: 0 10px 25px rgba(0, 0, 0, 0.5);
	   -moz-box-shadow: 0 10px 25px rgba(0, 0, 0, 0.5);
	        box-shadow: 0 10px 25px rgba(0, 0, 0, 0.5);
}

.fancybox-outer, .fancybox-inner {
	position: relative;
}

.fancybox-inner {
	overflow: hidden;
}

.fancybox-type-iframe .fancybox-inner {
	-webkit-overflow-scrolling: touch;
}

.fancybox-error {
	color: #444;
	font: 14px/20px "Helvetica Neue",Helvetica,Arial,sans-serif;
	margin: 0;
	padding: 15px;
	white-space: nowrap;
}

.fancybox-image, .fancybox-iframe {
	display: block;
	width: 100%;
	height: 100%;
}

.fancybox-image {
	max-width: 100%;
	max-height: 100%;
}

#fancybox-loading, .fancybox-close, .fancybox-prev span, .fancybox-next span {
	background-image: url('/local/templates/softmajor/assets/fancybox/fancybox_sprite.png');
}

#fancybox-loading {
	position: fixed;
	top: 50%;
	left: 50%;
	margin-top: -22px;
	margin-left: -22px;
	background-position: 0 -108px;
	opacity: 0.8;
	cursor: pointer;
	z-index: 8060;
}

#fancybox-loading div {
	width: 44px;
	height: 44px;
	background: url('/local/templates/softmajor/assets/fancybox/fancybox_loading.gif') center center no-repeat;
}

.fancybox-close {
	position: absolute;
	top: -18px;
	right: -18px;
	width: 36px;
	height: 36px;
	cursor: pointer;
	z-index: 8040;
}

.fancybox-nav {
	position: absolute;
	top: 0;
	width: 40%;
	height: 100%;
	cursor: pointer;
	text-decoration: none;
	background: transparent url('/local/templates/softmajor/assets/fancybox/blank.gif'); /* helps IE */
	-webkit-tap-highlight-color: rgba(0,0,0,0);
	z-index: 8040;
}

.fancybox-prev {
	left: 0;
}

.fancybox-next {
	right: 0;
}

.fancybox-nav span {
	position: absolute;
	top: 50%;
	width: 36px;
	height: 34px;
	margin-top: -18px;
	cursor: pointer;
	z-index: 8040;
	visibility: hidden;
}

.fancybox-prev span {
	left: 10px;
	background-position: 0 -36px;
}

.fancybox-next span {
	right: 10px;
	background-position: 0 -72px;
}

.fancybox-nav:hover span {
	visibility: visible;
}

.fancybox-tmp {
	position: absolute;
	top: -99999px;
	left: -99999px;
	visibility: hidden;
	max-width: 99999px;
	max-height: 99999px;
	overflow: visible !important;
}

/* Overlay helper */

.fancybox-lock {
    overflow: hidden !important;
    width: auto;
}

.fancybox-lock body {
    overflow: hidden !important;
}

.fancybox-lock-test {
    overflow-y: hidden !important;
}

.fancybox-overlay {
	position: absolute;
	top: 0;
	left: 0;
	overflow: hidden;
	display: none;
	z-index: 8010;
	background: url('/local/templates/softmajor/assets/fancybox/fancybox_overlay.png');
}

.fancybox-overlay-fixed {
	position: fixed;
	bottom: 0;
	right: 0;
}

.fancybox-lock .fancybox-overlay {
	overflow: auto;
	overflow-y: scroll;
}

/* Title helper */

.fancybox-title {
	visibility: hidden;
	font: normal 13px/20px "Helvetica Neue",Helvetica,Arial,sans-serif;
	position: relative;
	text-shadow: none;
	z-index: 8050;
}

.fancybox-opened .fancybox-title {
	visibility: visible;
}

.fancybox-title-float-wrap {
	position: absolute;
	bottom: 0;
	right: 50%;
	margin-bottom: -35px;
	z-index: 8050;
	text-align: center;
}

.fancybox-title-float-wrap .child {
	display: inline-block;
	margin-right: -100%;
	padding: 2px 20px;
	background: transparent; /* Fallback for web browsers that doesn't support RGBa */
	background: rgba(0, 0, 0, 0.8);
	-webkit-border-radius: 15px;
	   -moz-border-radius: 15px;
	        border-radius: 15px;
	text-shadow: 0 1px 2px #222;
	color: #FFF;
	font-weight: bold;
	line-height: 24px;
	white-space: nowrap;
}

.fancybox-title-outside-wrap {
	position: relative;
	margin-top: 10px;
	color: #fff;
}

.fancybox-title-inside-wrap {
	padding-top: 10px;
}

.fancybox-title-over-wrap {
	position: absolute;
	bottom: 0;
	left: 0;
	color: #fff;
	padding: 10px;
	background: #000;
	background: rgba(0, 0, 0, .8);
}

/*Retina graphics!*/
@media only screen and (-webkit-min-device-pixel-ratio: 1.5),
	   only screen and (min--moz-device-pixel-ratio: 1.5),
	   only screen and (min-device-pixel-ratio: 1.5){

	#fancybox-loading, .fancybox-close, .fancybox-prev span, .fancybox-next span {
		background-image: url('/local/templates/softmajor/assets/fancybox/fancybox_sprite@2x.png');
		background-size: 44px 152px; /*The size of the normal image, half the size of the hi-res image*/
	}

	#fancybox-loading div {
		background-image: url('/local/templates/softmajor/assets/fancybox/fancybox_loading@2x.gif');
		background-size: 24px 24px; /*The size of the normal image, half the size of the hi-res image*/
	}
}
/* End */


/* Start:/local/templates/softmajor/assets/owlslider/owl.carousel.css?156273256481669*/
/**
 * Owl Carousel v2.2.0
 * Copyright 2013-2016 David Deutsch
 * Licensed under MIT (https://github.com/OwlCarousel2/OwlCarousel2/blob/master/LICENSE)
 */
/*
 *  Owl Carousel - Core
 */
.owl-carousel {
  display: none;
  width: 100%;
  -webkit-tap-highlight-color: transparent;
  /* position relative and z-index fix webkit rendering fonts issue */
  position: relative;
  z-index: 1; }
  .owl-carousel .owl-stage {
    position: relative;
    -ms-touch-action: pan-Y; }
  .owl-carousel .owl-stage:after {
    content: ".";
    display: block;
    clear: both;
    visibility: hidden;
    line-height: 0;
    height: 0; }
  .owl-carousel .owl-stage-outer {
    position: relative;
    overflow: hidden;
    /* fix for flashing background */
    -webkit-transform: translate3d(0px, 0px, 0px); }
  .owl-carousel .owl-item {
    position: relative;
    min-height: 1px;
    float: left;
    -webkit-backface-visibility: hidden;
    -webkit-tap-highlight-color: transparent;
    -webkit-touch-callout: none; }
  .owl-carousel .owl-item img {
    display: block;
    width: 100%;
    -webkit-transform-style: preserve-3d; }
  .owl-carousel .owl-nav.disabled,
  .owl-carousel .owl-dots.disabled {
    display: none; }
  .owl-carousel .owl-nav .owl-prev,
  .owl-carousel .owl-nav .owl-next,
  .owl-carousel .owl-dot {
    cursor: pointer;
    cursor: hand;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none; }
  .owl-carousel.owl-loaded {
    display: block; }
  .owl-carousel.owl-loading {
    opacity: 0;
    display: block; }
  .owl-carousel.owl-hidden {
    opacity: 0; }
  .owl-carousel.owl-refresh .owl-item {
    visibility: hidden; }
  .owl-carousel.owl-drag .owl-item {
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none; }
  .owl-carousel.owl-grab {
    cursor: move;
    cursor: grab; }
  .owl-carousel.owl-rtl {
    direction: rtl; }
  .owl-carousel.owl-rtl .owl-item {
    float: right; }

/* No Js */
.no-js .owl-carousel {
  display: block; }

/*
 *  Owl Carousel - Animate Plugin
 */
.owl-carousel .animated {
  -webkit-animation-duration: 1000ms;
          animation-duration: 1000ms;
  -webkit-animation-fill-mode: both;
          animation-fill-mode: both; }

.owl-carousel .owl-animated-in {
  z-index: 0; }

.owl-carousel .owl-animated-out {
  z-index: 1; }

.owl-carousel .fadeOut {
  -webkit-animation-name: fadeOut;
          animation-name: fadeOut; }

@-webkit-keyframes fadeOut {
  0% {
    opacity: 1; }
  100% {
    opacity: 0; } }

@keyframes fadeOut {
  0% {
    opacity: 1; }
  100% {
    opacity: 0; } }

/*
 * 	Owl Carousel - Auto Height Plugin
 */
.owl-height {
  transition: height 500ms ease-in-out; }

/*
 * 	Owl Carousel - Lazy Load Plugin
 */
.owl-carousel .owl-item .owl-lazy {
  opacity: 0;
  transition: opacity 400ms ease; }

.owl-carousel .owl-item img.owl-lazy {
  -webkit-transform-style: preserve-3d;
          transform-style: preserve-3d; }

/*
 * 	Owl Carousel - Video Plugin
 */
.owl-carousel .owl-video-wrapper {
  position: relative;
  height: 100%;
  background: #000; }

.owl-carousel .owl-video-play-icon {
  position: absolute;
  height: 80px;
  width: 80px;
  left: 50%;
  top: 50%;
  margin-left: -40px;
  margin-top: -40px;
  background: url("/local/templates/softmajor/assets/owlslider/owl.video.play.png") no-repeat;
  cursor: pointer;
  z-index: 1;
  -webkit-backface-visibility: hidden;
  transition: -webkit-transform 100ms ease;
  transition: transform 100ms ease; }

.owl-carousel .owl-video-play-icon:hover {
  -webkit-transform: scale(1.3, 1.3);
      -ms-transform: scale(1.3, 1.3);
          transform: scale(1.3, 1.3); }

.owl-carousel .owl-video-playing .owl-video-tn,
.owl-carousel .owl-video-playing .owl-video-play-icon {
  display: none; }

.owl-carousel .owl-video-tn {
  opacity: 0;
  height: 100%;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  transition: opacity 400ms ease; }

.owl-carousel .owl-video-frame {
  position: relative;
  z-index: 1;
  height: 100%;
  width: 100%; }
  
 @-webkit-keyframes bounce {
  from,
  20%,
  53%,
  80%,
  to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  40%,
  43% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(0, -30px, 0);
    transform: translate3d(0, -30px, 0);
  }

  70% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(0, -15px, 0);
    transform: translate3d(0, -15px, 0);
  }

  90% {
    -webkit-transform: translate3d(0, -4px, 0);
    transform: translate3d(0, -4px, 0);
  }
}

@keyframes bounce {
  from,
  20%,
  53%,
  80%,
  to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  40%,
  43% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(0, -30px, 0);
    transform: translate3d(0, -30px, 0);
  }

  70% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(0, -15px, 0);
    transform: translate3d(0, -15px, 0);
  }

  90% {
    -webkit-transform: translate3d(0, -4px, 0);
    transform: translate3d(0, -4px, 0);
  }
}

.bounce {
  -webkit-animation-name: bounce;
  animation-name: bounce;
  -webkit-transform-origin: center bottom;
  transform-origin: center bottom;
}

@-webkit-keyframes flash {
  from,
  50%,
  to {
    opacity: 1;
  }

  25%,
  75% {
    opacity: 0;
  }
}

@keyframes flash {
  from,
  50%,
  to {
    opacity: 1;
  }

  25%,
  75% {
    opacity: 0;
  }
}

.flash {
  -webkit-animation-name: flash;
  animation-name: flash;
}

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */

@-webkit-keyframes pulse {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }

  50% {
    -webkit-transform: scale3d(1.05, 1.05, 1.05);
    transform: scale3d(1.05, 1.05, 1.05);
  }

  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}

@keyframes pulse {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }

  50% {
    -webkit-transform: scale3d(1.05, 1.05, 1.05);
    transform: scale3d(1.05, 1.05, 1.05);
  }

  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}

.pulse {
  -webkit-animation-name: pulse;
  animation-name: pulse;
}

@-webkit-keyframes rubberBand {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }

  30% {
    -webkit-transform: scale3d(1.25, 0.75, 1);
    transform: scale3d(1.25, 0.75, 1);
  }

  40% {
    -webkit-transform: scale3d(0.75, 1.25, 1);
    transform: scale3d(0.75, 1.25, 1);
  }

  50% {
    -webkit-transform: scale3d(1.15, 0.85, 1);
    transform: scale3d(1.15, 0.85, 1);
  }

  65% {
    -webkit-transform: scale3d(0.95, 1.05, 1);
    transform: scale3d(0.95, 1.05, 1);
  }

  75% {
    -webkit-transform: scale3d(1.05, 0.95, 1);
    transform: scale3d(1.05, 0.95, 1);
  }

  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}

@keyframes rubberBand {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }

  30% {
    -webkit-transform: scale3d(1.25, 0.75, 1);
    transform: scale3d(1.25, 0.75, 1);
  }

  40% {
    -webkit-transform: scale3d(0.75, 1.25, 1);
    transform: scale3d(0.75, 1.25, 1);
  }

  50% {
    -webkit-transform: scale3d(1.15, 0.85, 1);
    transform: scale3d(1.15, 0.85, 1);
  }

  65% {
    -webkit-transform: scale3d(0.95, 1.05, 1);
    transform: scale3d(0.95, 1.05, 1);
  }

  75% {
    -webkit-transform: scale3d(1.05, 0.95, 1);
    transform: scale3d(1.05, 0.95, 1);
  }

  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}

.rubberBand {
  -webkit-animation-name: rubberBand;
  animation-name: rubberBand;
}

@-webkit-keyframes shake {
  from,
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  10%,
  30%,
  50%,
  70%,
  90% {
    -webkit-transform: translate3d(-10px, 0, 0);
    transform: translate3d(-10px, 0, 0);
  }

  20%,
  40%,
  60%,
  80% {
    -webkit-transform: translate3d(10px, 0, 0);
    transform: translate3d(10px, 0, 0);
  }
}

@keyframes shake {
  from,
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  10%,
  30%,
  50%,
  70%,
  90% {
    -webkit-transform: translate3d(-10px, 0, 0);
    transform: translate3d(-10px, 0, 0);
  }

  20%,
  40%,
  60%,
  80% {
    -webkit-transform: translate3d(10px, 0, 0);
    transform: translate3d(10px, 0, 0);
  }
}

.shake {
  -webkit-animation-name: shake;
  animation-name: shake;
}

@-webkit-keyframes headShake {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }

  6.5% {
    -webkit-transform: translateX(-6px) rotateY(-9deg);
    transform: translateX(-6px) rotateY(-9deg);
  }

  18.5% {
    -webkit-transform: translateX(5px) rotateY(7deg);
    transform: translateX(5px) rotateY(7deg);
  }

  31.5% {
    -webkit-transform: translateX(-3px) rotateY(-5deg);
    transform: translateX(-3px) rotateY(-5deg);
  }

  43.5% {
    -webkit-transform: translateX(2px) rotateY(3deg);
    transform: translateX(2px) rotateY(3deg);
  }

  50% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}

@keyframes headShake {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }

  6.5% {
    -webkit-transform: translateX(-6px) rotateY(-9deg);
    transform: translateX(-6px) rotateY(-9deg);
  }

  18.5% {
    -webkit-transform: translateX(5px) rotateY(7deg);
    transform: translateX(5px) rotateY(7deg);
  }

  31.5% {
    -webkit-transform: translateX(-3px) rotateY(-5deg);
    transform: translateX(-3px) rotateY(-5deg);
  }

  43.5% {
    -webkit-transform: translateX(2px) rotateY(3deg);
    transform: translateX(2px) rotateY(3deg);
  }

  50% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}

.headShake {
  -webkit-animation-timing-function: ease-in-out;
  animation-timing-function: ease-in-out;
  -webkit-animation-name: headShake;
  animation-name: headShake;
}

@-webkit-keyframes swing {
  20% {
    -webkit-transform: rotate3d(0, 0, 1, 15deg);
    transform: rotate3d(0, 0, 1, 15deg);
  }

  40% {
    -webkit-transform: rotate3d(0, 0, 1, -10deg);
    transform: rotate3d(0, 0, 1, -10deg);
  }

  60% {
    -webkit-transform: rotate3d(0, 0, 1, 5deg);
    transform: rotate3d(0, 0, 1, 5deg);
  }

  80% {
    -webkit-transform: rotate3d(0, 0, 1, -5deg);
    transform: rotate3d(0, 0, 1, -5deg);
  }

  to {
    -webkit-transform: rotate3d(0, 0, 1, 0deg);
    transform: rotate3d(0, 0, 1, 0deg);
  }
}

@keyframes swing {
  20% {
    -webkit-transform: rotate3d(0, 0, 1, 15deg);
    transform: rotate3d(0, 0, 1, 15deg);
  }

  40% {
    -webkit-transform: rotate3d(0, 0, 1, -10deg);
    transform: rotate3d(0, 0, 1, -10deg);
  }

  60% {
    -webkit-transform: rotate3d(0, 0, 1, 5deg);
    transform: rotate3d(0, 0, 1, 5deg);
  }

  80% {
    -webkit-transform: rotate3d(0, 0, 1, -5deg);
    transform: rotate3d(0, 0, 1, -5deg);
  }

  to {
    -webkit-transform: rotate3d(0, 0, 1, 0deg);
    transform: rotate3d(0, 0, 1, 0deg);
  }
}

.swing {
  -webkit-transform-origin: top center;
  transform-origin: top center;
  -webkit-animation-name: swing;
  animation-name: swing;
}

@-webkit-keyframes tada {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }

  10%,
  20% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);
    transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);
  }

  30%,
  50%,
  70%,
  90% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
    transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
  }

  40%,
  60%,
  80% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
    transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
  }

  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}

@keyframes tada {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }

  10%,
  20% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);
    transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);
  }

  30%,
  50%,
  70%,
  90% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
    transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
  }

  40%,
  60%,
  80% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
    transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
  }

  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}

.tada {
  -webkit-animation-name: tada;
  animation-name: tada;
}

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */

@-webkit-keyframes wobble {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  15% {
    -webkit-transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
    transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
  }

  30% {
    -webkit-transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
    transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
  }

  45% {
    -webkit-transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
    transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
  }

  60% {
    -webkit-transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
    transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
  }

  75% {
    -webkit-transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
    transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes wobble {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  15% {
    -webkit-transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
    transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
  }

  30% {
    -webkit-transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
    transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
  }

  45% {
    -webkit-transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
    transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
  }

  60% {
    -webkit-transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
    transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
  }

  75% {
    -webkit-transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
    transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.wobble {
  -webkit-animation-name: wobble;
  animation-name: wobble;
}

@-webkit-keyframes jello {
  from,
  11.1%,
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  22.2% {
    -webkit-transform: skewX(-12.5deg) skewY(-12.5deg);
    transform: skewX(-12.5deg) skewY(-12.5deg);
  }

  33.3% {
    -webkit-transform: skewX(6.25deg) skewY(6.25deg);
    transform: skewX(6.25deg) skewY(6.25deg);
  }

  44.4% {
    -webkit-transform: skewX(-3.125deg) skewY(-3.125deg);
    transform: skewX(-3.125deg) skewY(-3.125deg);
  }

  55.5% {
    -webkit-transform: skewX(1.5625deg) skewY(1.5625deg);
    transform: skewX(1.5625deg) skewY(1.5625deg);
  }

  66.6% {
    -webkit-transform: skewX(-0.78125deg) skewY(-0.78125deg);
    transform: skewX(-0.78125deg) skewY(-0.78125deg);
  }

  77.7% {
    -webkit-transform: skewX(0.390625deg) skewY(0.390625deg);
    transform: skewX(0.390625deg) skewY(0.390625deg);
  }

  88.8% {
    -webkit-transform: skewX(-0.1953125deg) skewY(-0.1953125deg);
    transform: skewX(-0.1953125deg) skewY(-0.1953125deg);
  }
}

@keyframes jello {
  from,
  11.1%,
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  22.2% {
    -webkit-transform: skewX(-12.5deg) skewY(-12.5deg);
    transform: skewX(-12.5deg) skewY(-12.5deg);
  }

  33.3% {
    -webkit-transform: skewX(6.25deg) skewY(6.25deg);
    transform: skewX(6.25deg) skewY(6.25deg);
  }

  44.4% {
    -webkit-transform: skewX(-3.125deg) skewY(-3.125deg);
    transform: skewX(-3.125deg) skewY(-3.125deg);
  }

  55.5% {
    -webkit-transform: skewX(1.5625deg) skewY(1.5625deg);
    transform: skewX(1.5625deg) skewY(1.5625deg);
  }

  66.6% {
    -webkit-transform: skewX(-0.78125deg) skewY(-0.78125deg);
    transform: skewX(-0.78125deg) skewY(-0.78125deg);
  }

  77.7% {
    -webkit-transform: skewX(0.390625deg) skewY(0.390625deg);
    transform: skewX(0.390625deg) skewY(0.390625deg);
  }

  88.8% {
    -webkit-transform: skewX(-0.1953125deg) skewY(-0.1953125deg);
    transform: skewX(-0.1953125deg) skewY(-0.1953125deg);
  }
}

.jello {
  -webkit-animation-name: jello;
  animation-name: jello;
  -webkit-transform-origin: center;
  transform-origin: center;
}

@-webkit-keyframes heartBeat {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }

  14% {
    -webkit-transform: scale(1.3);
    transform: scale(1.3);
  }

  28% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }

  42% {
    -webkit-transform: scale(1.3);
    transform: scale(1.3);
  }

  70% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}

@keyframes heartBeat {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }

  14% {
    -webkit-transform: scale(1.3);
    transform: scale(1.3);
  }

  28% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }

  42% {
    -webkit-transform: scale(1.3);
    transform: scale(1.3);
  }

  70% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}

.heartBeat {
  -webkit-animation-name: heartBeat;
  animation-name: heartBeat;
  -webkit-animation-duration: 1.3s;
  animation-duration: 1.3s;
  -webkit-animation-timing-function: ease-in-out;
  animation-timing-function: ease-in-out;
}

@-webkit-keyframes bounceIn {
  from,
  20%,
  40%,
  60%,
  80%,
  to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }

  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }

  20% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1);
  }

  40% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
    transform: scale3d(0.9, 0.9, 0.9);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(1.03, 1.03, 1.03);
    transform: scale3d(1.03, 1.03, 1.03);
  }

  80% {
    -webkit-transform: scale3d(0.97, 0.97, 0.97);
    transform: scale3d(0.97, 0.97, 0.97);
  }

  to {
    opacity: 1;
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}

@keyframes bounceIn {
  from,
  20%,
  40%,
  60%,
  80%,
  to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }

  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }

  20% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1);
  }

  40% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
    transform: scale3d(0.9, 0.9, 0.9);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(1.03, 1.03, 1.03);
    transform: scale3d(1.03, 1.03, 1.03);
  }

  80% {
    -webkit-transform: scale3d(0.97, 0.97, 0.97);
    transform: scale3d(0.97, 0.97, 0.97);
  }

  to {
    opacity: 1;
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}

.bounceIn {
  -webkit-animation-duration: 0.75s;
  animation-duration: 0.75s;
  -webkit-animation-name: bounceIn;
  animation-name: bounceIn;
}

@-webkit-keyframes bounceInDown {
  from,
  60%,
  75%,
  90%,
  to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }

  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, -3000px, 0);
    transform: translate3d(0, -3000px, 0);
  }

  60% {
    opacity: 1;
    -webkit-transform: translate3d(0, 25px, 0);
    transform: translate3d(0, 25px, 0);
  }

  75% {
    -webkit-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0);
  }

  90% {
    -webkit-transform: translate3d(0, 5px, 0);
    transform: translate3d(0, 5px, 0);
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes bounceInDown {
  from,
  60%,
  75%,
  90%,
  to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }

  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, -3000px, 0);
    transform: translate3d(0, -3000px, 0);
  }

  60% {
    opacity: 1;
    -webkit-transform: translate3d(0, 25px, 0);
    transform: translate3d(0, 25px, 0);
  }

  75% {
    -webkit-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0);
  }

  90% {
    -webkit-transform: translate3d(0, 5px, 0);
    transform: translate3d(0, 5px, 0);
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.bounceInDown {
  -webkit-animation-name: bounceInDown;
  animation-name: bounceInDown;
}

@-webkit-keyframes bounceInLeft {
  from,
  60%,
  75%,
  90%,
  to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }

  0% {
    opacity: 0;
    -webkit-transform: translate3d(-3000px, 0, 0);
    transform: translate3d(-3000px, 0, 0);
  }

  60% {
    opacity: 1;
    -webkit-transform: translate3d(25px, 0, 0);
    transform: translate3d(25px, 0, 0);
  }

  75% {
    -webkit-transform: translate3d(-10px, 0, 0);
    transform: translate3d(-10px, 0, 0);
  }

  90% {
    -webkit-transform: translate3d(5px, 0, 0);
    transform: translate3d(5px, 0, 0);
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes bounceInLeft {
  from,
  60%,
  75%,
  90%,
  to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }

  0% {
    opacity: 0;
    -webkit-transform: translate3d(-3000px, 0, 0);
    transform: translate3d(-3000px, 0, 0);
  }

  60% {
    opacity: 1;
    -webkit-transform: translate3d(25px, 0, 0);
    transform: translate3d(25px, 0, 0);
  }

  75% {
    -webkit-transform: translate3d(-10px, 0, 0);
    transform: translate3d(-10px, 0, 0);
  }

  90% {
    -webkit-transform: translate3d(5px, 0, 0);
    transform: translate3d(5px, 0, 0);
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.bounceInLeft {
  -webkit-animation-name: bounceInLeft;
  animation-name: bounceInLeft;
}

@-webkit-keyframes bounceInRight {
  from,
  60%,
  75%,
  90%,
  to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }

  from {
    opacity: 0;
    -webkit-transform: translate3d(3000px, 0, 0);
    transform: translate3d(3000px, 0, 0);
  }

  60% {
    opacity: 1;
    -webkit-transform: translate3d(-25px, 0, 0);
    transform: translate3d(-25px, 0, 0);
  }

  75% {
    -webkit-transform: translate3d(10px, 0, 0);
    transform: translate3d(10px, 0, 0);
  }

  90% {
    -webkit-transform: translate3d(-5px, 0, 0);
    transform: translate3d(-5px, 0, 0);
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes bounceInRight {
  from,
  60%,
  75%,
  90%,
  to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }

  from {
    opacity: 0;
    -webkit-transform: translate3d(3000px, 0, 0);
    transform: translate3d(3000px, 0, 0);
  }

  60% {
    opacity: 1;
    -webkit-transform: translate3d(-25px, 0, 0);
    transform: translate3d(-25px, 0, 0);
  }

  75% {
    -webkit-transform: translate3d(10px, 0, 0);
    transform: translate3d(10px, 0, 0);
  }

  90% {
    -webkit-transform: translate3d(-5px, 0, 0);
    transform: translate3d(-5px, 0, 0);
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.bounceInRight {
  -webkit-animation-name: bounceInRight;
  animation-name: bounceInRight;
}

@-webkit-keyframes bounceInUp {
  from,
  60%,
  75%,
  90%,
  to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }

  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 3000px, 0);
    transform: translate3d(0, 3000px, 0);
  }

  60% {
    opacity: 1;
    -webkit-transform: translate3d(0, -20px, 0);
    transform: translate3d(0, -20px, 0);
  }

  75% {
    -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0);
  }

  90% {
    -webkit-transform: translate3d(0, -5px, 0);
    transform: translate3d(0, -5px, 0);
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes bounceInUp {
  from,
  60%,
  75%,
  90%,
  to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }

  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 3000px, 0);
    transform: translate3d(0, 3000px, 0);
  }

  60% {
    opacity: 1;
    -webkit-transform: translate3d(0, -20px, 0);
    transform: translate3d(0, -20px, 0);
  }

  75% {
    -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0);
  }

  90% {
    -webkit-transform: translate3d(0, -5px, 0);
    transform: translate3d(0, -5px, 0);
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.bounceInUp {
  -webkit-animation-name: bounceInUp;
  animation-name: bounceInUp;
}

@-webkit-keyframes bounceOut {
  20% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
    transform: scale3d(0.9, 0.9, 0.9);
  }

  50%,
  55% {
    opacity: 1;
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1);
  }

  to {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }
}

@keyframes bounceOut {
  20% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
    transform: scale3d(0.9, 0.9, 0.9);
  }

  50%,
  55% {
    opacity: 1;
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1);
  }

  to {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }
}

.bounceOut {
  -webkit-animation-duration: 0.75s;
  animation-duration: 0.75s;
  -webkit-animation-name: bounceOut;
  animation-name: bounceOut;
}

@-webkit-keyframes bounceOutDown {
  20% {
    -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0);
  }

  40%,
  45% {
    opacity: 1;
    -webkit-transform: translate3d(0, -20px, 0);
    transform: translate3d(0, -20px, 0);
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0);
  }
}

@keyframes bounceOutDown {
  20% {
    -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0);
  }

  40%,
  45% {
    opacity: 1;
    -webkit-transform: translate3d(0, -20px, 0);
    transform: translate3d(0, -20px, 0);
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0);
  }
}

.bounceOutDown {
  -webkit-animation-name: bounceOutDown;
  animation-name: bounceOutDown;
}

@-webkit-keyframes bounceOutLeft {
  20% {
    opacity: 1;
    -webkit-transform: translate3d(20px, 0, 0);
    transform: translate3d(20px, 0, 0);
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0);
  }
}

@keyframes bounceOutLeft {
  20% {
    opacity: 1;
    -webkit-transform: translate3d(20px, 0, 0);
    transform: translate3d(20px, 0, 0);
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0);
  }
}

.bounceOutLeft {
  -webkit-animation-name: bounceOutLeft;
  animation-name: bounceOutLeft;
}

@-webkit-keyframes bounceOutRight {
  20% {
    opacity: 1;
    -webkit-transform: translate3d(-20px, 0, 0);
    transform: translate3d(-20px, 0, 0);
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0);
  }
}

@keyframes bounceOutRight {
  20% {
    opacity: 1;
    -webkit-transform: translate3d(-20px, 0, 0);
    transform: translate3d(-20px, 0, 0);
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0);
  }
}

.bounceOutRight {
  -webkit-animation-name: bounceOutRight;
  animation-name: bounceOutRight;
}

@-webkit-keyframes bounceOutUp {
  20% {
    -webkit-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0);
  }

  40%,
  45% {
    opacity: 1;
    -webkit-transform: translate3d(0, 20px, 0);
    transform: translate3d(0, 20px, 0);
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0);
  }
}

@keyframes bounceOutUp {
  20% {
    -webkit-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0);
  }

  40%,
  45% {
    opacity: 1;
    -webkit-transform: translate3d(0, 20px, 0);
    transform: translate3d(0, 20px, 0);
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0);
  }
}

.bounceOutUp {
  -webkit-animation-name: bounceOutUp;
  animation-name: bounceOutUp;
}

@-webkit-keyframes fadeIn {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

@keyframes fadeIn {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

.fadeIn {
  -webkit-animation-name: fadeIn;
  animation-name: fadeIn;
}

@-webkit-keyframes fadeInDown {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes fadeInDown {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.fadeInDown {
  -webkit-animation-name: fadeInDown;
  animation-name: fadeInDown;
}

@-webkit-keyframes fadeInDownBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes fadeInDownBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.fadeInDownBig {
  -webkit-animation-name: fadeInDownBig;
  animation-name: fadeInDownBig;
}

@-webkit-keyframes fadeInLeft {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes fadeInLeft {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.fadeInLeft {
  -webkit-animation-name: fadeInLeft;
  animation-name: fadeInLeft;
}

@-webkit-keyframes fadeInLeftBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes fadeInLeftBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.fadeInLeftBig {
  -webkit-animation-name: fadeInLeftBig;
  animation-name: fadeInLeftBig;
}

@-webkit-keyframes fadeInRight {
  from {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes fadeInRight {
  from {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.fadeInRight {
  -webkit-animation-name: fadeInRight;
  animation-name: fadeInRight;
}

@-webkit-keyframes fadeInRightBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes fadeInRightBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.fadeInRightBig {
  -webkit-animation-name: fadeInRightBig;
  animation-name: fadeInRightBig;
}

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

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

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

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.fadeInUp {
  -webkit-animation-name: fadeInUp;
  animation-name: fadeInUp;
}

@-webkit-keyframes fadeInUpBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes fadeInUpBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.fadeInUpBig {
  -webkit-animation-name: fadeInUpBig;
  animation-name: fadeInUpBig;
}

@-webkit-keyframes fadeOut {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
  }
}

@keyframes fadeOut {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
  }
}

.fadeOut {
  -webkit-animation-name: fadeOut;
  animation-name: fadeOut;
}

@-webkit-keyframes fadeOutDown {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }
}

@keyframes fadeOutDown {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }
}

.fadeOutDown {
  -webkit-animation-name: fadeOutDown;
  animation-name: fadeOutDown;
}

@-webkit-keyframes fadeOutDownBig {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0);
  }
}

@keyframes fadeOutDownBig {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0);
  }
}

.fadeOutDownBig {
  -webkit-animation-name: fadeOutDownBig;
  animation-name: fadeOutDownBig;
}

@-webkit-keyframes fadeOutLeft {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
}

@keyframes fadeOutLeft {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
}

.fadeOutLeft {
  -webkit-animation-name: fadeOutLeft;
  animation-name: fadeOutLeft;
}

@-webkit-keyframes fadeOutLeftBig {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0);
  }
}

@keyframes fadeOutLeftBig {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0);
  }
}

.fadeOutLeftBig {
  -webkit-animation-name: fadeOutLeftBig;
  animation-name: fadeOutLeftBig;
}

@-webkit-keyframes fadeOutRight {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
}

@keyframes fadeOutRight {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
}

.fadeOutRight {
  -webkit-animation-name: fadeOutRight;
  animation-name: fadeOutRight;
}

@-webkit-keyframes fadeOutRightBig {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0);
  }
}

@keyframes fadeOutRightBig {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0);
  }
}

.fadeOutRightBig {
  -webkit-animation-name: fadeOutRightBig;
  animation-name: fadeOutRightBig;
}

@-webkit-keyframes fadeOutUp {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }
}

@keyframes fadeOutUp {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }
}

.fadeOutUp {
  -webkit-animation-name: fadeOutUp;
  animation-name: fadeOutUp;
}

@-webkit-keyframes fadeOutUpBig {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0);
  }
}

@keyframes fadeOutUpBig {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0);
  }
}

.fadeOutUpBig {
  -webkit-animation-name: fadeOutUpBig;
  animation-name: fadeOutUpBig;
}

@-webkit-keyframes flip {
  from {
    -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0)
      rotate3d(0, 1, 0, -360deg);
    transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0) rotate3d(0, 1, 0, -360deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }

  40% {
    -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px)
      rotate3d(0, 1, 0, -190deg);
    transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px)
      rotate3d(0, 1, 0, -190deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }

  50% {
    -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px)
      rotate3d(0, 1, 0, -170deg);
    transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px)
      rotate3d(0, 1, 0, -170deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }

  80% {
    -webkit-transform: perspective(400px) scale3d(0.95, 0.95, 0.95) translate3d(0, 0, 0)
      rotate3d(0, 1, 0, 0deg);
    transform: perspective(400px) scale3d(0.95, 0.95, 0.95) translate3d(0, 0, 0)
      rotate3d(0, 1, 0, 0deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }

  to {
    -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0)
      rotate3d(0, 1, 0, 0deg);
    transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0) rotate3d(0, 1, 0, 0deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
}

@keyframes flip {
  from {
    -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0)
      rotate3d(0, 1, 0, -360deg);
    transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0) rotate3d(0, 1, 0, -360deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }

  40% {
    -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px)
      rotate3d(0, 1, 0, -190deg);
    transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px)
      rotate3d(0, 1, 0, -190deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }

  50% {
    -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px)
      rotate3d(0, 1, 0, -170deg);
    transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px)
      rotate3d(0, 1, 0, -170deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }

  80% {
    -webkit-transform: perspective(400px) scale3d(0.95, 0.95, 0.95) translate3d(0, 0, 0)
      rotate3d(0, 1, 0, 0deg);
    transform: perspective(400px) scale3d(0.95, 0.95, 0.95) translate3d(0, 0, 0)
      rotate3d(0, 1, 0, 0deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }

  to {
    -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0)
      rotate3d(0, 1, 0, 0deg);
    transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0) rotate3d(0, 1, 0, 0deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
}

.animated.flip {
  -webkit-backface-visibility: visible;
  backface-visibility: visible;
  -webkit-animation-name: flip;
  animation-name: flip;
}

@-webkit-keyframes flipInX {
  from {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    opacity: 0;
  }

  40% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }

  60% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    opacity: 1;
  }

  80% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
  }

  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }
}

@keyframes flipInX {
  from {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    opacity: 0;
  }

  40% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }

  60% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    opacity: 1;
  }

  80% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
  }

  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }
}

.flipInX {
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
  -webkit-animation-name: flipInX;
  animation-name: flipInX;
}

@-webkit-keyframes flipInY {
  from {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    opacity: 0;
  }

  40% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }

  60% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
    opacity: 1;
  }

  80% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
  }

  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }
}

@keyframes flipInY {
  from {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    opacity: 0;
  }

  40% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }

  60% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
    opacity: 1;
  }

  80% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
  }

  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }
}

.flipInY {
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
  -webkit-animation-name: flipInY;
  animation-name: flipInY;
}

@-webkit-keyframes flipOutX {
  from {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }

  30% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    opacity: 1;
  }

  to {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    opacity: 0;
  }
}

@keyframes flipOutX {
  from {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }

  30% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    opacity: 1;
  }

  to {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    opacity: 0;
  }
}

.flipOutX {
  -webkit-animation-duration: 0.75s;
  animation-duration: 0.75s;
  -webkit-animation-name: flipOutX;
  animation-name: flipOutX;
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
}

@-webkit-keyframes flipOutY {
  from {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }

  30% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
    opacity: 1;
  }

  to {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    opacity: 0;
  }
}

@keyframes flipOutY {
  from {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }

  30% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
    opacity: 1;
  }

  to {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    opacity: 0;
  }
}

.flipOutY {
  -webkit-animation-duration: 0.75s;
  animation-duration: 0.75s;
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
  -webkit-animation-name: flipOutY;
  animation-name: flipOutY;
}

@-webkit-keyframes lightSpeedIn {
  from {
    -webkit-transform: translate3d(100%, 0, 0) skewX(-30deg);
    transform: translate3d(100%, 0, 0) skewX(-30deg);
    opacity: 0;
  }

  60% {
    -webkit-transform: skewX(20deg);
    transform: skewX(20deg);
    opacity: 1;
  }

  80% {
    -webkit-transform: skewX(-5deg);
    transform: skewX(-5deg);
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes lightSpeedIn {
  from {
    -webkit-transform: translate3d(100%, 0, 0) skewX(-30deg);
    transform: translate3d(100%, 0, 0) skewX(-30deg);
    opacity: 0;
  }

  60% {
    -webkit-transform: skewX(20deg);
    transform: skewX(20deg);
    opacity: 1;
  }

  80% {
    -webkit-transform: skewX(-5deg);
    transform: skewX(-5deg);
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.lightSpeedIn {
  -webkit-animation-name: lightSpeedIn;
  animation-name: lightSpeedIn;
  -webkit-animation-timing-function: ease-out;
  animation-timing-function: ease-out;
}

@-webkit-keyframes lightSpeedOut {
  from {
    opacity: 1;
  }

  to {
    -webkit-transform: translate3d(100%, 0, 0) skewX(30deg);
    transform: translate3d(100%, 0, 0) skewX(30deg);
    opacity: 0;
  }
}

@keyframes lightSpeedOut {
  from {
    opacity: 1;
  }

  to {
    -webkit-transform: translate3d(100%, 0, 0) skewX(30deg);
    transform: translate3d(100%, 0, 0) skewX(30deg);
    opacity: 0;
  }
}

.lightSpeedOut {
  -webkit-animation-name: lightSpeedOut;
  animation-name: lightSpeedOut;
  -webkit-animation-timing-function: ease-in;
  animation-timing-function: ease-in;
}

@-webkit-keyframes rotateIn {
  from {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: rotate3d(0, 0, 1, -200deg);
    transform: rotate3d(0, 0, 1, -200deg);
    opacity: 0;
  }

  to {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}

@keyframes rotateIn {
  from {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: rotate3d(0, 0, 1, -200deg);
    transform: rotate3d(0, 0, 1, -200deg);
    opacity: 0;
  }

  to {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}

.rotateIn {
  -webkit-animation-name: rotateIn;
  animation-name: rotateIn;
}

@-webkit-keyframes rotateInDownLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0;
  }

  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}

@keyframes rotateInDownLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0;
  }

  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}

.rotateInDownLeft {
  -webkit-animation-name: rotateInDownLeft;
  animation-name: rotateInDownLeft;
}

@-webkit-keyframes rotateInDownRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0;
  }

  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}

@keyframes rotateInDownRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0;
  }

  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}

.rotateInDownRight {
  -webkit-animation-name: rotateInDownRight;
  animation-name: rotateInDownRight;
}

@-webkit-keyframes rotateInUpLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0;
  }

  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}

@keyframes rotateInUpLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0;
  }

  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}

.rotateInUpLeft {
  -webkit-animation-name: rotateInUpLeft;
  animation-name: rotateInUpLeft;
}

@-webkit-keyframes rotateInUpRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, -90deg);
    transform: rotate3d(0, 0, 1, -90deg);
    opacity: 0;
  }

  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}

@keyframes rotateInUpRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, -90deg);
    transform: rotate3d(0, 0, 1, -90deg);
    opacity: 0;
  }

  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}

.rotateInUpRight {
  -webkit-animation-name: rotateInUpRight;
  animation-name: rotateInUpRight;
}

@-webkit-keyframes rotateOut {
  from {
    -webkit-transform-origin: center;
    transform-origin: center;
    opacity: 1;
  }

  to {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: rotate3d(0, 0, 1, 200deg);
    transform: rotate3d(0, 0, 1, 200deg);
    opacity: 0;
  }
}

@keyframes rotateOut {
  from {
    -webkit-transform-origin: center;
    transform-origin: center;
    opacity: 1;
  }

  to {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: rotate3d(0, 0, 1, 200deg);
    transform: rotate3d(0, 0, 1, 200deg);
    opacity: 0;
  }
}

.rotateOut {
  -webkit-animation-name: rotateOut;
  animation-name: rotateOut;
}

@-webkit-keyframes rotateOutDownLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    opacity: 1;
  }

  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0;
  }
}

@keyframes rotateOutDownLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    opacity: 1;
  }

  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0;
  }
}

.rotateOutDownLeft {
  -webkit-animation-name: rotateOutDownLeft;
  animation-name: rotateOutDownLeft;
}

@-webkit-keyframes rotateOutDownRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    opacity: 1;
  }

  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0;
  }
}

@keyframes rotateOutDownRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    opacity: 1;
  }

  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0;
  }
}

.rotateOutDownRight {
  -webkit-animation-name: rotateOutDownRight;
  animation-name: rotateOutDownRight;
}

@-webkit-keyframes rotateOutUpLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    opacity: 1;
  }

  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0;
  }
}

@keyframes rotateOutUpLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    opacity: 1;
  }

  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0;
  }
}

.rotateOutUpLeft {
  -webkit-animation-name: rotateOutUpLeft;
  animation-name: rotateOutUpLeft;
}

@-webkit-keyframes rotateOutUpRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    opacity: 1;
  }

  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, 90deg);
    transform: rotate3d(0, 0, 1, 90deg);
    opacity: 0;
  }
}

@keyframes rotateOutUpRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    opacity: 1;
  }

  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, 90deg);
    transform: rotate3d(0, 0, 1, 90deg);
    opacity: 0;
  }
}

.rotateOutUpRight {
  -webkit-animation-name: rotateOutUpRight;
  animation-name: rotateOutUpRight;
}

@-webkit-keyframes hinge {
  0% {
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }

  20%,
  60% {
    -webkit-transform: rotate3d(0, 0, 1, 80deg);
    transform: rotate3d(0, 0, 1, 80deg);
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }

  40%,
  80% {
    -webkit-transform: rotate3d(0, 0, 1, 60deg);
    transform: rotate3d(0, 0, 1, 60deg);
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
    opacity: 1;
  }

  to {
    -webkit-transform: translate3d(0, 700px, 0);
    transform: translate3d(0, 700px, 0);
    opacity: 0;
  }
}

@keyframes hinge {
  0% {
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }

  20%,
  60% {
    -webkit-transform: rotate3d(0, 0, 1, 80deg);
    transform: rotate3d(0, 0, 1, 80deg);
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }

  40%,
  80% {
    -webkit-transform: rotate3d(0, 0, 1, 60deg);
    transform: rotate3d(0, 0, 1, 60deg);
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
    opacity: 1;
  }

  to {
    -webkit-transform: translate3d(0, 700px, 0);
    transform: translate3d(0, 700px, 0);
    opacity: 0;
  }
}

.hinge {
  -webkit-animation-duration: 2s;
  animation-duration: 2s;
  -webkit-animation-name: hinge;
  animation-name: hinge;
}

@-webkit-keyframes jackInTheBox {
  from {
    opacity: 0;
    -webkit-transform: scale(0.1) rotate(30deg);
    transform: scale(0.1) rotate(30deg);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
  }

  50% {
    -webkit-transform: rotate(-10deg);
    transform: rotate(-10deg);
  }

  70% {
    -webkit-transform: rotate(3deg);
    transform: rotate(3deg);
  }

  to {
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}

@keyframes jackInTheBox {
  from {
    opacity: 0;
    -webkit-transform: scale(0.1) rotate(30deg);
    transform: scale(0.1) rotate(30deg);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
  }

  50% {
    -webkit-transform: rotate(-10deg);
    transform: rotate(-10deg);
  }

  70% {
    -webkit-transform: rotate(3deg);
    transform: rotate(3deg);
  }

  to {
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}

.jackInTheBox {
  -webkit-animation-name: jackInTheBox;
  animation-name: jackInTheBox;
}

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */

@-webkit-keyframes rollIn {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
    transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes rollIn {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
    transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.rollIn {
  -webkit-animation-name: rollIn;
  animation-name: rollIn;
}

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */

@-webkit-keyframes rollOut {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
    transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
  }
}

@keyframes rollOut {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
    transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
  }
}

.rollOut {
  -webkit-animation-name: rollOut;
  animation-name: rollOut;
}

@-webkit-keyframes zoomIn {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }

  50% {
    opacity: 1;
  }
}

@keyframes zoomIn {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }

  50% {
    opacity: 1;
  }
}

.zoomIn {
  -webkit-animation-name: zoomIn;
  animation-name: zoomIn;
}

@-webkit-keyframes zoomInDown {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}

@keyframes zoomInDown {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}

.zoomInDown {
  -webkit-animation-name: zoomInDown;
  animation-name: zoomInDown;
}

@-webkit-keyframes zoomInLeft {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}

@keyframes zoomInLeft {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}

.zoomInLeft {
  -webkit-animation-name: zoomInLeft;
  animation-name: zoomInLeft;
}

@-webkit-keyframes zoomInRight {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}

@keyframes zoomInRight {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}

.zoomInRight {
  -webkit-animation-name: zoomInRight;
  animation-name: zoomInRight;
}

@-webkit-keyframes zoomInUp {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}

@keyframes zoomInUp {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}

.zoomInUp {
  -webkit-animation-name: zoomInUp;
  animation-name: zoomInUp;
}

@-webkit-keyframes zoomOut {
  from {
    opacity: 1;
  }

  50% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }

  to {
    opacity: 0;
  }
}

@keyframes zoomOut {
  from {
    opacity: 1;
  }

  50% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }

  to {
    opacity: 0;
  }
}

.zoomOut {
  -webkit-animation-name: zoomOut;
  animation-name: zoomOut;
}

@-webkit-keyframes zoomOutDown {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }

  to {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}

@keyframes zoomOutDown {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }

  to {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}

.zoomOutDown {
  -webkit-animation-name: zoomOutDown;
  animation-name: zoomOutDown;
}

@-webkit-keyframes zoomOutLeft {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
  }

  to {
    opacity: 0;
    -webkit-transform: scale(0.1) translate3d(-2000px, 0, 0);
    transform: scale(0.1) translate3d(-2000px, 0, 0);
    -webkit-transform-origin: left center;
    transform-origin: left center;
  }
}

@keyframes zoomOutLeft {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
  }

  to {
    opacity: 0;
    -webkit-transform: scale(0.1) translate3d(-2000px, 0, 0);
    transform: scale(0.1) translate3d(-2000px, 0, 0);
    -webkit-transform-origin: left center;
    transform-origin: left center;
  }
}

.zoomOutLeft {
  -webkit-animation-name: zoomOutLeft;
  animation-name: zoomOutLeft;
}

@-webkit-keyframes zoomOutRight {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
  }

  to {
    opacity: 0;
    -webkit-transform: scale(0.1) translate3d(2000px, 0, 0);
    transform: scale(0.1) translate3d(2000px, 0, 0);
    -webkit-transform-origin: right center;
    transform-origin: right center;
  }
}

@keyframes zoomOutRight {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
  }

  to {
    opacity: 0;
    -webkit-transform: scale(0.1) translate3d(2000px, 0, 0);
    transform: scale(0.1) translate3d(2000px, 0, 0);
    -webkit-transform-origin: right center;
    transform-origin: right center;
  }
}

.zoomOutRight {
  -webkit-animation-name: zoomOutRight;
  animation-name: zoomOutRight;
}

@-webkit-keyframes zoomOutUp {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }

  to {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}

@keyframes zoomOutUp {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }

  to {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}

.zoomOutUp {
  -webkit-animation-name: zoomOutUp;
  animation-name: zoomOutUp;
}

@-webkit-keyframes slideInDown {
  from {
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
    visibility: visible;
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes slideInDown {
  from {
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
    visibility: visible;
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.slideInDown {
  -webkit-animation-name: slideInDown;
  animation-name: slideInDown;
}

@-webkit-keyframes slideInLeft {
  from {
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
    visibility: visible;
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes slideInLeft {
  from {
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
    visibility: visible;
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.slideInLeft {
  -webkit-animation-name: slideInLeft;
  animation-name: slideInLeft;
}

@-webkit-keyframes slideInRight {
  from {
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
    visibility: visible;
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes slideInRight {
  from {
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
    visibility: visible;
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.slideInRight {
  -webkit-animation-name: slideInRight;
  animation-name: slideInRight;
}

@-webkit-keyframes slideInUp {
  from {
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
    visibility: visible;
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes slideInUp {
  from {
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
    visibility: visible;
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.slideInUp {
  -webkit-animation-name: slideInUp;
  animation-name: slideInUp;
}

@-webkit-keyframes slideOutDown {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  to {
    visibility: hidden;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }
}

@keyframes slideOutDown {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  to {
    visibility: hidden;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }
}

.slideOutDown {
  -webkit-animation-name: slideOutDown;
  animation-name: slideOutDown;
}

@-webkit-keyframes slideOutLeft {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  to {
    visibility: hidden;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
}

@keyframes slideOutLeft {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  to {
    visibility: hidden;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
}

.slideOutLeft {
  -webkit-animation-name: slideOutLeft;
  animation-name: slideOutLeft;
}

@-webkit-keyframes slideOutRight {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  to {
    visibility: hidden;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
}

@keyframes slideOutRight {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  to {
    visibility: hidden;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
}

.slideOutRight {
  -webkit-animation-name: slideOutRight;
  animation-name: slideOutRight;
}

@-webkit-keyframes slideOutUp {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  to {
    visibility: hidden;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }
}

@keyframes slideOutUp {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  to {
    visibility: hidden;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }
}

.slideOutUp {
  -webkit-animation-name: slideOutUp;
  animation-name: slideOutUp;
}

.animated {
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}

.animated.infinite {
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
}

.animated.delay-1s {
  -webkit-animation-delay: 1s;
  animation-delay: 1s;
}

.animated.delay-2s {
  -webkit-animation-delay: 2s;
  animation-delay: 2s;
}

.animated.delay-3s {
  -webkit-animation-delay: 3s;
  animation-delay: 3s;
}

.animated.delay-4s {
  -webkit-animation-delay: 4s;
  animation-delay: 4s;
}

.animated.delay-5s {
  -webkit-animation-delay: 5s;
  animation-delay: 5s;
}

.animated.fast {
  -webkit-animation-duration: 800ms;
  animation-duration: 800ms;
}

.animated.faster {
  -webkit-animation-duration: 500ms;
  animation-duration: 500ms;
}

.animated.slow {
  -webkit-animation-duration: 2s;
  animation-duration: 2s;
}

.animated.slower {
  -webkit-animation-duration: 3s;
  animation-duration: 3s;
}

@media (prefers-reduced-motion) {
  .animated {
    -webkit-animation: unset !important;
    animation: unset !important;
    -webkit-transition: none !important;
    transition: none !important;
  }
} 

/* End */


/* Start:/local/templates/softmajor/styles.css?16381936071202*/

.callout{
color: #333;
display: block;
border-left: 1px solid #000;
padding: 1.2em 0 .5em 30px;
font-style: italic;
font-weight: bold;
margin-bottom: 25px;
}

.www-link {
    position: relative;
    padding-left: 61px;
    overflow: visible;
    padding-bottom: 20px;
}
.www-link:before {
	content: 'www';
	position: absolute;
	top: 0px;
	left: 0px;
	background: white;
	padding: 10px 4px 10px;
	text-align: center;
	border-radius: 55%;
	font-size: 14px;
	color: #67428a;
	font-family: 'GT-Walsheim-Pro-Medium';
	width: 40px;
	height: 39px;
	box-sizing: border-box;
}
@media (max-width: 450px) {
.www-link {
	padding-left: 41px;
}
.www-link:before {
	width: 30px;
	height: 30px;
	font-size: 11px;
	padding: 8px 0px;
}
}

.video {
    position: relative;
    padding-bottom: 25.25%;
    padding-top: 30px;
    height: 0;
    overflow: hidden;
	width: 48%;
	display: block;
	float: left;
	margin-bottom: 10px;
	margin-right: 10px;
}

@media (max-width: 640px) {
	.video {
		padding-bottom: 51.25%;
		width: 100%;
		margin: 0;
	}
}

@media (max-width: 340px) {
	.video {
		padding-bottom: 55.25%;
	}
}

.video iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
/* End */
/* /local/templates/softmajor/style.css?1691066253106677 */
/* /local/templates/softmajor/resize.css?169106644930503 */
/* /local/templates/softmajor/assets/fancybox/jquery.fancybox.css?15627325644949 */
/* /local/templates/softmajor/assets/owlslider/owl.carousel.css?156273256481669 */
/* /local/templates/softmajor/styles.css?16381936071202 */
