@import url("https://fast.fonts.net/t/1.css?apiType=css&projectid=aad5b2df-9fb7-4df0-bf28-acce5a432213");
@font-face{
    font-family:"ITC Avant Garde Gothic W01 XLt";
    src:url("fonts/123b5137-3b00-48e9-bfec-161edb6f2377.eot?#iefix");
    src:url("fonts/123b5137-3b00-48e9-bfec-161edb6f2377.eot?#iefix") format("eot"),url("fonts/e2726b32-fedc-4803-806a-a029c705ad22.woff2") format("woff2"),url("fonts/cc19831d-e4b6-40fa-b009-45b1365dde5d.woff") format("woff"),url("fonts/67615a4b-d349-4fda-8180-f0657773c140.ttf") format("truetype");
}
@font-face{
    font-family:"ITC Avant Garde Gothic W01 Bk";
    src:url("fonts/07413afc-2280-4cfc-8860-184839a93fa4.eot?#iefix");
    src:url("fonts/07413afc-2280-4cfc-8860-184839a93fa4.eot?#iefix") format("eot"),url("fonts/6f1146c0-9c0b-4949-866d-9affc396531f.woff2") format("woff2"),url("fonts/2c50f982-bb73-4891-8d0e-587c1136c2e5.woff") format("woff"),url("fonts/abf065fe-a1ab-4013-8c49-45ce7f8ac828.ttf") format("truetype");
}

@-webkit-keyframes rotate {
  from {
  -webkit-transform: rotate(0deg);
	  }
  to {
  -webkit-transform: rotate(360deg);
	}
}
* {
	-webkit-tap-highlight-color: rgba(0,0,0,0);
}
html {
	width:100%;
	height:100%;
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
}
body {
	width:100%;
	margin:0px;
	padding:0px;
	font-family:"ITC Avant Garde Gothic W01 XLt", Helvetica, Arial, sans-serif;
	height:100%;
  	-webkit-font-smoothing: antialiased;
	-webkit-text-size-adjust:none;
    overflow-y: scroll; /* has to be scroll, not auto */
    -webkit-overflow-scrolling: touch;
}
.lt-ie7 body {
	behavior: url('csshover.htc');
	font-size: 100%;
}
ul,
li,
div,
p,
h1,
h2,
h3,
img {
	display:block;
	list-style:none;
	font-weight:normal;
	margin:0px;
	padding:0px;
	border:none;
}
a {
	text-decoration:none;
	border:none;
}
.clear {
	clear:both;
	width:100%;
	margin:0;
	padding:0;
}

#canvas{
	width:100%;
	height:100%;
}

#content{
	width:100%;
	height:100%;
	z-index:2;
    position: relative;
}
#content.loading{
	background:url(images/loader2.gif) no-repeat center left;
	background-position: 40px 50%;
	
}
#contentbox {
	margin:0 auto;
    padding: 98px;
	color:#666;
	font-size:11px;
	line-height:15px;
	letter-spacing:1px;
	width:75%;
	min-width:240px;
    text-align: center;
}
#contentbox p {
	padding-bottom:15px;
}

#contentbox a {
	color:#666;
}
#contentbox a:hover {
	color:#000;
}

#footer {
    font-family:"ITC Avant Garde Gothic W01 Bk", Helvetica, Arial, sans-serif;
    text-align: center;
    padding-right: 40px;
	padding-bottom:86px;
	letter-spacing:1px;
	z-index:101;
	font-size:11px;
	line-height:11px;
	text-transform:uppercase;
	color:rgba(102,102,102,1);
}

#footer .credits {
	display:block;
	line-height:9px;
	color:rgba(0,0,0,0.5);
}
#footer a {
	color:rgba(0,0,0,0.5);
transition: color 0.5s;
-moz-transition: color 0.5s;
-webkit-transition: color 0.5s;
-o-transition: color 0.5s;
}
#footer a:hover {
	color:rgba(0,0,0,1);
}
.site_title {
	text-align: left;
	/*padding-top:86px;
	padding-bottom:16px;*/
    height: 120px;
	letter-spacing:1px;
	z-index:200 !important;
	text-transform:uppercase;
    position: relative;
}
.hidden_menu{
    position: absolute;
    bottom: 18px;
    width: 100%;
    text-align: center;
    opacity: 0;
    display: none;
    
}
.site_title a {
	display: none;
}


#grid-container{
    padding: 120px 32px 30px 32px;
}
#grid{
    margin: 0 auto;
    max-width: 100%;
}
#grid li.one-grid-item{
    float: left;
    margin:0px 8px 16px 8px;
    width: 220px;
    height: 150px;
    overflow: hidden;
    position: relative;
}
#grid li.one-grid-item img{
    position: absolute;
    margin: auto;
    top: -9999px;
    left: -9999px;
    right: -9999px;
    bottom: -9999px;
    
    filter: gray; /* IE6-9 */
    filter: grayscale(1); /* Firefox 35+ */
    -webkit-filter: grayscale(1); /* Google Chrome, Safari 6+ & Opera 15+ */
    opacity: 0.9;
}

#grid li.one-grid-item:hover > a > img,
#grid li.one-grid-item > a.current_thumb > img{
    filter: none;
    -webkit-filter: grayscale(0);
}
#grid li.one-grid-item > a.current_thumb > img{
    opacity: 1;
}
#grid li.one-grid-item:hover > a > p,
#grid li.one-grid-item > a.current_thumb > p{
    /*display: block;*/
    display: none;
}
.thumb-title{
    font-family:"ITC Avant Garde Gothic W01 Bk", Helvetica, Arial, sans-serif;
    height: 16px;
    font-size: 11px;
    background: rgba(10, 10, 10, 0.5);
    width: 100%;
    position: absolute;
    z-index: 100;
    bottom: 0px;
    text-align: center;
    padding-top: 3px;
    display: none;
    color: #fff;
    text-transform: uppercase;
}

.show-more-project {
    text-align: center;
    text-decoration: none;
    z-index: 6;
    text-transform:uppercase;
    cursor: pointer;
}
.show-more-project.at-bottom{
    height: 120px;
    line-height: 120px;
    width: 100%;
}
#show-more-project-inner {
    position: relative;
	padding-bottom:0px;
	font-size:11px;
	letter-spacing:1px;
}
#show-more-project-inner .roll-over-darker{
    /*color: #999;*/
    color: #aaa;
}
#show-more-project-inner .roll-over-darker:hover,
.darker, .show-grid-container {
    color: #333;
}
.show-more-left,
.show-more-right{
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    width: 50%;
    white-space: nowrap;
}
.show-more-left{
    float: left;
    text-align: right;
    padding-left: 18px;
    padding-right: 40px;
    overflow-x: visible;
}
.show-more-right{
    float: right;
    text-align: left;
    padding-left: 40px;
    padding-right: 18px;
}
@media screen and (min-width:1401px) {
    .show-more-left{
        padding-right: 3%;
    }
    .show-more-right{
        padding-left: 3%;
    }
}
.show-more-left .site-name {
    margin-right: 20px;
}
.show-more-centred {
    width: 100%;
    text-align: center;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
}
.show-more-centred a, .show-more-centred span {
    margin: 0 0.35%;
}
/* title/menu font size for tablet/computer */
.show-more-left span,
.show-more-left a,
.show-more-right span,
.show-more-right a,
.show-more-centred span,
.show-more-centred a {
    font-size: 16px;
    line-height: 2;
}
.show-more-right span,
.show-more-right a {
    margin-left: 2%;
}
.show-more-right .pop-up {
    display: none;
}
.go-back {
    z-index: 10;
    color: rgba(255,255,255,0);
    background-image: url(images/rh_x.png);
    background-position:center center;
    background-repeat: no-repeat;
    background-size: 12px 12px;
    opacity: 0.4;
}
.show-more-centred .go-back {
    margin: 0 -0.6%;
}
.go-back:hover, .go-back:focus {
    opacity: 1;
}

#show-more-project-img{
    display: none;
    position: absolute;
    top: 25px;
    width: 50px;
    height: 50px;
    left: 50%;
    margin-left: -25px;
    background-image:url('images/arrow_down.png');
    background-position:center center;
    background-repeat: no-repeat;
    background-size: 40px 40px;
    opacity: 0;
}
@media screen and (min-width:636px) {
    .show-more-left span,
    .show-more-left a,
    .show-more-right span,
    .show-more-right a,
    .show-more-centred span,
    .show-more-centred a{
        font-size: 20px;
    }
    #show-more-project-img{
        top: 40px;
    }
    .go-back {
        background-size: 16px 16px;
    }
}
@media screen and (min-width:768px) {
    .show-more-left span,
    .show-more-left a,
    .show-more-right span,
    .show-more-right a,
    .show-more-centred span,
    .show-more-centred a {
        font-size: 24px;
    }
    .go-back {
        background-size: 18px 18px;
    }
}
@media screen and (min-width:1024px) {
    .show-more-left span,
    .show-more-left a,
    .show-more-right span,
    .show-more-right a,
    .show-more-centred span,
    .show-more-centred a {
        font-size: 26px;
    }
    #show-more-project-img{
        top: 50px;
    }
    .go-back {
        background-size: 20px 20px;
    }
}

#img_canvas {
	position:absolute;
    height: 100%;
}
#img_canvas,
#img_canvas .last,
#img_canvas .current {
    position: absolute;
	width:100%;
	z-index:1;
    height: 100%;
}
#img_canvas .last {
	z-index:2;
}
#img_canvas .img_box {
	position:absolute;
}
#img_canvas .img_in {
	position:absolute;
	background:url(images/loader2.gif) no-repeat center left #f0f0f0;
	overflow:hidden;
}
#img_canvas .img_in.mov {
	/*background: #f0f0f0;*/
}
#content.temp_home #img_canvas .img_in {
	background:url(images/loader2.gif) no-repeat center left #fff;
}
#content.temp_home #img_canvas .img_in.mov {
	background: #fff;
}
.temp_home ~ .show-more-project .hide-in-home {
    display: none;
}
#img_canvas .img_in.left {
	left:0;
	right:auto;
}
#img_canvas .img_in.right {
	right:0;
	left:auto;
}

#img_canvas .img_in img {
	position:absolute;
	z-index:1;
}
#img_canvas .control {
	position:absolute;
	height:90%;
	top:10%;
	z-index:100;
}
#img_canvas .control.video{
    height: 30%;
}
#img_canvas  .but_next,
#img_canvas  .but_prev {
	width: 45%;
    -webkit-backface-visibility: hidden;
    display: none;
}
#img_canvas .show-more-project.at-center{
    width: 10%;
	position:absolute;
    -webkit-backface-visibility: hidden;
    left: 45%;
    cursor: url(images/rh_thumb1.png) 30 30, pointer;
}
#img_canvas .but_next {
	right:0;
	cursor: url(images/rh_right.png) 30 30, pointer;
}
#img_canvas .but_prev {
	left:0;
    cursor: url(images/rh_left.png) 30 30, pointer;
}
#img_canvas .but_next.hasmore,
#img_canvas .but_prev.hasmore{
    display: block;
}
body.touch-device #img_canvas .control.hasmore {
    background-repeat: no-repeat;
}
body.touch-device #img_canvas .but_next.hasmore {
    background-image: url(images/rh_right.png);
    background-position: right center;
}
body.touch-device #img_canvas .but_prev.hasmore {
    background-image: url(images/rh_left.png);
    background-position: left center;
}


#temp {
	display:none;
}
#imglist{
    height: 100%;
    padding: 0px 40px;
}
#slide-show{
    height: 100%;
    position: relative;
}
.one-slide-img{
    position: absolute;
    width: 100%;
    height: 100%;
    top:0px;
    left: 0px;
    z-index: 0;
    background:url(images/loader2.gif) no-repeat center left #f0f0f0;
	background-position: 40px 50%;
    opacity: 0;
}
.one-slide-img.has_video{
    background:#fff;
}
.one-slide-img.selected{
    z-index: 10;
    opacity: 1;
}
.one-slide-img.next{
    z-index: 9;
}
.one-slide-img.nextnext{
    z-index: 8;
}
.one-slide-img img{
    display: block;
    position: absolute;
    opacity: 0;
}
.one-slide-poster{
    width: 100%;
    height: 100%;
    top: 0px;
    left: 0px;
    position: absolute;
    z-index: 2;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
}
.play_button{
    position: absolute;
    top: 50%;
    left: 50%;
    margin-top: -25px;
    margin-left: -25px;
    width:50px;
    height: 50px;
    background-image: url(images/rh_play.png);
    background-position: center center;
    background-repeat: no-repeat;
    cursor: pointer;
    background-color: rgba(0, 0, 0, 0.5);
}
.play_button:hover{
    background-color: rgba(0, 0, 0, 0.7);
}
#slide-show video{
    position: absolute;
    left: 0px;
    top: 0px;
}
#thumblist {
position:fixed;
margin:100px 0px 100px 0px;
padding:0px 30px 0 30px;
z-index:20;
top:0;
width:100%;
/*
top:0;
opacity:0;
transition: opacity 2s ;
-moz-transition: opacity 2s;
-webkit-transition: opacity 2s;
-o-transition: opacity 2s;
*/
height:100%;
background:#fff;
	display:block;
}
#thumblist.hide {
	display:none;
}
#thumblist.show {
}
#thumblist li img {
	width:60px;
	height:60px;
	position:absolute;
}

#thumblist li {
	float:left;
	width:60px;
	height:60px;
	margin-right:20px;
	margin-bottom:20px;
	opacity:0.4;
transition: opacity 0.5s;
-moz-transition: opacity 0.5s;
-webkit-transition: opacity 0.5s;
-o-transition: opacity 0.5s;
   -webkit-backface-visibility: hidden;
}
#thumblist li.selected,
#thumblist li:hover {
	opacity:1;
}
#thumblist li a {
	display:block;
	overflow:hidden;
}

/* homepage mobile slideshow */
#mobile-slide-show-wrap {
    display: none;
    box-sizing: border-box;
    width: 100svw;
    max-width: 100svw;
    padding: 0 16px;
    overflow: hidden;
}
@media screen and (orientation: landscape) {
    #mobile-slide-show-wrap {
        height: calc(100dvh - 120px);
    }
    body:has(#mobile-menu[style*="display:block"]) #mobile-slide-show-wrap,
    body:has(#mobile-menu[style*="display: block"]) #mobile-slide-show-wrap {
        height: calc(100dvh - 204px);
    }
}
body:has(#mobile-content:empty) #mobile-slide-show-wrap {
    display: block;
}
#mobile-slide-show {
    position: relative;
    width: 100%;
    height: 100%;
}
@media screen and (orientation: portrait) {
    #mobile-slide-show {
        aspect-ratio: 1.467;
    }
}
.mobile-one-slide-img {
    position: absolute;
    width: 100%;
    height: 100%;
    opacity: 0;
    background:url(images/loader2.gif) no-repeat center center #ffffff;
	background-position: center center;
    transition: opacity 750ms ease-in;
    -moz-transition: opacity 750ms ease-in;
    -webkit-transition: opacity 750ms ease-in;
    -o-transition: opacity 750ms ease-in;
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
    z-index: 0;
}
.mobile-one-slide-img.selected {
    opacity: 1;
    z-index: 1;
}
.mobile-one-slide-img img, .mobile-one-slide-img video {
    height: 100%;
    width: 100%;
    object-fit: cover;
}
@media screen and (orientation: landscape) {
    .mobile-one-slide-img img, .mobile-one-slide-img video {
        object-fit: contain;
    }
}

/* header, menu, footer */
.lt-ie9 #footer a {
color:#000;
}

.lt-ie9 #header #mainmenu li.submenu.collapse {
	opacity:1;
	display:none;
}
.lt-ie9 #header #mainmenu li.submenu.collapse.selected {
	display:block;
}
.lt-ie8 .site_title *,
.lt-ie8 #header * {
	color:#999 !important;
}
.lt-ie8 #header *:hover,
.lt-ie8 #header .selected * {
	color:#000 !important;
}

.no_js #thumblist.hide {
	display:block;
}
.no_js #thumblist {
	width:auto;
}
.no_js #footer .but_thumb_label {
	display:none;
}
.no_js #footer .but_thumb {
	display:none;
}
.lt-ie7 * {
	position:relative !important;
	top:0 !important;
	left:0 !important;
	display:inline !important;
}
.lt-ie8 #footer,
.lt-ie8 #content,
.lt-ie8 #thumblist,
.lt-ie8 #header {
	display:block !important;
	height:auto !important; 
}
/**
all mobile
*/
.mobile-footer-extra{
    display: none;
}
.mobile .mobile-footer-extra{
    display: block;
    float: left;
    margin-left: 16px;
}
#mobile-content{
    padding: 0px 16px 16px 16px;
    margin: 0 auto;
    display: none;
    position: relative;
}
#mobile-content li{
    margin-top: 16px;
    position: relative;
}
#mobile-content li:first-child{
    margin-top: 0px;
}
#mobile-content li img{
    width: 100%;
}
#mobile-content li video{
    width: 100%;
}
.mobile #mobile-content{
    display: block;
}
.mobile .site_title {
	text-align: left;
	padding-top:16px;
	padding-bottom:16px;
    padding-left: 16px;
	letter-spacing:1px;
	z-index:200 !important;
	text-transform:uppercase;
    position: relative;
    height: auto;
}
.mobile .site_title a,
.mobile .site_title span,
.show-grid-container {
    display: block;
    font-size: 26px;
    line-height: 1;
}
#menu-toggle {
    position: absolute;
    top: 0;
    right: 0;
    height: 64px;
    width: 56px;
    background-image:url('images/rh_x.png');
    background-position:center center;
    background-repeat: no-repeat;
    background-size:  24px 24px;
}
#menu-toggle.show {
    background-image:url('images/rh_burger.png');
}
#mobile-menu span,
#mobile-menu a {
    margin-top: 6px;
}
@media screen and (min-width:375px) {
    .mobile .site_title a,
    .mobile .site_title span,
    .show-grid-container {
        display: block;
        font-size: 32px;
    }
}
@media screen and (min-width:410px) {
    .mobile .site_title a,
    .mobile .site_title span,
    .show-grid-container {
        display: block;
        font-size: 36px;
    }
}
.mobile #thumblist{
    display:none;
}
.mobile #content{
    display: none;
}
.mobile #grid-container{
    padding: 0px 8px 0px 8px;
}
.mobile #grid-container.hide{
    display: none;
}
.mobile .show-more-project.at-bottom{
    display: none;
}
.mobile #footer {
    text-align: right;
    padding-right: 16px;
    padding-bottom: 16px;
}
.mobile .video_poster{
    width: 100%;
    height: 100%;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    position: absolute;
    top: 0px;
    left: 0px;
}
.mobile .mobile_play_video{
    position: absolute;
    width: 60px;
    height: 60px;
    background-image: url('images/but_play.png');
    background-position: center center;
    background-repeat: no-repeat;
    background-size: contain;
    top: 50%;
    left: 50%;
    margin-top: -30px;
    margin-left: -30px;
}
.mobile .show-grid-container {
    text-align: center;
    margin-top: 16px;
}
.mobile .show-grid-container:hover {
    color: #000;
}
.mobile-homepage-hero-item {
    width: 100%;
    height: auto;
}

/**
text page
*/
.text-content{
    color: #555;
    line-height: 1.5;
    font-size: 18px;
    text-align: center;
    width: 100%;
    position: relative;
    top: 40%;
}
.text-content h1, 
.text-content h2, 
.text-content h3{
    font-size: 24px;
    font-weight: normal;
}
.text-content a{
    color: #555;
}
.mobile .text-content h1, 
.mobile .text-content h2, 
.mobile .text-content h3{
    font-size: 22px;
}