
}.standby { opacity: 0 }
.loader::before { color: black !important; }
#loading {
	resource-priorities: postpone;
	text-align: center;
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-color: white;
	opacity: .95;
	z-index: 10;
}
div[id^="wrapper-"] {margin-bottom: 36rem;}
#wrapper {background-color: white;}
#wrapper.set {
	transition: all .5s cubic-bezier(0.6, -0.03, 0.735, 0.045);
	transform: scale(1);
	opacity:1;
}
#wrapper.zoom{
	transform: scale(2);
	opacity:0;
}
footer {
	background-color: #F7F7F7;
	z-index: 0;
	width: 100%;
	padding: 4% 3%;
	bottom: 0;
	height: 35rem;
	position: absolute;
}
body:not(.search) .noimage {
	width: 100%;
	padding: 33%;
	background-color: whitesmoke;
	color: white;
	font-size: 1rem;
}
@media screen and (max-width: 500px) {
	.works footer {}
}
.works footer.loaded { }
@media screen and (min-width: 501px) and (max-width: 700px) {
	div[id^="wrapper-"] { margin-bottom: 25rem;}
	footer { height: 24rem;}
}
@media only screen and (min-width: 701px) and (max-width: 1024px) {
	div[id^="wrapper-"] { margin-bottom: 21.5rem;}
	footer { height: 19.5rem;}
	#latestTopics{max-width:45vw;}
}
@media screen and (min-width: 1025px) and (max-width: 1280px) {
	div[id^="wrapper-"] { margin-bottom: 21.1rem;}
	footer { height: 19.1rem;}
}
@media screen and (min-width: 1281px) and (max-width: 1500px) {
	div[id^="wrapper-"] { margin-bottom: 23.1rem;}
	footer { height: 21.1rem;}
}
@media screen and (min-width: 1501px) {
	div[id^="wrapper-"] { margin-bottom: 20.1rem;}
	footer { height: 18.1rem;}
}
#wrap-footer {
	position: relative;
	height: 100%;
	max-width: 1600px;
	margin: 0 auto;
}
@media screen and (min-width: 1281px) {
	footer {padding:2rem;}
}
@media screen and (max-width: 1500px) and (min-width: 1281px){
	#wrap-footer {
		width: calc( 1228px + 1% );
		margin: 2rem auto;
	}
}
@media screen and (min-width: 1501px){
	#wrap-footer {
		max-width: 1600px;
		width: calc( 1003px + 16% );
		margin: 0 auto;
	}
}
#linkhome {
	display: block;
	position: relative;
	float: left;
	width: 3.5rem;
	height: 4rem;
	margin: 0;
	padding: 0;
	font-size: 36px;
	font-size: 2.8rem;
	color: black;
	text-decoration: none;
	overflow: hidden;
}
.icon-logo::before {
	content: '\e807';
	font-size: 3.5rem;
	position: relative;
	z-index: 2;
}
@media screen and (max-width: 500px) {
	#linkhome { margin-bottom: 2rem;}
}
@media screen and (min-width: 501px) and (max-width: 700px) {
	#linkhome { float: left;}
}
@media only screen and (min-width: 701px) {
	#linkhome {
		position: absolute;
		width: 4.8rem;
		height: 5rem;
		font-size: 3.7rem;
	}
	.icon-logo::before {font-size: 4.8rem;}
}
[itemprop="address"] a, [id^="gNav"] li,[id^="gNav"] li a {color:black;}
#gNav4 { background-color: white; }
@media screen and (max-width: 500px) {
	#gNav4 {
		position: absolute;
		top: 15rem;
		left: 0;
		right: 0;
		margin: 0 auto 4rem;
	}
}
@media screen and (min-width: 501px) and (max-width:  700px) {
	#gNav4 {
		position: absolute;
		top: 6rem;
		left: 3%;
	}
}
	@media screen and (max-width: 500px){
	[itemprop="address"] {
		text-align: center;
		position: absolute;
		left: 0;
		right: 0;
		bottom: 2rem;
	}
}
@media screen and (min-width: 701px) {
	#gNav4 {
		position: absolute;
		right: 1.1rem;
		top: 1.1rem;
	}
}
@media screen and (min-width: 501px) and (max-width:  700px) {
	[itemprop="address"] {
	    position: absolute;
	    top: 16rem;
	    right: 0;
	    text-align: right;
	}
}
@media screen and (min-width: 701px) {
	[itemprop="address"] {
		position: absolute;
		top: 6rem;
	}
	
}
#latestTopics {
	clear: both;
	margin-left: 1.4rem;
	position: relative;
	top: 1rem;
}
#latestTopics a {
	display: flex;
}
#officeName { display: block;}

/*Header*/
div[id^="wrapper-"]:not(#wrapper-single):not(#wrapper-topicss) h1,div[id^="wrapper-"]:not(#wrapper-single):not(#wrapper-topicss) h1 a {
	font-weight: 500;
	color: gray;
}
@media screen and (max-width: 700px) {
	div[id^="wrapper-"]:not(#wrapper-single):not(#wrapper-topicss) h1 {
		font-size: 1rem !important;
		text-align: left;
		margin: 1rem 0 0 4%;
		float: left;
		position: relative;
		z-index: 2;
	}
	div[id^="wrapper-"]:not(#wrapper-single):not(#wrapper-topicss) #header-linkhome {
		display: block;
		color: black;
		text-decoration: none;
		overflow: hidden;
		width: 3.4rem;
		height: 3.8rem;
		font-size: 1rem;
		margin: 1rem 2% 1rem auto;
		float: right;
	}
}
@media screen and (min-width: 701px) {
	div[id^="wrapper-"]:not(#wrapper-single):not(#wrapper-topicss) h1 {
		font-size: .8rem !important;
		text-align: right;
		margin: 0 0 3rem;
		float: right;
	}
	div[id^="wrapper-"]:not(#wrapper-single):not(#wrapper-topicss) #header-linkhome {
		display: block;
		color: black;
		text-decoration: none;
		overflow: hidden;
		width: 4.8rem;
		height: 5.2rem;
		font-size: 3.7rem;
		margin: 0 0 4rem;
		float: left;
	}
}
/*Footer*/
input { color: black;}

article, #bread { width:100%;}
#bread, #bread a {
	font-size: .6rem;
	color: #83BFCB;
}
#bread {
	text-align: right;
	clear: both;
}
#bread a:last-child {text-decoration: underline;}
@media screen and (max-width: 700px) {
	#bread { padding-right: 3.5%;}
	hr { width: 93%; margin: 3rem auto;}
}
@media screen and (min-width: 701px) and (max-width: 1280px) {
	div[id^="wrapper-"]:not(#wrapper-topicss):not(#wrapper-single) article, div[id^="wrapper-"]:not(#wrapper-topicss) #bread {
		width: 88%;
		margin: 3% auto 0;
	}
	article, #bread {
		width: calc(88% - 4rem);
		margin: 3% auto 0;
	}
	
	hr { width: 88%; margin: 3rem auto;}
}
@media screen and (min-width: 1281px) {
	article, #bread {
		width: calc(96% - 4rem);
		max-width: 1280px;
		margin: 3% auto 0;
	}
	hr { width: 1280px; margin: 5rem auto;}
}
body:not(.search) section > section {
	width: 92%;
	margin: 0 0 0 auto;
}
@media screen and (min-width: 701px) {
	body:not(.search) section > section {
		width: 85%;
	}
}
body:not(.search) article > section {
	position: relative;
	margin-bottom: 3.8rem;
}
body:not(.search) section h2 {
	transform: rotate(90deg) translateX(.3rem);
	position: absolute;
	transform-origin: left top;
	font-size: .7rem;
	font-weight: 500;
	left: 0;
}
hr {
	height: 1px;
	border: none;
	border-top: 1px #e6e6e6 solid;
}
@media screen and (min-width: 701px) {
	body:not(.search) article > section {margin-bottom: 6.4rem;}
	body:not(.search) section h2 { transform: rotate(90deg) translateX(.3rem) translateY(-1rem); }
}
@media screen and (max-width: 700px) {
	hr {margin: 3rem auto;}
	body:not(.search) section h2 {left: 5%;}
}
@media screen and (min-width: 701px) {
	.logoB {color:black !important;}
}
@media screen and (max-width: 700px) {
	.logoB700 {color:black !important;}
	#out-wrap-Nav {text-align: right;}
	#wrap-Nav {
		display: inline-block;
		text-align: left;
		zoom: 1;
	}
}
@media screen and (max-width: 500px) {
	small {
		width: 100%;
		text-align: center;
		position: absolute;
		bottom: 0;
		left: 0;
		right: 0;
	}
}
@media screen and (min-width: 501px) and (max-width: 700px) {
	small {
		width: 100%;
		text-align: right;
		position: absolute;
		bottom: 0;
	}
}
@media screen and (min-width: 701px) and (max-width: 1280px) {
	small { position: absolute; bottom: 0; }
}
@media screen and (min-width: 701px) and (max-width: 900px) {
	span[itemprop="postalCode"] {
		display: block;
		margin-top: .6rem;
		line-height: 1.2;
	}
}
@media screen and (min-width: 1281px) and (max-width: 1500px) {
	small { position: absolute; bottom: 2rem; }
}
@media screen and (min-width: 1501px) {
	small { position: absolute; bottom: 0; }
}
@media screen and (min-width: 701px) {
	#wrap-Nav {
		position: absolute;
		right: 22.5%;
	}
}
#gNav2 {
	float: left;
	margin-left: 7vw;
}
#gNav3 {
	float: left;
	margin: 0 8vw 0 4vw;
}
@media screen and (min-width: 701px) {
	#gNav2 {margin-left: 4vw;}
	#gNav3 {margin: 0 0 0 2vw;}
}
#latestTopics .topicsTitle{
	display: inline-block;
	max-width: 50vw;
	line-height: 1.3;
	text-overflow: ellipsis;
	white-space: nowrap;
	overflow: hidden;
}
#latestTopics .topicsDate{
	font-weight: 500;
	transform: scale(.8) translateX(-.5rem);
	transform-origin: top left;
	display: inline-block;
	min-width: 3.5rem;
}
#latestTopics li{
	padding: 0 0 .3rem 0;
}
#contactMail a{color:black;}