/*
Theme Name: ARTC_underscore
Theme URI: http://www.artc.com.au
Author: Thanh Vu
Author URI: http://www.artc.com.au
Description: Made for ARTC. Mobile friendly. Use in conjuction with plugins: breadcrumb-navxt / display-widgets / page-list
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: artc_underscore
Tags:

ARTC_underscore is based on Underscores http://underscores.me/, (C) 2012-2015 Automattic, Inc.

CONTENTS:

00. ACCESSIBILITY
01. FONTS
02. RESET
03. STRUCTURE
04. MAIN
05. BREADCRUMBS
06. SUPPORTING
07. NAVIGATION
08. FOOTER
09. COVER PAGES
10. HOME
11. NEWS & COMMENTS
12. VACANCIES
13. SITE MAP
14. ALTERNATE RESOLUTIONS
15. MAP
16. EXTRA
*/

/* 00. ACCESSIBILITY */
/* ---------------------------------------------------------------------- */
/* Text meant only for screen readers. */
.screen-reader-text {
	clip: rect(1px, 1px, 1px, 1px);
	position: absolute !important;
	height: 1px;
	width: 1px;
	overflow: hidden;
}


/* 01. FONTS */
/* ---------------------------------------------------------------------- */
@font-face {
    font-family: 'Replica';
    src: url('fonts/lineto-replica-pro-light-c.eot');
    src: url('fonts/lineto-replica-pro-light-c.eot?#iefix') format('embedded-opentype'),
         url('fonts/lineto-replica-pro-light-c.woff') format('woff'),
         url('fonts/lineto-replica-pro-light-c.ttf') format('truetype'),
         url('fonts/lineto-replica-pro-light-c.svg#replica-light') format('svg');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'Replica';
    src: url('fonts/lineto-replica-pro-regular-c.eot');
    src: url('fonts/lineto-replica-pro-regular-c.eot?#iefix') format('embedded-opentype'),
         url('fonts/lineto-replica-pro-regular-c.woff') format('woff'),
         url('fonts/lineto-replica-pro-regular-c.ttf') format('truetype'),
         url('fonts/lineto-replica-pro-regular-c.svg#replica-regular') format('svg');
    font-weight: 600;
    font-style: normal;
}

@font-face {
    font-family: 'Replica';
    src: url('fonts/lineto-replica-pro-bold-c.eot');
    src: url('fonts/lineto-replica-pro-bold-c.eot?#iefix') format('embedded-opentype'),
         url('fonts/lineto-replica-pro-bold-c.woff') format('woff'),
         url('fonts/lineto-replica-pro-bold-c.ttf') format('truetype'),
         url('fonts/lineto-replica-pro-bold-c.svg#replica-bold') format('svg');
    font-weight: bold;
    font-style: normal;
}
@font-face {
    font-family: 'Replica';
    src: url('fonts/lineto-replica-pro-lightitalic-c.eot');
    src: url('fonts/lineto-replica-pro-lightitalic-c.eot?#iefix') format('embedded-opentype'),
         url('fonts/lineto-replica-pro-lightitalic-c.woff') format('woff'),
         url('fonts/lineto-replica-pro-lightitalic-c.ttf') format('truetype'),
         url('fonts/lineto-replica-pro-lightitalic-c.svg#replica-light-italic') format('svg');
    font-weight: normal;
    font-style: italic;
}


/* 02. RESET */
/* ---------------------------------------------------------------------- */
/* debug */
div {
	xbackground: rgba(255,0,0,.1);
	xborder: 1px solid #f00;
	xpadding: 5px;
	xborder: 1px solid #f00;
	xbackground: #fcc;
}
*, html, ul, li {
	margin: 0;
	padding: 0;
	text-indent: 0;
	list-style: none;
}
body {
	font-family: 'Replica', Arial, sans-serif;
	font-size: 1em;
	line-height: 1.2em;
	color: #000;
	-webkit-text-size-adjust: 100%;
	opacity: .9999999;
}


/* 03. STRUCTURE */
/* ---------------------------------------------------------------------- */
#bg {
	position: fixed;
	width: 100%;
	height: 100%;
}
#page {
	float: left;
	width: 100%;
	position: absolute;
	z-index: 100;
	top: 0;
	left: 0;
	padding-bottom: 5em;
}
.site-branding a img {
	width: 100%;
	margin: 3em 0;
	border: none;
}
#logo-print {
	display: none;
}
#secondary {
	width: 30%;
	float: left;
}
.site-supporting {
	float: left;
	margin-left: 20%;
	margin-right: 20%;
}
#primary {
	margin-left: 30%;
	padding: 5em 7em 0 7em;
}


/* 04. MAIN */
/* ---------------------------------------------------------------------- */
abbr {
	border-bottom: 1px dotted #000;
	cursor: help;
}
a,
a:link {
	text-decoration: none; 
	color: #2C9ADC;
	border-bottom: 1px solid #2C9ADC;
	transition: color 100ms;
}
a:visited {
	text-decoration: none; 
	color: #004874; 
	border-bottom: 1px solid #004874;
}
a:focus,
a:hover,
a:active {
	text-decoration: none; 
	color: #2A9E47; 
	border-bottom: 1px solid #2A9E47;
}
h1 {
	font-weight: bold;
	font-size: 2em;
	line-height: 1em;
	padding-bottom: 1em;
	border-bottom: 10px solid #B2B1B2;
	margin-bottom: 30px;
	color: #000;
}
h1:nth-child(n+3) {
	margin-top: 50px;
}
.h1s h1 {
	margin-top: 0;
}
h2 {
	font-weight: bold;
	font-size: 1.8em;
	line-height: 1em;
	color: #000;
	border-bottom: 1px solid #000;
	padding: 1em 0 1em 0;
	margin-bottom: 1em;
}
h3 {
	font-weight: 600;
	font-size: 1.5em;
	line-height: 1em;
	color: #000;
	padding: 1em 0 1em 0;
}
h4 {
	font-size: 1em;
	text-transform: uppercase;
	color: #000;
	padding: 1em 0 1em 0;
}
h2 a,
h2 a:link,
h2 a:visited,
h2 a:focus,
h2 a:hover,
h2 a:active {
	display: block;
	border: none;
	transition: color 200ms;
	position: relative;
}
h2 a:after {
	content: '';
	display: inline-block;
	float: right;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 4px 0 4px 10px;
	border-color: transparent transparent transparent #000;
	position: absolute;
	top: .3em;
	right: 0;
}
strong, b, p.intro, blockquote {
	font-weight: bold;
}
blockquote {
	border-left: 10px solid #EBEBEB;
	padding-left: 20px;
}
em, i {
	font-style: italic;
}
p, ul, ol, table, .downloads-table {
	margin-bottom: 2em;
}
p.big-link a,
p.big-link a:link,
p.htm-link a,
p.htm-link a:link,
p.pdf-link a,
p.pdf-link a:link {
	display: block;
	padding: 10px 15px 10px 15px;	
	border-radius: 3px;
	background: #EBEBEB;
	border: none;
}
p.pdf-link a,
p.pdf-link a:link {
	padding-left: 45px;
	background: #EBEBEB url(images/bg_p_pdf.gif) no-repeat 15px 10px;
}
p.big-link a:focus,
p.htm-link a:focus,
p.pdf-link a:focus,
p.big-link a:hover,
p.htm-link a:hover,
p.pdf-link a:hover {
	background-color: #2A9E47;
	color: #fff;
}
ul li {
	list-style: disc;
	margin-left: 1.5em;
	margin-bottom: 1em;	
}
ul[style="list-style-type: circle;"] li {
	list-style: circle;
}
ul[style="list-style-type: square;"] li {
	list-style: square;
}
ol li {
	list-style: decimal;
	margin-left: 1.5em;
	margin-bottom: 1em;
}
ol[style="list-style-type: upper-roman;"] li {
	list-style: upper-roman !important;
}
ol[type="i"] li,
ol[style="list-style-type: lower-roman;"] li {
	list-style: lower-roman !important;
}
ol[type="a"] li,
ol[style="list-style-type: upper-alpha;"] li {
	list-style: upper-alpha;
}
ol[style="list-style-type: lower-alpha;"] li {
	list-style: lower-alpha;
}
ol[style="list-style-type: lower-greek;"] li {
	list-style: lower-greek;
}
li > ol,
li > ul {
	margin-top: 1em;	
}
hr {
	height: 1px;
	border: none;
	background: #D6D6D6;
	margin-bottom: 20px;
}
table {
	width: 100%;
	border-collapse: collapse;
}
table a,
table a:link,
table a:visited,
table a:focus,
table a:hover,
table a:active {
	border-bottom: none;
}
th,
.downloads-table th {
	font-weight: bold;
}
.generic-table th,
.generic-table td,
.downloads-table th,
.downloads-table td {
	text-align: left;
	border-bottom: 1px solid #D6D6D6;
	padding: 10px 10px 9px 0;
	vertical-align: top;
	-webkit-hyphens: auto;
	-moz-hyphens: auto;
	hyphens: auto;
}
.col-1,
.col-3,
.col-4 {
	width: 15%;
}
.col-2 {
	width: auto;	
}
.alignleft {
	display: inline;
	float: left;
}

.alignright {
	display: inline;
	float: right;
}

.aligncenter {
	display: block;
	margin-right: auto;
	margin-left: auto;
}

p.top a,
p.top a:link,
p.top a:visited,
p.back a,
p.back a:link,
p.back a:visited {
	display: block;
	margin-top: 140px;
	height: 50px;
	width: 50px;
	border-radius: 50px;
	background: #EBEBEB;
	position: relative;
	border: none;
	text-indent: -9000px;
	transition: background 200ms;
}
p.top a:focus,
p.top a:hover,
p.back a:focus,
p.back a:hover {
	background: #2A9E47;
	border: none;
}
p.top a:before,
p.back a:before {
	content: '';
	width: 0;
	height: 0;
	border-style: solid;
	position: absolute;
}
p.top a:before {
	border-width: 0 10px 20px 10px;
	border-color: transparent transparent #fff transparent;
	top: 12px;
	left: 15px;
}
.nav-links {
	position: relative;
}
.nav-links a {
	position: relative;
}
.nav-previous a {
	left: 1.5em;
}
.nav-next a {
	position: absolute;
	top: 0;
	right: 1.5em;
}
.nav-previous:before,
.nav-next:before {
	content: '';
	display: block;
	width: 0;
	height: 0;
	border-style: solid;
	position: absolute;
	top: .4em;
}
.nav-previous:before {
	border-width: 4px 10px 4px 0;
	border-color: transparent #000 transparent transparent;
}
.nav-next:before {
	border-width: 4px 0 4px 10px;
	border-color: transparent transparent transparent #000;
	right: 0;
}
p.back a:before {
	border-width: 10px 20px 10px 0;
	border-color: transparent #fff transparent transparent;
	top: 15px;
	left: 12px;
}
.entry-content img,
figure,
.comment-content img,
.widget img {
    width: 100% !important; /* Fluid images for posts, comments, and widgets */
    border-radius: 2px;
}
figure a {
	border: none !important;
}
img.wp-smiley {
	width: auto;
}
img[class*="align"],
img[class*="wp-image-"] {
    height: auto; /* Make sure images with WordPress-added height and width >attributes are scaled correctly */
}
img.actual-size {
    max-width: 100% !important;
    width: auto !important; /* Prevent stretching of full-size images with height and >>width attributes in IE8 */
}
figcaption,
p.image-caption {
	font-style: italic;
	font-size: 15px;
	line-height: 20px;
	color: #858384;
}
.contact {
	overflow: auto;
	border-top: 1px solid #D6D6D6;
	padding-top: 2em;
	margin-bottom: 2em;
	width: 100%;
}
.contact:first-of-type {
	border-top:  none;;
	padding-top: 0;
}
p+.contact:first-of-type {
	border-top: 1px solid #D6D6D6;
	padding-top: 2em;
	margin-top: 2em;
}
.contact .photo {
	width: 20%;
	margin-right: 2em;
	float: left;
}
.with-photo .c-name,
.with-photo .c-title,
.with-photo .c-phone,
.with-photo .c-email,
.with-photo .c-bio,
.with-photo .c-other {
	margin-left: 24%;	
	padding-left: 24px;
}
.c-bio, {
	padding-top: 1em;
}
.c-name {
	font-weight: bold;
	font-size: 1em;
	color: #000;
	text-transform: uppercase;
}
.legend-yellow,
.legend-red,
.legend-green,
.legend-blue, 
.legend-black,
.legend-brand-black,
.legend-brand-blue,
.legend-brand-green,
.legend-brand-sand,
.legend-brand-slate {
	display: inline-block;
	height: 20px;
	width: 20px;
	border-radius: 20px;
	text-indent: -900px;
}
.legend-yellow		{ background: #f90; }
.legend-red			{ background: #f00; }
.legend-green		{ background: #1EAD5D/*#0b3*/; }
.legend-blue		{ background: #25AAE1/*#06c*/; }
.legend-black { background:#384D5A; }

.legend-brand-black	{ background: #333132; }
.legend-brand-blue	{ background: #2C9ADC; }
.legend-brand-green	{ background: #2A9E47; }
.legend-brand-sand	{ background: #CFCAB7; }
.legend-brand-slate	{ background: #2B3C48; }

.alert-1 {
	background: #FFFF99;
}
.alert-2 {
	background: #CAFFFF;
}
.alert-3 {
	color: #FF0000;
}
.alert-4 {
	border: 1px solid #f00;
	background: #ffeeee;
	padding: 20px 30px 5px 30px;
	margin-bottom: 1.5em;
	font-weight: bold;
}
.alert-5 {
	background: #CCCCCC;
}
#atlList_pnlArticlesRepeater {
	width: 100%;
	float: none;
}
#accCategories_pnlArticleCategory div {
	display: inline-block;
}
#accCategories_pnlArticleCategory .button {
	position: relative;
	top: 6px;
	margin-left: 10px;
}
#accCategories_pnlArticleCategory .dropdown {
	margin-left: 10px;
}
.docman-iframe {
	border: none;
	height: 4000px;
	width: 100%;
}
.page-list.summary li {
	list-style: none;
	font-weight: bold;
	font-size: 1.8em;
	line-height: 1em;
	color: #000;
	border-bottom: 1px solid #000;
	margin: 0;
	position: relative;
}
.page-list.summary li a {
	padding: 1em 0 1em 0;
	display: block;
	text-decoration: none;
	border: none;
}
.page-list.summary li a:after {
	content: '';
	display: inline-block;
	float: right;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 4px 0 4px 10px;
	border-color: transparent transparent transparent #000;
	position: absolute;
	top: 1.45em;
	right: 0;
}
.responsive-oembed {
	position: relative;
	width: 100%;
	height: 0;
	padding-bottom: 51%;
}
.responsive-oembed iframe {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
}


/* 05. BREADCRUMBS */
/* ---------------------------------------------------------------------- */
.breadcrumbs {
	border-bottom: 1px solid #D6D6D6;
	font-size: .8em;
	margin-bottom: 2.5em;
	padding-bottom: 2em;
}
.breadcrumbs span {
	padding: 0 20px 0 25px;
	position: relative;
}
.breadcrumbs span:before {
	content: '';
	position: absolute;
	left: 0;
	top: 5px;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 3px 0 3px 7px;
	border-color: transparent transparent transparent #333132;
}
.breadcrumbs span span:before {
	display: none;
}
.breadcrumbs span span {
	padding: 0;
}
.breadcrumbs a,
.breadcrumbs a:link,
.breadcrumbs a:visited {
	border-bottom: none;
	color: #2C9ADC;
}
.breadcrumbs a:focus,
.breadcrumbs a:active,
.breadcrumbs a:hover {
	color: #2A9E47;
}
.breadcrumbs br {
	display: none;
}


/* 06. SUPPORTING */
/* ---------------------------------------------------------------------- */
#secondary,
#secondary a, 
#secondary a:link,
#secondary a:visited {
	border: none;
	color: #ADADAD;
	text-decoration: none;
}
#secondary .page-list a,
#secondary .page-list a:link,
#secondary .page-list a:visited {
	color: #D6D6D6;
}
#secondary a:focus,
#secondary a:hover,
#secondary .search-field:focus,
#secondary .search-field:hover,
#secondary .current_page_item > a,
#secondary .current-page-ancestor a {
	color: #fff !important;
}
#secondary .page-list .current_page_item > a {
	font-weight: bold;
}
.widget:nth-of-type(n+2):before {
	content: '';
	width: 50px;
	height: 10px;
	background: #484647;
	display: block;
	margin-bottom: 3em;
	border-radius: 1px;
	margin-top: 2.4em;
}
.widget.widget_search:before {
	display: none;
}
#secondary ul  {
	margin-top: .2em;
	margin-bottom: 0;
	list-style: none;
}
#secondary li {
	margin-left: 1.3em;
	list-style: none;
	margin-bottom: 0;
}
#secondary li a:before {
	content: '-';
	display: block;
	float: left;
	width: 1em;
	text-align: center;
	margin-left: -1.4em;
}
#secondary li.page_item_has_children > a:before {
	content: '+';
}
#secondary li li a:before {
	content: '-';
}
#secondary .children {
	display: none;
}
#secondary .current_page_item .children,
#secondary .current_page_ancestor .children,
#secondary .current_page_parent .children {
	display: block;
}
#secondary h1 {
	color: #ADADAD;
	border: none;
	padding: 0;
	margin: 0;
	font-size: 1em;
}
#secondary abbr {
	border: none;
}


/* 07. NAVIGATION */
/* ---------------------------------------------------------------------- */
#menu-main {
	padding-bottom: 2em;
}
#menu-main li {
	position: relative;
}
#menu-main li a:before {
	display: none;
}
#menu-main li.current-page-ancestor:after,
#menu-main li.current-menu-item:after {
	content: '';
	display: block;
	height: 10px;
	width: 50px;
	background: #fff;
	position: absolute;
	right: -42%;
	top: 20%;
	xmargin-top: -1em;
	border-radius: 1px;
}
#menu-main li,
#secondary .search-field {
	font-family: 'Replica', Arial, sans-serif;
	position: relative;
	list-style: none;
	margin: 0;
	padding: 0;
	font-weight: 600;
	font-size: 1.5em;
	line-height: 1em;
}
.widget_search {
	position: relative;
}
#secondary .search-field {
	color: #ADADAD;
	cursor: pointer;
	border: none;
	outline: none;
	-webkit-appearance: none;
    border-radius: 0;
	border-bottom: 1px solid #333132;
	width: 100%;
	background: #333132 url('images/btn-search_bg.gif');
	background-size: contain;
	background-repeat: no-repeat;
	background-position: right 1em; 
	transition: background-position 150ms, border-color 150ms;
	transition-timing-function: ease-out;
}
#secondary .search-field::-ms-clear {
    display: none;
}
#secondary .search-field:focus {
	cursor: text;
}
#secondary .search-field:focus,
#secondary .search-field:hover,
#secondary .search-field:active {
	outline: none;
	border-bottom: 1px solid #fff;
	background-position: right bottom;
	color: #fff;
}
#secondary .search-field:active {
	cursor: text;
}

#secondary .search-field:focus::-webkit-input-placeholder	{ color: #ffffff; } 
#secondary .search-field:focus::-moz-placeholder			{ color: #ffffff; }
#secondary .search-field:focus::-moz-placeholder			{ color: #ffffff; }
#secondary .search-field:focus::-ms-input-placeholder		{ color: #ffffff; }

#secondary .search-field:hover::-webkit-input-placeholder 	{ color: #ffffff; }
#secondary .search-field:hover::-moz-placeholder 			{ color: #ffffff; }
#secondary .search-field:hover::-moz-placeholder 			{ color: #ffffff; }
#secondary .search-field:hover::-ms-input-placeholder		{ color: #ffffff; }

#secondary .search-submit {
	position: absolute;
	top: 0;
	right: 0;
	margin-left: -35px;
	height: 35px;
	width: 35px;
	height: 100%;
	background: transparent;
    border: none !important;
    text-indent: -9000px;
    cursor: pointer;
}
#primary #search-form {
	position: relative;
	width: 100%;
	border: 1px solid #D6D6D6;
	padding: 5px;
}
#primary .search-field {
	font-family: 'Replica', Arial, sans-serif;
	width: 100%;
	padding: 5px;
	font-size: 1em;
	box-sizing: border-box;
	border: 0;
}
#primary .search-field:focus::-webkit-input-placeholder		{ color: #000000; } 
#primary .search-field:focus::-moz-placeholder				{ color: #000000; }
#primary .search-field:focus::-moz-placeholder				{ color: #000000; }
#primary .search-field:focus::-ms-input-placeholder			{ color: #000000; }

#primary .search-field:hover::-webkit-input-placeholder 	{ color: #000000; }
#primary .search-field:hover::-moz-placeholder 				{ color: #000000; }
#primary .search-field:hover::-moz-placeholder 				{ color: #000000; }
#primary .search-field:hover::-ms-input-placeholder			{ color: #000000; }

#primary .search-submit {
	width: 28%;
	height: 100%;
	position: absolute;
	top: 0;
	right: 0;
	font-weight: bold;
	font-size: 1em;
}


/* 08. FOOTER */
/* ---------------------------------------------------------------------- */
#footer {
	margin-bottom: 10em;
}
#footer:before {
	content: '';
	width: 50px;
	height: 10px;
	display: block;
	margin-bottom: 3em;
	border-radius: 1px;
	background: #EBEBEB;
}
#footer li {
	list-style: none;
	margin: 0;
}
#footer a,
#footer a:link,
#footer a:visited {
	border-bottom: none;
	color: #2C9ADC;
}
#footer a:focus,
#footer a:active,
#footer a:hover {
	color: #2A9E47;
}
#footer .last-updated {
	color: #B2B1B2;
}


/* 09. COVER PAGES */
/* ---------------------------------------------------------------------- */
.page-template-page-cover {
	background: #ADADAD;
	background-repeat: no-repeat;
	background-position: center center;
	background-attachment: fixed;
	background-size: cover;
	color: #fff;
	max-height: 100vh;
	overflow: hidden;
}
.page-template-page-cover #content {
	z-index: 1000;
	position: absolute;
	height: 100vh;
	overflow-y: scroll;
	-webkit-overflow-scrolling: touch;
}
.page-template-page-cover .c-name,
.page-template-page-cover .c-bio,
.page-template-page-cover .c-other,
.page-template-page-cover .c-email,
.page-template-page-cover .c-phone,
.page-template-page-cover .c-title {
	color: #fff;
}

/* cover page images */
.page-template-page-cover.about 					{ background-image: url('images/cover_about.jpg'); }
.page-template-page-cover.community 				{ background-image: url('images/cover_community.jpg'); }
.page-template-page-cover.contact-us 				{ background-image: url('images/cover_contact.jpg'); }
.page-template-page-cover.customers 				{ background-image: url('images/cover_customers.jpg'); }
.page-template-page-cover.projects 					{ background-image: url('images/cover_projects.jpg'); }
.page-template-page-cover.move-your-freight-on-rail { background-image: url('images/cover_freight.jpg'); }
.page-template-page-cover.work						{ background-image: url('images/cover_work.jpg'); }

.page-template-page-cover .site-main {
	margin-right: 53%;
	display: block;
}
.page-template-page-cover #bg {
	background: linear-gradient(90deg, rgba(0,0,0,.8) 30%, rgba(0,0,0,.8) 70%, rgba(0,0,0,0) 70%);
}
.page-template-page-cover .breadcrumbs span:before {
	border-color: transparent transparent transparent #fff;
}
.page-template-page-cover h1 {
	color: #fff;
	border-color: #fff;
}
.page-template-page-cover h2 {
	border-color: #fff;
	color: #fff;
}
.page-template-page-cover h3 {
	color: #fff;
}
.page-template-page-cover .page-list.summary li {
	border-bottom: 1px solid #fff;
}
.page-template-page-cover .page-list.summary li a:after {
	border-color: transparent transparent transparent #fff;
}
.page-template-page-cover p.top a,
.page-template-page-cover p.top a:link,
.page-template-page-cover p.top a:visited {
	background: #fff;
}
.page-template-page-cover p.top a:focus,
.page-template-page-cover p.top a:hover,
.page-template-page-cover p.top a:active {
	background: #2A9E47;
}
.page-template-page-cover p.top a:before {
	border-color: transparent transparent #333132 transparent;
}
.page-template-page-cover a,
.page-template-page-cover a:link,
.page-template-page-cover a:visited,
.page-template-page-cover #footer a,
.page-template-page-cover #footer a:link,
.page-template-page-cover #footer a:visited {
	color: #fff;
	border-color: #fff;
}
.page-template-page-cover a:focus,
.page-template-page-cover a:hover,
.page-template-page-cover a:active,
.page-template-page-cover #footer a:focus,
.page-template-page-cover #footer a:hover,
.page-template-page-cover #footer a:active {
	color: #2A9E47;
	border-color: #2A9E47;
}
.page-template-page-cover a:focus h2,
.page-template-page-cover a:hover h2,
.page-template-page-cover a:active h2 {
	color: #2A9E47;	
}


/* 10. HOME */
/* ---------------------------------------------------------------------- */
.page-template-page-cover.home {
	background-image: url('images/cover_home.jpg');
	background-size: cover;
	background-position: 90% 90%;
	background-attachment: fixed;
}
.page-template-page-cover.home #bg {
	background: none;
}
.page-template-page-cover.home .entry-header,
.page-template-page-cover.home .breadcrumbs,
.page-template-page-cover.home .top,
.page-template-page-cover.home .page-list,
.page-template-page-cover.home #footer {
	display: none;
}
.page-template-page-cover.home video#bgvid {
	position: fixed;
	right: 0;
	bottom: 0;
	min-width: 100%;
	min-height: 100%;
	width: auto;
	height: auto;
	z-index: -100;
}

/* Animated home page title */
#hero {
	margin-top: 10em;
}
#hero strong,
#hero em {
	word-spacing: 9000px;
}
#hero .short {
	word-spacing: normal;
}
#hero .short:after {
	content: '.';
	display: block;
	height: 0;
	visibility: hidden;
}
#hero h1 {
	font-weight: bold;
	font-size: 43px;
	text-transform: uppercase;
	line-height: .75em;
	margin: 0;
	padding: 0;
	border: none;
	color: #fff;
}
#hero h1 strong span {
	border-bottom: .12em solid #484647;
	-webkit-animation: hero-middle 2100ms ease-out;
	animation: hero-middle 2100ms ease-out;
}
#hero h1 strong {
	display: block;
	-webkit-animation: hero-top 2100ms ease-out;
	animation: hero-top 2100ms ease-out;
}
#hero h1 em {
	font-style: normal;
	font-weight: bold;
	color: #fff;
	padding-top: .5em;
	display: block;
	-webkit-animation: hero-bottom 2100ms ease-out;
	animation: hero-bottom 2100ms ease-out;
}
@-webkit-keyframes hero-top {
0%   { opacity: 0; margin-left: 100px; }
25%  { opacity: 1; margin-left: 0; }
100% { opacity: 1; margin-left: 0; }
}
@-webkit-keyframes hero-middle {
0%   { border-color: transparent; }
25%  { border-color: transparent; }
50%  { border-color: #484647; }
}
@-webkit-keyframes hero-bottom {
0%   { opacity: 0; margin-left: 100px; }
50%  { opacity: 0; margin-left: 100px; }
75%  { opacity: 1; margin-left: 0; }
}
@keyframes hero-top {
0%   { opacity: 0; margin-left: 100px; }
25%  { opacity: 1; margin-left: 0; }
100% { opacity: 1; margin-left: 0; }
}
@keyframes hero-middle {
0%   { border-color: transparent; }
25%  { border-color: transparent; }
50%  { border-color: #fff; }
}
@keyframes hero-bottom {
0%   { opacity: 0; margin-left: 100px; }
50%  { opacity: 0; margin-left: 100px; }
75%  { opacity: 1; margin-left: 0; }
}


/* 11. NEWS & COMMENTS */
/* ---------------------------------------------------------------------- */
.entry-title-summary {
	border-bottom: none;
	margin-bottom: 0;
	padding-bottom: 0;
}
.entry-meta {
	margin-top: .5em;
	margin-bottom: 2em;
	border-bottom: 1px solid #D6D6D6;
	font-style: italic;
}
.comments-area h3 {
	font-weight: bold;
	font-size: 1.8em;
	line-height: 1em;
	color: #000;
	border-bottom: 1px solid #000;
	padding: 1em 0 1em 0;
	margin-bottom: 1em;
}
.comments-area label {
	display: block;
	margin-bottom: 1em;
	font-weight: bold;
	text-transform: uppercase;
}
.comments-area input,
.comments-area textarea {
	font-family: 'Replica', Arial, sans-serif;
	padding: 5px;
	width: 100%;
	font-size: 1em;
}
.comment-metadata {
	margin-bottom: 1em;
}
.comment-metadata a {
	border: none;
	color: #000;
	font-style: italic;
}
.comment-list ol,
.comment-list li {
	list-style: none;
	margin: 0;
}
.comment-list li.comment {
	border-top: 1px solid #D6D6D6;
	padding-top: 2em;
	margin-top: 2em;
}
li.comment.depth-1:first-of-type {
	border-top: none;
	padding-top: 0;
}
.comments-area li.comment li.comment {
	padding-left: 2em;
}


/* 12. VACANCIES */
/* ---------------------------------------------------------------------- */
.powered-by-jobadder,
.ja-pager-summary {
	display: none;
}
#ja-jobs-widget .apply {
	margin-top: 1em;
}
#ja-jobs-widget .apply .ja-button {
	margin-top: 2em;
}
#ja-jobs-widget select, 
#ja-jobs-widget input {
	font-family: 'Replica', Arial, sans-serif;
	width: 100%;
	padding: 5px 0 5px 5px;
	font-size: 1em;
	margin: .5em 0 1em 0;
}
#ja-jobs-widget input {
	box-sizing: border-box;
}
#ja-jobs-widget label,
#ja-jobs-widget .ja-button {
	font-weight: bold;
}
#ja-jobs-widget .ja-pager {
	margin-top: 2em;
	padding-top: 2em;
	border-top: 1px solid #000;
}
#ja-jobs-widget .ja-pager a {
	margin-left: .5em;
}
#ja-jobs-widget div[style] {
	text-align: left !important;
}
#ja-jobs-widget .ja-loading {
	width: auto;
}


/* 13. SITE MAP */
/* ---------------------------------------------------------------------- */
.site-map a {
	border: none;
}
.site-map ul {
	margin-bottom: 1em;
}
.site-map ul .children {
	margin-top: 0;
}
.site-map ul .children li {
	margin-bottom: 0;
}

/* 14. ALTERNATE RESOLUTIONS */
/* ---------------------------------------------------------------------- */
@media all and (min-width:1900px) {
body {
	font-size: 1.2em;
}
#menu-main li, 
#secondary .search-field { 
	xfont-size: 1.3em;
}
.page-template-page-cover.home {
	background-size: cover;
}
}

/* . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . */

@media all and (max-width:1600px) {
#menu-main li, 
#secondary .search-field { 
	font-size: 1.4em;
}
#menu-main {
	padding-bottom: 1.6em;
}
.widget:nth-of-type(n+2):before {
	margin-bottom: 2em;
	margin-top: 1.4em;
}
.page-template-page-cover #bg {
	background: linear-gradient(90deg, rgba(0,0,0,.7) 30%, rgba(0,0,0,.7) 72%, rgba(0,0,0,0) 72%);
}
.page-template-page-cover.home {
	background-position: bottom right;
}
}

/* . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . */

@media all and (max-width:1500px) {
#menu-main li, 
#secondary .search-field { 
	font-size: 1.3em;
	line-height: 1.1em;
}
}

/* . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . */

@media all and (max-width:1400px) {
#menu-main li, 
#secondary .search-field { 
	font-size: 1.2em;
}
}

/* . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . */

@media all and (max-width:1300px) {
#menu-main li, 
#secondary .search-field {
	font-size: 1.1em;
}
#menu-main li.current-page-ancestor:after,
#menu-main li.current-menu-item:after {
	right: -45%;
}
.page-template-page-cover .site-main {
	margin-right: 40%;
}
.page-template-page-cover #bg {
	background: linear-gradient(90deg, rgba(0,0,0,.7) 30%, rgba(0,0,0,.7) 80%, rgba(0,0,0,0) 80%);
}
}

/* . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . */

@media all and (max-width:1200px) {
#menu-main li, 
#secondary .search-field { 
	font-size: 1.0em;
	font-weight: bold;
	line-height: 1.2em;
}
}

/* . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . */

@media all and (max-width:1100px) {
#menu-main li, 
#secondary .search-field {
	font-size: 0.9em;
}
#primary {
	margin-left: 28%;
	padding: 5em 6em 0 7em;
}
.page-template-page-cover .site-main {
	margin-right: 38%;
}
#secondary .widget:nth-child(n+4) {
	font-size: .8em;
	line-height: 1.3em;
}
}

/* . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . */

@media all and (max-width:1000px) {
#menu-main li, 
#secondary .search-field { 
	font-size: 0.8em;
	line-height: 1.3em;
}
#menu-main {
	padding-bottom: 1.2em;
}
#menu-main li.current-page-ancestor:after,
#menu-main li.current-menu-item:after {
	right: -50%;
}
#secondary .widget:nth-child(n+4) {
	font-size: .8em;
	line-height: 1.3em;
}
.page-template-page-cover {
	background-position:  center right;
}
.page-template-page-cover #bg {
	background: rgba(0,0,0,.7);
}
.page-template-page-cover .site-main {
	margin-right: 0;
}
}
/* . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . */

@media all and (max-width:900px) {
#bg {
	display: none;
}
body {
	opacity: 1;
}

/* reset cover page styles */
.page-template-page-cover.home {
	background-image: none;
	background-color: #000;
}
.page-template-page-cover #primary {
	background: #fff;
	color: #000;
}
.page-template-page-cover .breadcrumbs span:before {
	border-color: transparent transparent transparent #333132;
}
.page-template-page-cover a,
.page-template-page-cover a:link,
.page-template-page-cover #footer a,
.page-template-page-cover #footer a:link,
.page-template-page-cover #footer a:visited {
	color: #2C9ADC;
	border-color: #2C9ADC;
}
.page-template-page-cover a:visited {
	color: #004874; 
	border-bottom: 1px solid #004874;	
}
.page-template-page-cover a:focus,
.page-template-page-cover a:hover,
.page-template-page-cover a:active,
.page-template-page-cover #footer a:focus,
.page-template-page-cover #footer a:hover,
.page-template-page-cover #footer a:active {
	color: #2A9E47;
	border-color: #2A9E47;
}
.page-template-page-cover h1 {
	color: #252525;
	border-color: #B2B1B2;
}
.page-template-page-cover h2 {
	border-color: #000;
	color: #252525;
}
.page-template-page-cover .page-list.summary li a:after {
	border-color: transparent transparent transparent #000;	
}
.page-template-page-cover .page-list.summary li {
	border-bottom-color: #000;
}
.page-template-page-cover h3,
.contact * {
	color: #000 !important;
}
.page-template-page-cover p.top a,
.page-template-page-cover p.top a:link,
.page-template-page-cover p.top a:visited {
	background: #EBEBEB;
}
.page-template-page-cover p.top a:focus,
.page-template-page-cover p.top a:hover,
.page-template-page-cover p.top a:active {
	background: #2A9E47;
}
.page-template-page-cover p.top a:before {
	border-color: transparent transparent #fff transparent;
}
.page-template-page-cover p.top:hover a:before {
	border-color: transparent transparent #fff transparent;
}

/* reset site structure */
#page {
	padding-bottom: 0;
}
#primary,
#secondary,
.site-supporting {
	width: auto;
	float: none;
	margin: 0;
	padding: 0;
	position: static;
	height: auto;
	overflow: auto;	
}
#secondary {
	background: #333132;
}
#primary,
.site-supporting {
	padding: 2em;	
}
#footer {
	margin-bottom: 0;
}

/* reset font styles for navigation */
#menu-main li, 
#secondary .search-field  {
	font-size: 1em;
	line-height: 1.2em;
}
.site-branding a img {
	width: 100px;
	margin: 0 0 2em 0;
}
#secondary .widget:nth-child(n+4) {
	font-size: .9em;
	line-height: 1.3em;
}
#menu-main li.current-page-ancestor:after,
#menu-main li.current-menu-item:after {
	left: -3em;
	border-radius: 0;
	width: 2em;
	background: none;
	border-bottom: 1px solid #fff;
	top: -.1em;
	position: absolute;
}
.breadcrumbs span {
	padding: 0 6px 0 12px;
}

/* home page */
.page-template-page-cover.home #primary {
	background: none;
}
.page-template-page-cover.home #primary {
	background-image: linear-gradient(45deg, rgba(0,0,0,1) 0%,rgba(0,0,0,0) 100%), url('images/cover_home.jpg');
	background-size: cover, cover;
	background-position: left bottom, 90% top;
	background-attachment: scroll, scroll;

}
.page-template-page-cover.home video#bgvid {
	display: none;
}
#hero {
	margin-top: 3em;
	margin-bottom: 15em;
}
.page-template-page-cover #content {
	position: relative !important;
}
.page-template-page-cover.home .widget_recent_entries {
	display: none;
}
}

@media all and (max-width:450px) {
#hero h1 {
	font-size: 2em;
}
}


/* 15. MAP */
/* ---------------------------------------------------------------------- */
.tooltip {
    pointer-events:none; /*let mouse events pass through*/
    opacity:0;
    transition: opacity 0.3s;
    border-radius: 5px;
    color: white;
    padding: 5px;
    font-size: 10px;
}

div.tooltip {
/*     background: currentColor; */
    position: absolute;
    text-align:center;
}
div.fixed {
    position:fixed;
}
g.tooltip:not(.css) {
  fill:white;
}
g.tooltip rect {
    fill:white;
    stroke: gray;
}
.svg-container{
 width: 100%;
}
.my-svg{ /* svg into : object, img or inline */
}
#corridor-ns,#corridor-ew-north,#corridor-ew-south,#corridor-ew-west,#corridor-hunter{
	cursor: pointer;
}

/* 16. EXTRA */
/* ---------------------------------------------------------------------- */
/* Events calendar plugin */
#tribe-events h1 {
	font-size: 2em;
	line-height: 1em;
	padding-bottom: 1em;
}
.datepicker.dropdown-menu {
	z-index: 1000 !important;
}
.tribe-bar-views-option a {
	border-bottom: none !important;
}
#tribe-events-content-wrapper,
.tribe-events-schedule {
	float: left;
}
.tribe-events-schedule {
	width: 100%;
}
body.tribe-events-style-full .widget_text {
	display: none;
}
#tribe-events .tribe-events-content p, 
.tribe-events-after-html p, 
.tribe-events-before-html p {
	line-height: 1.2em;
	margin-bottom: 1em;
}
.single-tribe_events .tribe-events-event-meta {
	font-size: 1em;
}
.tribe-events-tooltip .tribe-events-event-body {
	font-size: 1.3em !important;
}
.tribe-event-duration {
	font-weight: bold;
	margin: 1em 0;
}
.recurring-info-tooltip, 
.tribe-events-calendar .tribe-events-tooltip, 
.tribe-events-week .tribe-events-tooltip {
	padding: 2em 2em 0 2em;
}
#tribe-events-content *,
.datepicker.dropdown-menu * {
	font-family: 'Replica', Arial, sans-serif !important;
}
.datepicker.dropdown-menu {
	text-transform: uppercase;
}
