html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    vertical-align: baseline;
    outline: 0!important;
}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
    display: block;
}
body {
    line-height: 1;
    margin: 0;
    padding: 0 0 40px 0;
    font-family: 'helvetica neue', helvetica, arial, sans-serif;
    color:#555555;
    font-weight: 200 !important;
    height: 738px;
    max-height: 738px;
    min-height: 738px;
    min-width: 1200px;
    overflow: auto;
}
section {
	height: 619px;
}
ol, ul, li {
    list-style: none;
}
blockquote, q {
    quotes: none;
}
blockquote:before, blockquote:after, q:before, q:after {
    content: none;
}
table {
    border-collapse: collapse;
    border-spacing: 0;
}
a, a:active, a:focus{
    color: #686868;
    text-decoration: none;
}
.contacts img{
    max-width: inherit;
}
a:hover{
    color:#e63737;
    text-decoration: none;
}
a.active {
    color: #e63737;
}
::selection {
	background: transparent;
}
#contacts_block li::selection, #contacts_block b::selection, .main-page-text-full::selection, .main-page-text-full p::selection, .main-page-text-full h2::selection, .main-page-text-full strong::selection, .main-page-text-full ul::selection, .main-page-text-full ul li::selection, .main-page-text-full .block-text-span::selection, .services p::selection, .services h1::selection, .services h2::selection, .services h3::selection, .services ul::selection, .services ul li::selection, .sidebar::selection, .sidebar h2::selection {
background: #999; /* Safari */
color: #fff;
}
header, footer, section{
    max-width: 1188px;
    margin: 0 auto;
    position: relative;
}
.ui-page.ui-page-theme-a.ui-page-active {
    left: 50%;
    margin-left: -599px;
    margin-top: -372px;
    overflow: hidden;
    position: absolute;
    max-height: 750px;
    min-height: 750px !important;
    top:50%;
    min-width: 1196px;
}
@media all and (max-height: 750px) and (max-width: 1200px){
    .ui-page.ui-page-theme-a.ui-page-active {
        position: static;
        margin: 0 auto;
    }
}
/*header*/
header{
    padding: 15px 0;
}
.logo{
    display: block;
    text-align: center;
    width: 295px;
}
ul.topnav {
    position: absolute;
    right: 0;
    bottom: 15px;
    display: inline-block;
	margin-bottom: -3px;
}
ul.topnav li{
    display: inline-block;
    margin-right: 18px;
}
ul.topnav li:last-child{
    margin-right: 0;
}
ul.topnav li a {
    font-family: helvetica,arial,sans-serif;
    font-size: 15px;
    text-transform: uppercase;
}
ul.topnav li a.active{
    color: #e63737;
}

/*blocks*/
.blocks-wrap{
    max-height: 588px;
    min-height: 588px;
    overflow-y: hidden;
}
.details-block.row,
.details-block{
    background: none repeat scroll 0 0 #ECECEC;
    padding: 3px 3px 0px 3px;
    margin-left: -3px;
}
.details-block.details-item{
    width: 1188px;
    padding: 0;
}
.details-block.details-item .item-wrap img{
    padding-bottom: 1px;
    padding-right: 2px;
    padding-top: 3px;
    width: 890px;
}
.row{
    margin: 0;
    width: 1190px;
}
.row [class*="span"]{
    margin-left: 3px;
    margin-bottom: 3px;
}
.row [class*="span"]:nth-child(4n+1) {
    margin-left: 0;
}
.block{
    position: relative;
}
.block.span4 {
    background: none repeat scroll 0 0 #ececec;
    line-height: 0;
    max-width: 295px;
    min-height: 193px;
    min-width: 295px;
}
.block.span4.block-empty{
    cursor: default;
}
.details-block .block.span4{
    background: none repeat scroll 0 0 #FFFFFF;
}
.video-blocks .block.span4:after,
.video-blocks li a:after{
    background: url('img/video-hover.png') no-repeat center center rgba(0,0,0,0.4);
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    content: '';
    -webkit-transition: opacity .3s ease-in;
    -moz-transition: opacity .3s ease-in;
    -o-transition: opacity .3s ease-in;
    -ms-transition: opacity .3s ease-in;
    transition: opacity .3s ease-in;
    opacity:0;
}
.video-blocks .block.span4:hover:after,
.video-blocks li:hover a:after{
    display: block;
    opacity: 1;
}
.video-blocks .block-empty.block.span4:hover:after{
    display: none;
}
.block.span4.block-text{
    min-height: 153px;
	position: relative;
}
.block.span4.block-text:after {
	content: '';
    -webkit-transition: opacity .3s ease-in;
    -moz-transition: opacity .3s ease-in;
    -o-transition: opacity .3s ease-in;
    -ms-transition: opacity .3s ease-in;
    transition: opacity .3s ease-in;
	background: #ececec url('img/quote_hover.png');
	text-align: center;
	font-size: 20px;
	line-height: 26px;
	position: absolute;
	top: 0;
	left: 0;
	height: 122px;
	padding-top: 70px;
	width: 295px;
	opacity:0;
	font-weight: 100 !important;
	font-family: helvetica,arial,sans-serif;
}
.block.span4.block-text:hover:after {
	display: block;
	opacity: 1;
}
.block span.caption,
li span.caption{
	font-size: 14px;
    bottom: 0;
    color: #FFFFFF;
    padding: 15px 5px 10px 0;
    position: absolute;
    right: 0;
    text-align: right;
    min-width: 285px;
	font-weight: 200;
    /*
    background: -moz-linear-gradient(top,  rgba(0,0,0,0.0) 0%, rgba(0,0,0,0.6) 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(0,0,0,0.0)), color-stop(100%,rgba(0,0,0,0.6)));
    background: -webkit-linear-gradient(top,  rgba(0,0,0,0.0) 0%,rgba(0,0,0,0.6) 100%);
    background: -o-linear-gradient(top,  rgba(0,0,0,0.0) 0%,rgba(0,0,0,0.6) 100%);
    background: -ms-linear-gradient(top,  rgba(0,0,0,0.0) 0%,rgba(0,0,0,0.6) 100%);
    background: linear-gradient(to bottom,  rgba(0,0,0,0.0) 0%,rgba(0,0,0,0.6) 100%);
    */
    -webkit-transition: opacity .3s ease-in;
    -moz-transition: opacity .3s ease-in;
    -o-transition: opacity .3s ease-in;
    -ms-transition: opacity .3s ease-in;
    transition: opacity .3s ease-in;
    opacity: 0;
	font-family: helvetica,arial,sans-serif;
}
.block span.caption sup,
li span.caption sup{
    font-size: 60%;
}
.carousel .caption {
    font-size: 100%;
}
.block:hover span.caption,
li:hover span.caption{
    opacity: 1;
}
.white-background {
	color: #666 !important;
}
.block-text.block.project{
    line-height: 0;
}
.block-text.block.span4{
    padding: 16px;
    min-width: 263px;
    max-width: 263px;
    background: #ececec;
    font-size: 15px;
    color: #555555;
    line-height: 20px;
    font-weight: 200;
	font-family: helvetica,arial,sans-serif;
}
.block-text-span,
.block-text.block.span4 span{
    display: block;
    text-align: right;
    width: 100%;
    margin-bottom: 0;
    margin-top: 1px;
    margin-left: 0;
}
.block-text-span {
	font-weight: 400;
	font-family: helvetica,arial,sans-serif;
}
.signature {
	position: absolute;
	bottom: 0px;
	right: 0px;
	width: auto;
	display: inline;
	margin: 0;
	padding: 0;
}


/*main-page*/
.main-page-text-full {
    font-size: 14px;
    line-height: 19px;
    position: relative;
    z-index: 9999;
}
.main-page-text-full p{
    margin-bottom:20px;
}
.main-page-text-full h2, .services h2 {
    font-size: 24px;
    line-height: 24px;
    margin-bottom: 15px;
    text-align: center;
	font-weight: 400;
	font-family: helvetica,arial,sans-serif;
}
.main-page-text-full .block-text-span {
	margin-top: -17px;
}
.main-page-text-full ~ .close{
    right: 10px;
}
.main-page-text-full strong {
	font-weight: 500;
	font-family: helvetica,arial,sans-serif;
}
.main-page-text-full ul, .main-page-text-full li {
	width: 100%;
	display: block;
}
/*sidebar*/
.sidebar {
 /*   float: left; */
    padding: 60px 15px 20px 20px;
    line-height: 27px;
    font-size: 15px;
    color:#555;
    max-height: 485px;
	text-align: center;
}
.sidebar.scrolling-sidebar{
    padding: 0;
    max-height: 588px;
    min-height: 588px;
    margin-right: -4px;
    width: 299px;
}
.sidebar h2{
    line-height: 24px;
    color:#555;
}
.contacts {
	background: #ececec;
	height: 585px;
}
.contacts .sidebar {
	width: 295px;
	text-align: left;
}
.contacts h2 {
    margin-top: 30px;
}
.contacts h2:first-child{
    margin-top: 0;
}
#map-wrap{
	position: absolute;
	background-color: rgb(229, 227, 223);
	overflow: hidden;
	width: 891px;
	height: 585px;
	right: 0;
	top: 0;
    border-left: 3px solid #FFFFFF;
}
#contacts_block {
	position: absolute;
	bottom: 2px;
	left: 0;
	z-index: 20;
}
#contacts_block li {
	display: inline-block;
	font-size: 15px;
	margin-right: 10px;
}
#contacts_block b {
	font-weight: 400;
}



/*"popup"*/
.active-field {
    background: none repeat scroll 0 0 #ececec;
    height: 545px;
    left: 50%;
    margin-left: -594px;
    position: absolute;
    top: 108px;
    width: 1150px;
    z-index: 999;
    display: none;
    padding: 20px; 
}
.close {
    bottom: -25px;
    color: #686868;
    float: none;
    font-size: 11px;
    position: absolute;
    right: 0;
    text-transform: uppercase;
    opacity: 1;
	font-weight: normal;
}
.close:hover {
	color: #e63737;
	opacity: 1;
}
.close:before {
    background: url("img/close-hover.png") 0 0 rgba(0, 0, 0, 0);
    content: "";
    display: block;
    height: 10px;
    left: -16px;
    position: absolute;
    top: 4px;
    width: 10px;
}
.close:hover:before {
	background-position: 0 -10px;
}
.active-field > .close {
	margin-bottom: -10px;
	margin-right: -10px;
}
.overlay.close {
    background: none repeat scroll 0 0 rgba(0, 0, 0, 0);
    height: 100%;
    left: 0;
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 1;
}
/*pagination*/
.pagination-control {
    text-align: right;
    margin-top: 11px;
    z-index: 9;
    position: relative;
}
.connected-carousels .pagination-control{
    text-align: left;
}
.pagination-control > a{
    display: inline-block;
    margin-right:15px;
    vertical-align: top;
    line-height: 13px;
}
.pagination-prev,
.pagination-next{
    font-size: 0!important;
    height: 12px!important;
    vertical-align: top!important;
    width: 8px!important;
    z-index: 19;
    position: relative;
    display: inline-block!important;
    top: 1px;
}
.connected-carousels .pagination-control > a.pagination-prev{
    float: left;
}
.pagination-control > a.pagination-prev{
    background: url("img/arrows-hover.png") no-repeat scroll left top rgba(0, 0, 0, 0)!important;
}
.pagination-control > a.pagination-next {
    background: url("img/arrows-hover.png") no-repeat scroll right top rgba(0, 0, 0, 0)!important;
    margin-right: 2px;
}
.connected-carousels .pagination-prev,
.connected-carousels .pagination-next{
    position: static!important;
}
.pagination-control > a.pagination-prev:hover {
    background: url("img/arrows-hover.png") no-repeat scroll 0 -28px rgba(0, 0, 0, 0)!important;
}
.pagination-control > a.pagination-next:hover {
    background: url("img/arrows-hover.png") no-repeat scroll right -28px rgba(0, 0, 0, 0)!important;
}
a.prev.prev-stage.ui-link.project-nav {
	display: block;
	width: 445px;
	height: 555px;
	background: transparent;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
}
a.next.next-stage.ui-link.project-nav {
	display: block;
	width: 445px;
	height: 555px;
	background: transparent;
	position: absolute;
	top: 0;
	right: 0;
	z-index: 1;
}

/*jQuery mobile*/
.ui-loader {
    display: none;
}




/*jCarousel*/
/** Stage container **/

.connected-carousels .stage {
    width: 1190px;
    margin: 00px auto;
    position: relative;
}

.connected-carousels .photo-credits {
    position: absolute;
    right: 15px;
    bottom: 0;
    font-size: 13px;
    color: #fff;
    text-shadow: 0 0 1px rgba(0, 0, 0, 0.85);
    opacity: .66;
}

.connected-carousels .photo-credits a {
    color: #fff;
}

/** Navigation container **/

.connected-carousels .navigation {
    max-width: 300px;
    margin: 0px auto;
    position: relative;
    float: left;
    z-index: 9;
}

/** Shared carousel styles **/

.connected-carousels .carousel {
    overflow: hidden;
    position: relative;
}

.connected-carousels .carousel ul {
    position: relative;
    list-style: none;
    margin: 0;
    padding: 0;
}
.carousel.carousel-stage > ul {
    width: 20000em;
}
.connected-carousels .navigation .carousel ul {
    width: 300px;
    height: 20000em;
}

.connected-carousels .carousel-stage > ul > li {
    float: left;
	width: 890px;
	text-align: center;
	background: #ececec;
    min-height: 585px;
}
.connected-carousels .carousel-stage .projekktor li {
	background:auto;
}
.carousel.carousel-stage.fullscreen-carousel li {
    max-height: 585px;
    max-width: 890px;
}
.connected-carousels .carousel li {
    position: relative;
}

.carousel ul .expanded-info{
    display: none;
}

#info-container {
    background: none repeat scroll 0 0 #ECECEC;
    font-size: 15px;
    position: absolute;
    top: 0;
    height: 100%;
    display: none;
    z-index: 9;
    width: 295px;
}
/** Stage carousel specific styles **/

.connected-carousels .carousel-stage {
    height: 585px;
    width: 890px;
    margin-left: 298px;
	position: relative;
	z-index: 2;
}
.carousel.carousel-stage img {
    max-height: 586px;
    max-width: 891px;
    cursor: pointer;
}

.carousel.carousel-stage.fullscreen-carousel img {
    height: 100%;
    max-height: 100%;
    max-width: 100%;
    width: 100%;
}
/** Navigation carousel specific styles **/

.connected-carousels .carousel-navigation {
    height: 585px;
    width: 295px;
    background: #fff;
}

.connected-carousels .carousel-navigation li {
    cursor: pointer;
    margin-bottom: 3px;
    -webkit-transition: opacity .3s ease-in;
    -moz-transition: opacity .3s ease-in;
    -o-transition: opacity .3s ease-in;
    -ms-transition: opacity .3s ease-in;
    transition: opacity .3s ease-in;
    opacity: 1;
}

.connected-carousels .carousel-navigation li.active {
    opacity: 0.75;
}

.connected-carousels .carousel-navigation li img {
    display: block;
    max-height: 193px;
    max-width: 295px;
}

.connected-carousels .carousel-navigation li.active img {
}

/** Stage carousel controls **/

.connected-carousels .prev-stage,
.connected-carousels .next-stage {
    display: none;
    position: absolute;
    top: 0;
    width: 100%;
    height: 100%;
    color: #fff;
    background: none;
}
.connected-carousels .next-stage *{
    display: none;
}
.connected-carousels .prev-stage {
    left: 0;
}

.connected-carousels .next-stage {
    right: 0;
}

.connected-carousels .prev-stage.inactive,
.connected-carousels .next-stage.inactive {
    display: none;
}

.connected-carousels .prev-stage span,
.connected-carousels .next-stage span {
    display: none!important;
    position: absolute;
    top: 50%;
    width: 30px;
    height: 30px;
    text-align: center;
    background: #4E443C;
    color: #fff;
    text-decoration: none;
    text-shadow: 0 0 1px #000;
    font: 24px/27px Arial, sans-serif;
    -webkit-border-radius: 30px;
    -moz-border-radius: 30px;
    border-radius: 30px;
    -webkit-box-shadow: 0 0 2px #999;
    -moz-box-shadow: 0 0 2px #999;
    box-shadow: 0 0 2px #999;
}

.connected-carousels .prev-stage span {
    left: 20px;
}

.connected-carousels .next-stage span {
    right: 20px;
}

.connected-carousels .prev-stage:hover span,
.connected-carousels .next-stage:hover span {
    display: block;
}

/** Navigation carousel controls **/

.connected-carousels .prev-navigation,
.connected-carousels .next-navigation {
    display: block;
    position: absolute;
    color: #fff;
    text-decoration: none;
}

.connected-carousels .prev-navigation {
    top: 2px;
    text-indent: 6px;
    width: 295px;
    z-index: 10;
    background: url('img/slider-arr-up.png') no-repeat center transparent;
    height: 30px;
    font-size: 0;
    -webkit-transition: opacity .3s ease-in;
    -moz-transition: opacity .3s ease-in;
    -o-transition: opacity .3s ease-in;
    -ms-transition: opacity .3s ease-in;
    transition: opacity .3s ease-in;
    opacity:0;

}

.connected-carousels .next-navigation {
    text-indent: 20px;
    bottom: 20px;
    width: 295px;
    z-index: 10;
    height: 30px;
    background: url('img/slider-arr-down.png') no-repeat center transparent;
    font-size: 0;
    -webkit-transition: opacity .3s ease-in;
    -moz-transition: opacity .3s ease-in;
    -o-transition: opacity .3s ease-in;
    -ms-transition: opacity .3s ease-in;
    transition: opacity .3s ease-in;
    opacity:0;
}

.connected-carousels .prev-navigation.inactive,
.connected-carousels .next-navigation.inactive {
    cursor: default;
}

.navigation:hover  .next-navigation,
.navigation:hover  .prev-navigation{
    opacity: 0.85;
}
.navigation:hover  .next-navigation.inactive,
.navigation:hover  .prev-navigation.inactive{
    opacity: 0;
}
.connected-carousels .prev-stage {
    display: none;
}
.carousel-pagination.pagination-control{
    margin-bottom: 0;
    margin-top: 0;
    float: left;
    max-width: 90%;
}
.connected-carousels .pagination.pagination-control{
    margin-top: -5px;
    float: left;
    position: absolute;
    right: 0;
}
.connected-carousels .close {
    bottom: 0px;
    position: relative;
    right: 0;
    float: left;
}
.connected-carousels .close:before{
    top:1px;
}

.connected-carousels .navigation .caption {
    display: none;
}
.video-carousel li:hover .caption{
    display: block;
    padding-top: 0px;
    padding-bottom: 0px;
    font-size:100%
}
img#player_a_media_image {
	top: 0 !important;
}


/*google maps*/
.gm-style-iw,
.gm-style-iw > div{
    width: 174px!important;
    overflow: hidden!important;
    text-align: center!important;
}
.gm-style-iw strong {
    font-weight: bold;
	font-family: helvetica,arial,sans-serif;
}
.gm-style-iw ~ div{
    display: none;
}

.zoomin, .zoomout {
    border-radius: 8px;
    cursor: pointer;
    height: 30px;
    position: absolute;
    top: 5px;
    width: 30px;
    z-index: 99;
}
.zoomin{
    background: url("img/zoom.png") no-repeat scroll top left;
    right: 40px;
}
.zoomout{
    background: url("img/zoom.png") no-repeat scroll top right;
    right: 5px;
}
.zoomin:hover{
    background: url("img/zoom.png") no-repeat scroll bottom left;
    right: 40px;
}
.zoomout:hover{
    background: url("img/zoom.png") no-repeat scroll bottom right;
    right: 5px;
}


/* Services */
.services {
	height: 615px;
	line-height: 23px !important;
	font-size: 15px;
}
.services p {
	margin-bottom: 15px;
}
.services ul {
	margin-top: 15px;
	margin-bottom: 20px;
}
.services li {
	margin-bottom: 10px;
	list-style: none;
}
.services h1 {
	font-size: 24px;
	display: block;
	text-align: center;
	font-weight: normal;
	margin-top: 0;
}
.services h2 {
	display: block;
	margin-top: 20px;
	font-size: 20px;
}
.details-block.details-item {
	height: 585px;
}