/* CSS Mini Reset */
/******************/
html{color:#000;}div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,textarea,p,blockquote,th,td{margin:0;padding:0}table{border-collapse:collapse;border-spacing:0}fieldset,img{border:0}address,caption,cite,code,dfn,em,strong,th,var{font-style:normal;font-weight:normal}ol,ul{list-style:none}caption,th{text-align:left}h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:normal}q:before,q:after{content:''}abbr,acronym{border:0;font-variant:normal}sup{vertical-align:text-top}sub{vertical-align:text-bottom}input,textarea,select{font-family:inherit;font-size:inherit;font-weight:inherit;*font-size:100%}legend{color:#000}#yui3-css-stamp.cssreset{display:none}
textarea,
input.text,
input[type="text"],
input[type="button"],
input[type="submit"],
.input-checkbox {
-webkit-appearance: none;
border-radius: 0;
}
.clear { clear:both; }
.nopadl { padding-left:0px !important;	}
.nopadr { padding-right:0px !important; }
.nopad {padding-left:0px !important; padding-right:0px !important; }
/* STYLES */

/* FONTS */

    @font-face {
	    font-family: 'Meta Pro Light';
	    font-style: normal;
	    font-weight: normal;
	    src: local('Meta Pro Light'), url('/fonts/meta/FFMetaProLight.woff') format('woff');
    }



    @font-face {
	    font-family: 'Meta Pro Book';
	    font-style: normal;
	    font-weight: normal;
	    src: local('Meta Pro Book'), url('/fonts/meta/FFMetaProBook.woff') format('woff');
    }


    @font-face {
	    font-family: 'Meta Pro Medium';
	    font-style: normal;
	    font-weight: normal;
	    src: local('Meta Pro Medium'), url('/fonts/meta/FFMetaProMedium.woff') format('woff');
    }



    @font-face {
	    font-family: 'Meta Pro Bold';
	    font-style: normal;
	    font-weight: normal;
	    src: local('Meta Pro Bold'), url('/fonts/meta/FFMetaProBold.woff') format('woff');
    }



/**********/
body {
	-webkit-font-smoothing: antialiased;
}



#hometxt p, .ref_title span, .team_info span {
	font-family: 'Meta Pro Light';
}

body {
	font-family: 'Meta Pro Book';
}
#logoanim {
	width:250px;
	height: auto;
	background: transparent;
}
#b5 #logoanim {
	filter: invert(1);
}
.test {
	font-family: 'Meta Pro Medium';
}

#hometxt h2, #hometxt h2, .team_info h2, strong, .serv_content h3 {
	font-weight: 700;
}



.e404 {
	width:100%;
	display:block;
	position:absolute;
	z-index:100;
	text-align:center;
	margin-top:50vh;
	font-size:25px;
}

header, #hometxt, .detailview, .sitetitle, #footer_left, .serv_wrapper, .innerw, #b8 #subpage {
	padding-left: 125px;
	padding-right: 125px;
}

.pertxt {
	padding-left: 125px;
}

body, header, .button_white:hover {
	background-color: #F9F9F9;
}

#b5 header, #home_ref {
	background-color: #262626;
}

a, a:hover {
	text-decoration: none;
}

.pertxt h2 {
	font-size: 14px;
	line-height: 24px;
}

#table_top th, .ttxt_wrapper h2, .ttxt_wrapper {
	font-size: 15px;
	line-height: 25px;
}

header nav a, .sitetitle, #home_ref table, .button_white, .trigger, .serv_content, #downloads_wrapper a {
	font-size: 16px;
	line-height: 26px;
}

#footer_left {
	font-size: 18px;
	line-height: 28px;
}

#hometxt, .team_info h2, .team_info h3, .team_info span, #cbutton, #subpage {
	font-size: 20px;
	line-height: 30px;
}

.pertxt p {
	font-size: 27px;
	line-height: 37px;
}

.button a, .colorwhite nav a, .overlay .ttxt_wrapper h2 {
	color: white;
}

header nav a, body, button a, .ttxt_wrapper, .colorblack nav a, .maptxt a {
	color: black;
}

.ttxt_wrapper h2, .trigger, .font_darkgrey, .font_darkgrey a, .serv_content h3, #downloads_wrapper a {
	color: #7B7973;
}

.font_pink, .font_pink a {
	color: #B12697;
}

.font_grey, .font_grey a {
	color: #C9C6BD;
}


.serv_wrapper:nth-child(odd) {
	background-color: #CECCC4;
}

.serv_wrapper:nth-child(even), #b3 header, #b3 {
	background-color: #C9C6BD;
}

#table_top th {
	text-align: center;
}

button {
	box-shadow: none;
	border: none;
	padding: 0px;
}



button a, .button, #cbutton {
	padding: 8px 25px 6px 25px;
	display: inline-block;
}

.button_white {
	background-color: #DDDBD6;
	margin-left: auto;
	margin-right: auto;
	display: block;
	margin-top: 100px;
}

.button_white:hover a {
	color: black;
}

#cbutton:hover {
	background-color: #C9C6BD;
}

.button {
	margin-top: 50px;
	font-size: 16px;
}

.button:hover {
	background-color: #262626 !important;
}

/* NAV */
#btn_nav, .mobnav {
	display:none;
}
.nav > li {
	float:left;
	display:inline-block;
	margin-left:100px;
}
.nav > li > a, .nav > li > a:hover, .nav > li > a:focus{
	padding:0px;
	display:inline-block;
	background:none;
}

#mob_img {
	display: none;
	height: 200px;
	z-index: 10000;
	position: absolute;
	left: 0px;
	bottom: 0px;
	object-fit: cover;
	width: 100%;
}

header {
	height: 100px;
	position: fixed;
	top: 0px;
	left: 0px;
	width: 100%;
	display: table;
	z-index: 100;
}

header video {
    height: 100px;
}

 header nav {
	position: absolute;
	top: 49px;
}

#logo {
    width: auto;
    height: 50px;
    margin-top: 25px;
    /*
    VIDEO
	height: 100%;
	width: auto;
	left: 125px;
    top: 0;
    position: absolute;
    */
}

header nav  {
	right: 125px;
}

.nav .act::before, .nav li:hover a::before {
	display: inline-block;
	position: absolute;
	top: -1px;
	left: -20px;
}

.colorblack .nav li:hover a::before {
	content: url(/img/square.svg);
}

.colorwhite .nav li:hover a::before {
	content: url(/img/square_white.svg);
}

.colorblack .nav .act::before {
	content: url(/img/square.svg);
}

.colorwhite .nav .act::before {
	content: url(/img/square_white.svg);
}



/* CONTENT */
.pertxt h2 {
	margin-top: 8px;
}

#peritem {
	float: left;
	position: relative;
	top: -35px;
}

.pertxt p, .pertxt h2 {
	padding-left: 60px;
}

#home_person {
	height: calc(100vh - 100px);
	position: fixed;
	top: 100px;
	left: 0px;
	width: 100%;
}

.pertxt {
	padding-top: 300px;
	width: 640px;
	float: left;
}

#perimg {
	height: 100vh;
	width: auto;
    width: 538px;
    object-fit: cover;
}

#perimg_mob {
	display: none;
}

#perimg_wrapper {
	float: right;
}

#content {
	position: relative;
	margin-top: 100vh;
	float: left;
}

#subpage {
	position: relative;
	float: left;
	width: 100%;
	margin-top: 100px;
}

#b3 #subpage, #b8 #subpage {
	margin-top: 185px;
}

#b8 #subpage {
	margin-bottom: 185px;
}

#hometxt {
	background-image: url('/img/txtbg.jpg');
	float: left;
	padding-top: 170px;
	padding-bottom: 170px;
	display: flex;
	flex-wrap: wrap;
}

#hometxt h2 {
	margin-bottom: 35px;
	text-transform: uppercase;
}

.gridtxt:nth-child(3n + 1) {
	padding-left: 0px;
	padding-right: 100px;
}

.gridtxt:nth-child(3n + 2) {
	padding-left: 50px;
	padding-right: 50px;
}

.gridtxt:nth-child(3n) {
	padding-left: 100px;
	padding-right: 0px;
}

.gridtxt:nth-child(1n + 4) {
	margin-top: 150px;
}

#home_ref {
	color: white;
	padding-top: 80px;
	padding-bottom: 185px;
	float: left;
	width: 100%;
}

#reftable {
	margin-top: 110px;
	width: 100%;
	min-width: 1500px;
	/*table-layout: fixed;*/
}

#reftable td, #reftable th {
	border-bottom: 1px dashed #676767;
}

#reftable th,  #reftable td{
	border-right: 1px solid #676767;
	padding: 25px 0px;
}

.ref_img {
	width: 75px;
	height: 75px;
	object-fit: cover;
	border-radius: 50%;
	float: left;
}

.ref_title {
	position: relative;
	left: 10px;
    padding-right: 15px;
}

#reftable .refitem td:nth-child(2) {
    display: flex;
    align-items: center;
}


.square {
	width: 20px;
	height: 20px;
	background: #C9C6BD;
	display: block;
	margin-left: auto;
	margin-right: auto;
}

#table_top th {
	padding-top: 15px !important;
	padding-bottom: 25px !important;
}

.spacer {
	width: 125px ;
	border: none !important;
}

.detailview {
	background-color: #C9C6BD;
	width: 100%;
	display: none;
	padding-top: 115px;
	padding-bottom: 115px;
	float: left;
	position: relative;
	left: 0px;
}

#homeclose {
	display: none;
}

.detail_td {
	padding: 0px !important;
	border: none !important;
}

.refitem:hover {
	cursor: pointer;
}
/*
.refitem td:nth-child(2) {
	width: 350px;
}
*/
#reftable .refitem td:not(.spacer):not(:nth-child(2)) {
	width: 13%;
}

.timg_wrapper {
	white-space: nowrap;
	overflow-x: scroll;
	display: block;
	float: none;
	width: calc(100% + 125px);
	margin-bottom: 100px;
}

.timg_wrapper img {
	height: 430px;
	object-fit: cover;
	display: inline-block;
	margin-right: 10px;
}

.ttxt_wrapper table {
	width: auto !important;
	margin-top: 0px !important;
}

.ttxt_wrapper table td {
	padding: 10px 0px !important;
	border-bottom: 1px solid #7A7872 !important;
	border-right: none !important;
}

.overlay .ttxt_wrapper table td {
	border-bottom: 1px solid white !important;
}

.ttxt_wrapper table td:nth-child(2) {
	padding-left: 85px !important;
}

.ttxt_wrapper h2 {
	margin-bottom: 40px;
}

.ttxt_wrapper {
	float: left;
	width: 100%;
}

.ttxt {
	float: left;
	width: 30%;
}

.ttxt_left {
	padding-right: 50px;
}

.ttxt_right {
	padding-left: 50px;
}

.ttxt_info {
	float: left;
	width: 40%;
}

#team_wrapper img {
	width: 100%;
	height: auto;
}

.teamimg {
	padding-left: 0px;
	padding-right: 100px;
	width: 30%;
	float: left;
}

.team_info {
	width: 30%;
	float: left;
	padding-right: 100px;
}

#card {
	width: 40%;
	float: left;
	height: 700px;
	padding-left: 100px;
}

#card .embed-container {
	height: 100%;
}

.team_info h2 {
	text-transform: uppercase;
}

.team_info h3 {
	margin-bottom: 30px
}

#cbutton {
	background-color: #7B7973;
	color: white;
	text-decoration: none;
	float: left;
	margin-top: 60px;
}

.serv_wrapper {
	width: 100%;
	float: left;
}

.serv_wrapper h3, .serv_wrapper span, .srefitem {
	width: calc(100% / 3);
	float: left;
}

.serv_content {
	width: 100%;
	float: left;
	border-top: 1px dashed #7A7872;
	padding-top: 80px;
	padding-bottom: 50px;
}

.serv_content h3 {
	text-transform: uppercase;
}

.serv_txt {
	padding-right: 200px;
}

.olclick{
	width: 100% !important;
	cursor: pointer;
	margin-bottom: 30px;
    display: flex;
    align-items: center;
}

.overlay {
	position: fixed;
	z-index: 100;
	top: 45px;
	left: 45px;
	bottom: 45px;
	right: 45px;
	margin: 0px;
	width: calc(100vw - 100px);
	display: none;
	background-color: rgba(129, 126, 118, 0.95);
	overflow-y: scroll;
	overflow-x: hidden;
	padding: 115px 75px;
}

.olclose {
	position: absolute;
	top: 35px;
	right: 50px;
	cursor: pointer;
}

.ol_wrapper {
	width: 100%;
	float: left;
}

.overlay .ttxt_wrapper {
	margin-bottom: 115px;
	color: white;
}

.innerw {
	padding-top: 110px;
}


#downloads_wrapper {
	margin-top: 30px;
}

.dl_img {
	width: 10px !important;
	height: auto !important;
	margin-right: 10px;
}

.gm-style .gm-style-iw-c {
	border-radius: 0px;
	box-shadow: none;
	background-color: rgba(255, 255, 255, 0.7);
	padding: 20px 30px;
}

.gm-ui-hover-effect, .gm-style .gm-style-iw-t::after {
	display: none !important;
}









footer {
	float: left;
	width: 100%;
	background-color: white;
	display: flex;
	flex-wrap: wrap;
	z-index: 10;
	position: relative;
}

footer img {
	object-fit: cover;
	height: 600px;
}

#footer_left {
	padding-top: 70px;
}

/* ETC */
.embed-container{
	position: relative;
	padding-bottom: 56.25%; /* ratio 16x9 */
	height: 0;
	overflow: hidden;
	width: 100%;
	height: auto;
}
.embed-container iframe{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}






/* FORM */
#input_wrongdiv{
	display:none;
	color:#F00;
}
#after_send{
	display:none;
}

/* COOKIES */
#cookie_wrapper{
	position:fixed;
	left:0px;
	bottom:0px;
	color:#fff;
	background:#262626e5;
	min-height:39px;
	text-align:center;
	padding:10px 24px;
	font-size:14px;
	width:100%;
	z-index:9999999;
}
#cookie_wrapper a{
	color:#fff !important;
	text-decoration:underline !important;
}
#cookie_accept{
	position:absolute;
	display:block;
	right:11px;
	top:13px;
	cursor:pointer;
}
