* { margin: 0; padding: 0; font-family: 'Raleway', Arial, sans-serif; }

body {  font-size: 15px;  background: #fff; }

h1 { color: #444; font-weight: 300; font-size: 40px; }

h2 { color: #444; font-weight: 300; font-size: 26px; }

img { border:none ;}

a { color:inherit; text-decoration: underline; }

a:hover { opacity: 0.6; }

button { margin-top: 30px; padding: 15px 30px; color:#fff; background: #333; border: none; font-weight: 700; font-size: 16px; outline: none; }

button:hover { cursor: pointer; background: #555; }

blockquote { border-left: 3px solid #000; padding: 5px 25px; color: #000; }

blockquote em { color: #777; font-size: 14px; }



.iframe-container {
	overflow: hidden;
	padding-top: 56.25%;
	position: relative;
	}
.iframe-container iframe {
	border: 0;
	height: 100%;
	left: 0;
	position: absolute;
	top: 0;
	width: 100%;
	}

.slideout-menu { position: fixed; left: 0; top: 0; bottom: 0; right: 0; z-index: 0; width: 256px; overflow-y: auto;  display: none; }

.slideout-panel { position:relative; z-index: 1; }

.slideout-open, .slideout-open body, .slideout-open .slideout-panel { overflow: hidden; }

.slideout-open .slideout-menu { display: block; }



.scrollable-panel { color: #666; position: relative; }

.container { background: #fff; margin: auto; position: relative;padding-top: 5px; max-width: 1200px; }

.container-cover { z-index: 100; width: 100%; height: 100%; position: fixed; margin-left: 200px; margin-top: 96px; }

.header { border-bottom: 1px solid #ebebeb; }

.header-container {  max-width: 1200px; margin: auto; position: relative; background: #fff;padding: 30px 55px 30px 45px;box-sizing: border-box;      -webkit-box-sizing: border-box;      -moz-box-sizing: border-box;}

.header a:hover { opacity: initial; }

.header .mobile-nav-opener { display: none; }

.header .logo { display: inline-block;  }

.header .nav { position: absolute; display: inline-block; list-style: none; text-align: right;right: 55px;}

.header .nav .nav-element { display: inline-block; margin-right: 5px; height: 85px; }

.header .nav a { font-size: 16px; padding: 29px 5px; display: inline-block; position: relative; text-decoration: none; }

.header .nav a:hover { cursor: pointer; color: #000; opacity: 1; }

.header .nav .sub { display:none; width: 143px; position: absolute; padding: 6px 0px 6px 6px; margin: -16px 7px; text-align: left; border-bottom: 3px solid rgba(0, 0, 0, 0.52); background: #fff; z-index: 10; box-shadow: 0 2px 2px rgba(0, 0, 0, 0.3);}

.header .nav .sub a {font-size: 14px;text-transform: none;padding: 5px 10px 5px 7px;margin: 0;}

.header .nav .sub a:hover { margin: 0; }

.header .nav .s { color: #000000; font-weight: 700; }



.top-slider {  margin: auto; position: relative;}

.slider-nav { top: 0; position: absolute; margin: 25px 20px; }

.top-slider .slider-nav a { width: 11px; height: 11px; display: block; background: #666; background: rgba(0, 0, 0, 0.5); cursor: pointer; -webkit-box-shadow: inset 0 0 3px rgba(0, 0, 0, 0.3); -moz-box-shadow: inset 0 0 3px rgba(0, 0, 0, 0.3); -o-box-shadow: inset 0 0 3px rgba(0, 0, 0, 0.3); box-shadow: inset 0 0 3px rgba(0, 0, 0, 0.3); -webkit-border-radius: 20px; -moz-border-radius: 20px; border-radius: 20px; margin: 0 6px;      display: inline-block;}

.top-slider .slider-nav a:hover { background: #333; background: rgba(0, 0, 0, 0.7); }

.top-slider .slider-nav a.active { background: #000 !important; background: rgba(0, 0, 0, 0.9) !important; cursor: default; }

.top-slider .slides li { list-style:none; position: relative; display:none; }

.top-slider .slides li a:hover { opacity: 1; }

.top-slider .slides img { width: 100%; }



.latest-news {  clear: left; position: relative; padding: 0 65px; height: 340px; margin-top: 30px;}

.news .left { float: left; width: 500px; }

.news .latest-item h1 { line-height: 54px; margin-bottom: 25px; }

.news .latest-item { display: none; position: absolute;}

.news .latest-item.item-visible { display: inline-block; }

.news .right { margin: 20px 180px; float: right; }

.news .timeline { height: 320px; width: 3px; background: #ccc; position: absolute; }

.news .node { height: 100px; width: 200px; }

.news .node::before { content: " "; border: 3px solid #CCC; width: 20px; height: 20px; border-radius: 50%; -moz-border-radius: 50%; -webkit-border-radius: 50%;  background-color: #fff;  margin: 0 -12px; position: absolute; cursor: pointer; }

.news .node .node-date { font-size: 16px; font-weight: 700; color: #888; position: absolute; margin: 24px 0 0 38px; display: none; top: 0;}

.news .node.node-visible .node-date { display: inline-block; }

.news .node.node-visible::before { background: #CCC !important; }

.news .node .node-image { width: 340px; margin: 70px 0 0 38px; position: absolute; top: 0; display: none; }

.news .node.node-visible .node-image { display: inline-block; }

.news.all-news .timeline { left: 50%; height: 100%; }

.news.all-news { height: auto; padding-bottom: 40px;position: relative;}

.all-news .node { width: 50%; text-align: right; height: auto; }

.news.all-news .node h1 { font-size: 22px; margin: 8px 40px 0;}

.news.all-news .node p { margin: 10px 40px 50px; }

.news.all-news .node .node-date { display: inline-block; position: relative; margin: 3px 38px 0 0; text-align: right; width: 200px;}

.all-news .node:nth-of-type(2n+1) { text-align: left; margin-left: 50%; }

.news.all-news .node:nth-of-type(2n+1) .node-date { margin: 3px 0 0 38px; text-align: left; }

.news.all-news .node::before {left:50%;}



.our-clients { padding: 65px 0;  border-top: 1px solid #ddd;  }

.our-clients h1, .our-clients p { text-align: center; margin-top: 10px; }

.our-clients .client-list { margin-top: 30px; margin-left: 70px; width: 90%; width: calc(100% - 140px); width: -webkit-calc(100% - 140px); width: -moz-calc(100% - 140px); box-sizing: border-box; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; overflow: hidden; position: relative; height: 135px;}

.client-list .client-list-inner { width: 20000px; position: relative; }

.our-clients .client-list li { list-style: none; float: left; position: relative; width: 170px; text-align: center; }

.our-clients .client-list li img { width: 130px; }



.newsletter { background: #333; color: #fff; padding: 40px 0; text-align: center; margin: auto;}

.newsletter h1 { color: #fff; }

.newsletter button { background: #ddd; color:#444; }

.newsletter button:hover { background: #eee; }



.content {padding: 50px;}

.content h1 { margin-bottom: 30px; text-align: left;}

.content p { font-size: 16px; }

.list { border-left: 5px solid #CCC; display: block; padding-left: 20px; margin-left: 30px; line-height: 30px; }




.table { height: auto; }

.table-item {margin: 10px;width: 250px;display: inline-block;overflow: hidden;vertical-align: top;}

.table-item .table-img {height: 140px;overflow: hidden;margin: 0 0 10px;}

.table-item img {min-height: 140px;min-width: 250px;transition: all 0.2s;-webkit-transition: all 0.2s;-moz-transition: all 0.2s;-o-transition: all 0.2s;position: relative;}

.table-item a img:hover { transform: scale(1.1); -webkit-transform: scale(1.1); -moz-transform: scale(1.1); cursor: pointer; }

.table-item em { font-style: normal;}



.news-archive .node h1 { font-size: 20px; margin: 5px 0; }

.news-archive .node .node-date { font-size: 14px; font-weight: bold; }

.news-archive .node p { font-size: 14px;}

.news-archive .node.with-image p, .news-archive .node.with-image h1 {  padding-right: 200px; }

.news-archive .node { padding-bottom: 30px; position: relative;}

.news-archive .node img {height: 150px;float: right;margin-left: 30px;margin-top: -50px;position: relative;}



.content.faq {height: 800px;}

.faq .first-stage { border-right: 1px solid #CCC; width: 30%; height: 500px; padding: 30px; font-size: 18px; display: inline-block; float: left; overflow: hidden;}

.faq .first-stage li { list-style: none; margin: 40px 0; background: #eee; padding: 20px; width: 100%; transition: all 0.2s; -webkit-transition: all 0.2s; -moz-transition: all 0.2s; }

.faq .first-stage li:hover, .faq .first-stage li.s { background: #999; color: #fff; cursor: pointer; margin-left: 40px; }

.faq .second-stage {display:none;width: 50%;left: 41%;position: absolute;}

.faq .second-stage b { display: block; }

.sitemap li { list-style: none; padding-left: 15px; }

.sitemap a { text-decoration: none; }



.next-previous { background: #f7f7f7; border-top: 1px solid #eeeeee; border-bottom: 1px solid #eee; margin: 25px 0 0; padding: 14px 35px 30px; font-weight: bold; }

.celaction2d, .animatic {  text-align: justify; }

.celaction2d blockquote, .animatic blockquote { font-size: 20px; width: 400px; }

.celaction2d.features li span a, .animatic.features li span a { display: list-item; text-decoration: none; color: inherit; opacity: 1; list-style-type: circle; list-style-position: outside; }

.content.dark { border-top: 1px solid #ededed; border-bottom: 1px solid #ededed; }



.footer { padding: 25px 0; text-align: center; font-size: 16px; background: #fff;margin: auto;}

.footer .social_network { width:30px; margin-right: 10px; cursor: pointer; }

.footer .social_network:hover { opacity: 0.6; }



@media (max-width: 1090px) {

html { overflow-x: hidden; }

.header-container { padding: 30px 25px; }

.header .nav .nav-element { margin-right: 2px;}

.header .nav a { font-size: 14px; }

.latest-news { overflow: hidden; }

.latest-news .left { margin: 60px 20px 0 60px; }

.latest-news .right { float: none; margin: 20px 0; }

.latest-news .right .timeline { height: 100%; }

.latest-news .right .node .node-date { margin: 22px 0 0 125px; left: 0; }

.latest-news .right .node .node-image { margin: 310px 60px 0;display: none !important; }

.latest-news .top_button { position: absolute !important; margin: 0 !important; right: 40px; top: 0; }

}



@media (max-width: 950px) {

.container { padding-top: 96px; }

.header-container { height: 96px;}

.header.headroom--top { display: block !important; }

.header.headroom { transition: transform 200ms linear; -webkit-transition: transform 200ms linear; -moz-transition: transform 200ms linear; height: 96px;display: none;width: 100%;      z-index: 6;      position: fixed;      top: 0;}

.header.headroom--pinned { transform: translateY(0%); -webkit-transform: translateY(0%); -moz-transform: translateY(0%); display:block; }

.header.headroom--unpinned { transform: translateY(-100%); -webkit-transform: translateY(-100%); -moz-transform: translateY(-100%); display:block; }

.header .mobile-nav-opener { display: inline-block; margin: 10px 0; cursor: pointer; float: left; }

.header .mobile-nav-opener img { height: 15px; }

.header .logo img { position: absolute; left: 50%; margin-left: -60px; width: 120px; height: auto; margin-top: -6px;}

.top-slider { margin-top: 96px; background-color: #fff;}

.slider-nav { margin: 15px 0 0; position: relative; text-align: center; }

.nav { display: none; overflow: auto; -webkit-overflow-scrolling: touch; background: #eee; right: initial; position: fixed; left: 0; margin: 0; top: 0; width: 200px; padding: 20px 0 0; height: 100%;}

.nav .s { color: #000; font-weight: 700; }

.nav a { padding: 0 18px; color: #777; line-height: 21px; text-decoration: none; display: inline-block; margin-bottom: 8px;}

.nav a:hover { color: #000; cursor: pointer; opacity: 1; }

.nav .nav-element { margin: 0 0 16px 1px; height: auto; display: block; }

.nav .sub { display: block !important; background: none; position: relative; border: none; margin: 7px 5px 15px; }

.nav-container { position: relative; -webkit-transform: translate3d(0,0,0); }

.news.all-news { padding: 0 30px; }

button.top_button { position: relative !important; right: initial; left: 50%; margin-left: -100px; width: 200px; font-size: 15px; font-weight: 300; background: #ddd; color: #000; padding: 10px; }

.latest-news { margin-top:0; }

.news-archive .node img { margin-top: 10px; margin-bottom:10px; }

.latest-news .top_button { left: initial; }

.content.faq {height: auto;}

.faq .first-stage { width: 100%; padding: 0; height: auto; border: none; float: none; }

.faq .second-stage { position: relative; left: initial; height: auto; width: auto; margin-top: 30px;}

.faq .first-stage li { transition: none; -webkit-transition: none; -moz-transition: none; width: auto; font-size: 14px; text-align: center; display: inline-block; padding: 20px 30px; margin: 0 10px 15px 0;}

.faq .first-stage li:hover, .faq .first-stage li.s { margin: 0 10px 15px 0; }

.celaction2d.content img, .animatic.content img { float: none !important; display: block; margin: 25px 0 0 !important; max-width: 100%;}

.celaction2d.content blockquote, .animatic.content blockquote { float: none !important; margin: 25px 0 0 !important; max-width: 100%;}

.next-previous span { display: block; float: none !important; }

.next-previous { padding: 14px 35px 15px; }

}



@media (max-width: 670px) {

.latest-news .left { width: auto; }

.faq.content { padding: 50px 25px; }

}



@media (max-width: 570px) {

.latest-news .right .node .node-image { margin-top: 380px; }

.news.all-news { padding: 0 5px; }

.news.all-news .node p { margin-left: 20px; }

.news.all-news .node.node-right p { margin-left: 40px; margin-right: 20px; }

.latest-news .right .node .node-image { margin-top: 440px; }

.latest-news .right .node .node-date { margin-top: 90px; }

.latest-news { margin-top: 0; padding-top: 70px; }

.latest-news .top_button { left: 50%; margin: 15px -100px !important; }

.flex-control-nav { text-align: center; position: relative; float: right; }

}



@media (max-width: 500px) {

.latest-news { padding-left: 35px; }

.latest-news .latest-item h1 { font-size: 21px; font-weight: bold; line-height: 20px; margin-bottom: 20px; }

.latest-news .right .node .node-date { font-size: 14px; font-weight: 700; margin: 83px 0 0 94px; }

.latest-news .right .node .node-image { margin-top: 420px; }

.latest-news .top_button { position: absolute !important; right: initial; }

.news.all-news .timeline { left: 40px; }

.all-news .node { width: 100%; text-align: left; margin-left: 0 !important; }

.news.all-news .node:before { float: none !important; margin: 0 28px !important; left: 0;}

.news.all-news .node .node-date { margin: -22px 0 0 65px !important; text-align: left !important; }

.news.all-news .node h1 { margin: 3px 10px 0 65px; }

.news.all-news .node p { margin: 10px 10px 30px 65px !important; }

.news-archive .node img {position: relative;height: auto;width: 100%;right: initial;margin: 15px 0;}

.news-archive .node.with-image h1, .news-archive .node.with-image p { padding-right: 0; }

a.scroll_top { position: relative !important; display: inline-block; margin: -30px 0 10px !important; text-align: center; width: 100%; font-size: 50px !important; }

.table-item{height:auto;}

.our-clients h1, .our-clients p { text-align: center; }

.our-clients .client-list { width: 100%; margin-left:0px; }

.newsletter h1 { font-size: 38px; line-height: 36px; margin-bottom: 20px; }

.about img { float: none !important; margin: 25px 0 !important; }

.faq h1 { width: auto !important; }

.footer { font-size: 14px; }

}



@media (max-width: 390px) {

.header-container { padding: 30px 20px; }

.our-clients h1, .our-clients p { margin: 15px; }

#mc_embed_signup .mc-field-group { clear: left !important; width: 100% !important; }

.content { padding: 20px 30px; }

.flex-control-nav { text-align: center; margin: 0px 0 -15px; float: none; width: 100%; left: 0px; }

.celaction2d.content h1, .animatic.content h1 { font-size: 39px; }

.celaction2d.workflow .list, .animatic.workflow .list { margin-left: 0px; }

}