/*

Colours:

Light blue: e2f2fc;
Medium blue: 00a2e5;
Dark blue: 205d88;

Green: 7ac142;

Grey: d4d7d6;
Dark grey: 6d6e71;

Black: 231f20;

*/

/* Kate Hiam Web Development CSS Code */

@font-face {
	font-family: 'Trueno';
	src: url('../fonts/truenobd-webfont.woff2') format('woff2'), url('../fonts/truenobd-webfont.woff') format('woff');
	font-weight: 800;
	font-style: normal;
}

@font-face {
	font-family: 'Trueno';
	src: url('../fonts/truenobdit-webfont.woff2') format('woff2'), url('../fonts/truenobdit-webfont.woff') format('woff');
	font-weight: 800;
	font-style: italic;
}

@font-face {
	font-family: 'Trueno';
	src: url('../fonts/truenolt-webfont.woff2') format('woff2'), url('../fonts/truenolt-webfont.woff') format('woff');
	font-weight: normal;
	font-style: normal;
}

@font-face {
	font-family: 'Trueno';
	src: url('../fonts/truenoltit-webfont.woff2') format('woff2'), url('../fonts/truenoltit-webfont.woff') format('woff');
	font-weight: normal;
	font-style: italic;
}

@font-face {
	font-family: 'Trueno';
	src: url('../fonts/truenorg-webfont.woff2') format('woff2'), url('../fonts/truenorg-webfont.woff') format('woff');
	font-weight: 600;
	font-style: normal;
}

@font-face {
	font-family: 'Trueno';
	src: url('../fonts/truenorgit-webfont.woff2') format('woff2'), url('../fonts/truenorgit-webfont.woff') format('woff');
	font-weight: 600;
	font-style: italic;
}

@font-face {
	font-family: 'Trueno';
	src: url('../fonts/truenosbd-webfont.woff2') format('woff2'), url('../fonts/truenosbd-webfont.woff') format('woff');
	font-weight: 700;
	font-style: normal;
}

@font-face {
	font-family: 'Trueno';
	src: url('../fonts/truenosbdit-webfont.woff2') format('woff2'), url('../fonts/truenosbdit-webfont.woff') format('woff');
	font-weight: 700;
	font-style: italic;
}

body {
	color: #231f20;
	border-top: 2px solid #d4d7d6;
	border-bottom: 2px solid #d4d7d6;
	font-family: 'Trueno', Helvetica, Arial, sans-serif;
	font-size: 16px;
}

body * {
	vertical-align: top;
}

img {
	max-width: 100%;
}

.header-image {
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	height: 300px;
}

.header-image .container * {
	display: inline-block;
	height: 100%;
}

.sub-header {
	background: #d4d7d6;
}

nav {
	background: #00a2e5;
}

header .logo {
	vertical-align: top;
	margin-right: 20px;
}

header .login {
	background: #7ac142;
	line-height: 85px;
	padding-left: 15px;
	padding-right: 15px;
	font-size: 1.2em;
	color: #ffffff;
	text-align: center;
	min-width: 70px;
	margin-left: 20px;
	font-weight: 600;
	height: 85px;
}

header .login:hover, header .login:active, header .login:focus {
	text-decoration: none;
	background: #66a435;
}

header h1 {
	font-size: 1.1em;
	line-height: 85px;
	margin: 0;
}

.copyright {
	padding-top: 20px;
}

h1, .copyright {
	display: inline-block;
	color: #205d88;
	font-weight: 800;
}

h1 span, .copyright span {
	color: #00a2e5;
}

ul.links-inline, ul.links-down, .footer-col-container ul {
	list-style-type: none;
	padding: 0;
}

ul.links-inline li {
	display: inline-block;
}

footer ul.links-inline li {
	padding-right: 15px;
}

.search * {
	display: inline;
}

section {
	display: inline-block;
	width: 100%;
}

section .divider {
	display: inline-block;
	width: 100%;
	padding-left: 15px;
	padding-right: 15px;
}

section .divider hr {
	border-top: 4px solid #d4d7d6;
	margin: 0;
}

.date {
	color: #6d6e71;
	display: block;
	margin-bottom: 7px;
}

.featured-project img, footer img, .popular-page img{
	width: 100%;
}

.featured-project a {
	background: #e2f2fc;
	color: #00a2e5;
}

.featured-project a:hover, .featured-project a:active, .featured-project a:focus {
	color: #205d88;
	text-decoration: none;
	background: #d2e7f4;
}

.logo-text {
	display: inline;
}

a {
	display: inline-block;
}

a {
	-webkit-transition: color 0.3s ease, border 0.3s ease, border-color 0.3s ease, background 0.3s ease, background-color 0.3s ease, opacity 0.3s ease;
	-moz-transition: color 0.3s ease, border 0.3s ease, border-color 0.3s ease, background 0.3s ease, background-color 0.3s ease, opacity 0.3s ease;
	-o-transition: color 0.3s ease, border 0.3s ease, border-color 0.3s ease, background 0.3s ease, background-color 0.3s ease, opacity 0.3s ease;
	transition: color 0.3s ease, border 0.3s ease, border-color 0.3s ease, background 0.3s ease, background-color 0.3s ease, opacity 0.3s ease;
}

a:focus {
	outline: none;
}

h2, h3, h4 {
	color: #205d88;
	font-weight: 600;
}

.popular-page, .latest-update, .featured-project {
	font-weight: 600;
}

#latestUpdates {
    padding-left: 15px;
    padding-right: 15px;
}

.latest-update {
    page-break-inside: avoid;
}

footer a, .sub-footer a {
	color: #231f20;
}

.sub-footer {
	margin-top: 40px;
}

.sub-footer .bg {
	background-image: url('../images/footer.png');
	background-position: center bottom;
	background-size: 100% auto;
	background-color: #ebebeb;
	background-repeat: no-repeat;
	padding-bottom: 20px;
	padding-top: 20px;
}

.sub-footer .footer-col-container {
	padding-right: 45px;
}

.featured-project {
	padding-bottom: 20px;
    min-height: 320px;
}

.featured-project span.project-text-container {
	padding: 20px;
	line-height: 120% !important;
	font-size: 1.6em;
	min-height: 106px;
	height: 106px;
	display: table-cell;
	vertical-align: middle;
}

.contact-details span {
	font-weight: bold;
	color: #0065a5;
}

.contact-details p {
	margin-bottom: 0;
}

.contact-details {
	margin-bottom: 5px;
}

.links-down li, .footer-col-container ul li {
	margin-bottom: 5px;
}

h4 {
	font-size: 1.1em;
}

.latest-update a {
	border-bottom: 2px solid #d4d7d6;
	padding: 15px 0;
	color: #231f20;
	font-size: 1.05em;
	line-height: 1.2em;
	width: 100%;
}

.latest-update a:hover, .latest-update a:active, .latest-update a:focus {
	text-decoration: none;
	background: #e2f2fc;
}

.latest-update.last-two a {
	border-bottom: 0;
}

.latest-update h4 {
	margin-top: 0;
	color: #00a2e5;
	margin-bottom: 7px;
}

.popular-page {
	padding-top: 20px;
	font-size: 1.2em;
}

.popular-page a {
	color: #00a2e5;
	width: 100%;
	display: table;
}

.popular-page a:hover, .popular-page a:active, .popular-page a:focus {
	text-decoration: none;
	color: #205d88;
}

.popular-page a:hover .icon, .popular-page a:active .icon, .popular-page a:focus .icon {
	opacity: 0.7;
}

.popular-page * {
	vertical-align: middle;
	display: inline-block;
}

.popular-page span {
	display: table-cell;
}

nav ul.links-inline li {
	width: 16.5%;
	display: table;
	float: left;
}

nav a {
	color: #ffffff;
	padding: 15px 10px;
	border: 5px solid rgba(0,0,0,0);
	width: 100%;
	height: 100%;
	vertical-align: middle;
	display: table-cell;
	font-weight: 600;
}

nav ul.links-inline > li:hover a, nav ul.links-inline > li:active a, nav ul.links-inline > li:focus a {
	text-decoration: none;
	color: #ffffff;
	border: 5px solid #205d88;
}

.highlighted-menu{
	text-decoration: none;
	color: #ffffff;
	border: 5px solid #0069b5;
}

nav a span.nav-link-container {
	font-size: 1.1em;
	line-height: 1.3em;
	display: inline-block;
}

nav a span.nav-link-container span {
	display: block;
}

nav ul {
	margin: 0;
	display: inline-block;
}

.social-media a {
	color: #00a2e5;
	line-height: 85px;
	padding: 0 5px;
}

.social-media a:hover, .social-media a:active, .social-media a:focus {
	text-decoration: none;
	color: #205d88;
}

.social-media .fa {
	line-height: 85px;
	font-size: 2em;
}

.sub-header {
	padding: 10px 0;
	margin-bottom: 20px;
}

.sub-header h2 {
	font-size: 17px;
	margin: 0;
	line-height: 24px;
	font-weight: 700;
}

.latest-update a .excerpt {
	display: inline-block;
}

.header-image .container {
	position: relative;
	height: 100%;
}

.header-image .container span {
	color: #ffffff;
	font-size: 2em;
	font-weight: 600;
	bottom: 20px;
	left: 33%;
	height: auto;
	position: absolute;
	line-height: 1.1em;
	width: 50%;
	-webkit-text-shadow: 0px 0px 10px rgba(0, 0, 0, 1);
	-moz-text-shadow: 0px 0px 10px rgba(0, 0, 0, 1);
	-o-text-shadow: 0px 0px 10px rgba(0, 0, 0, 1);
	text-shadow: 0px 0px 10px rgba(0, 0, 0, 1);
}

.search input {
	padding: 0 5px;
	font-size: 0.9em;
	min-width: 300px;
	margin-left: 10px;
	line-height: 24px;
	border: none;
}

.search span {
	line-height: 24px;
	font-size: 19px;
	color: #205d88;
}

.icon {
	padding-right: 20px;
	width: 28%;
	min-width: 80px;
}

footer img {
	padding-right: 30px;
}

nav li {
	position: relative;
}

#mobile-menu-opener, #mobile-menu-opener:hover, #mobile-menu-opener:focus, #mobile-menu-opener:active {
	color: #ffffff;
	text-decoration: none;
	display: none;
}

.child-menu {
	padding: 0;
	margin: 0;
	position: absolute;
	background: #205d88;
	z-index: 9;
	left: 0;
	top: 84px;
	width: 100%;
	min-width: 250px;
	display: none;
	opacity: 0;
	-webkit-transition: opacity 0.3s ease;
	-moz-transition: opacity 0.3s ease;
	-o-transition: opacity 0.3s ease;
	transition: opacity 0.3s ease;
}

ul.links-inline > li:nth-last-of-type(1) .child-menu, ul.links-inline > li:nth-last-of-type(2) .child-menu{
	left: auto;
	right: 0;
}

.child-menu li{
	width: 100% !important;
	position: relative;
}

.child-menu a{
	width: 100%;
	padding: 5px;
	line-height: 1em;
}

.child-menu .nav-link-container {
	font-size: 0.8em;
}

nav ul.child-menu > li:hover > a, nav ul.child-menu > li:active > a, nav ul.child-menu > li:focus > a {
	border-color: rgba(0,0,0,0);
	background: #144466;
}

nav li:hover .child-menu.second-level, nav li .child-menu.second-level:hover {
	opacity: 1;
	display: block;
}

.view-children-mobile {
	display: none;
}

.child-menu.third-level {
	left: 100px;
	top: 0;
	bottom: auto;
	background: #3d83b5;
	display: none;
}

nav .child-menu.second-level > li:hover .child-menu.third-level, nav li .child-menu.third-level:hover {
	opacity: 1;
	display: block;
}

.child-menu.third-level > li > a {
	border-color: rgba(0,0,0,0) !important;
	background: #3d83b5;
}

nav ul.child-menu.third-level > li:hover > a, nav ul.child-menu.third-level > li:active > a, nav ul.child-menu.third-level > li:focus > a {
	border-color: rgba(0,0,0,0);
	background: #3071a0;
}

th {
    padding: 0.5em;
}

td {
    padding: 0.5em;
    border-bottom: 1px solid #cccccc;
}

sub {
    bottom: 0.25em;
    vertical-align: text-bottom;
}

@media screen and (max-width: 1200px) {
	nav a {
		padding-left: 5px;
		padding-right: 5px;
		border-width: 3px;
	}

	nav ul.links-inline > li:hover a, nav ul.links-inline > li:active a, nav ul.links-inline > li:focus a {
		border-width: 3px;
	}

	nav a span.nav-link-container {
		font-size: 0.8em;
		line-height: 1.3em;
	}
}

@media screen and (max-width: 991px) {
	header h1 {
		line-height: 1.1em;
	}

	.logo-container {
		max-width: 60%;
		display: table;
	}

	.logo, .logo-text {
		display: table-cell;
		vertical-align: middle;
	}

	.logo img {
		height: 85px;
		width: 140px;
		padding-right: 20px;
	}

	header .logo {
		width: 140px;
	}
}

@media screen and (max-width: 1366px) {
	nav .links-inline > li > a span.nav-link-container{
		position: static;
		left: 0;
	}

	nav ul.links-inline > li:hover a, nav ul.links-inline > li:active a, nav ul.links-inline > li:focus a{
		border-color: rgba(0,0,0,0);
	}

	nav .container, nav .container > div{
		padding: 0;
		margin: 0;
		width: 100%;
	}

	nav li {
		text-align: center;
	}

	nav ul.child-menu > li:hover > a, nav ul.child-menu > li:active > a, nav ul.child-menu > li:focus > a {
		background: inherit;
	}

	.view-children-mobile{
	    color: #ffffff;
		display: table-cell;
		vertical-align: middle;
		height: 100%;
		text-align: center;
		font-size: 1em;
		z-index: 10;
		padding: 10px 15px;
		line-height: 1.8em;
		position: absolute;
		top: 0;
		right: 0;
	}

	.view-children-mobile i{
		line-height: 20px;
		position: static;
		top: 0;
	}

	.child-menu{
		display: none;
		position: static;
		opacity: 1;
		padding: 0;
		min-width: 0;
		max-height: 0;
		overflow: hidden;
		-webkit-transition: max-height 0.3s ease;
		-moz-transition: max-height 0.3s ease;
		-o-transition: max-height 0.3s ease;
		transition: max-height 0.3s ease;
	}

	.child-menu.open {
		display: block;
		max-height: 1000px;
	}

	.child-menu li {
		display: inline-block;
		width: 100%;
	}

	.child-menu a {
		padding: 10px;
		width: 100%;
		text-align: left;
		display: inline-block;
	}

	.has-child-menu {
		display: block;
	}

	.secondary-container {
		float: none !important;
		width: 100%;
		display: inline-block;
		padding-top: 20px;
	}

	.login {
		float: right;
	}

	.social-media a, .social-media .fa, header .login {
		line-height: 60px;
		height: 60px;
	}

	.social-media .fa {
		font-size: 1.5em;
	}

	nav a span.nav-link-container {
		font-size: 0.9em;
		line-height: 20px;
	}

	.sub-footer {
		text-align: center;
	}

	footer {
		text-align: center;
	}

	.copyright {
		font-size: 0.8em;
	}

	footer ul.links-inline li {
		padding: 0 5px;
	}

	.latest-update.last-two a {
		border-bottom: 2px solid #d4d7d6;
	}

	.search {
		width: 100%;
		text-align: center;
		padding-top: 10px;
	}

		.search input {
			min-width: 0;
			width: 50%;
		}

	.page-name {
		width: 100%;
		text-align: center;
	}

	.header-image .container span {
		font-size: 1.8em;
		left: 20px;
		right: 60px;
		width: auto;
	}
	.logo-container{
		width: 100%;
		max-width: none;
		display: table;
	}
	header .logo{
		display: table-cell;
		margin-right: 0;
		float: left;
    	vertical-align: middle;
    	width: auto;
    	min-width: 120px;
	}

	header .logo img {
		width: 100%;
		height: auto;
		padding: 0;
	}

	header h1 {
		line-height: normal;
		padding-left: 10px;
		padding-top: 5px;
		padding-right: 10px;
		font-size: 1em;
		display: inline-block;
    	width: 100%;
	}
	header .logo-text{
	    vertical-align: middle;
	    width: 90%;
	    display: table-cell;
	}

	nav a {
		padding: 10px 15px;
		text-align: left;
		width: 100%;
		height: auto !important;
	}

	nav li a {
		padding-right: 46px !important;
	}

	nav ul.links-inline li {
		width: 100% !important;
	}

	nav ul.links-inline {
		padding: 10px 0;
		display: inline-block;
		border-top: 1px solid #ffffff;
	}

	#nav-ul-container {
		max-height: 0;
		height: auto;
		overflow: hidden;
		-webkit-transition: max-height 1s ease;
		-moz-transition: max-height 1s ease;
		-o-transition: max-height 1s ease;
		transition: max-height 1s ease;
	}

		#nav-ul-container.open {
			max-height: 1000px;
		}

	#mobile-menu-opener {
		width: 100%;
		text-align: center;
		display: inline-block !important;
		border: none;
		padding: 20px 0;
	}

	footer img {
		padding-right: 0;
	}

	.sub-footer .footer-col-container {
		padding-right: 0;
	}

	.featured-project span.project-text-container {
		height: auto !important;
		font-size: 1.2em !important;
		min-height: 0;
	}

	.latest-update a .excerpt {
		height: auto !important;
	}

	nav a span.nav-link-container span {
		display: inline-block;
		padding-right: 5px;
	}

	.sub-footer .container, .sub-footer .container > div {
		padding: 0;
	}

	.latest-update.last-one a {
		border-bottom: none;
	}
	
	.child-menu.third-level, .child-menu, .child-menu.second-level{
		left: 0 !important;
		right: 0 !important;
	}
}

#contour label.fieldLabel {
    font-weight: normal !important;
    width: 400px !important;
    text-align: right;
    padding-right: 1em;
    padding-top: 14px;
}

sup {
    top: auto;
}

@media screen and (max-width: 768px){
	header .container, header .container > div{
		padding: 0;
		margin: 0;
		width: 100%;
	}
}

@media screen and (min-width: 768px) {
    .twoCols {
        column-count: 2;
        -moz-column-count: 2;
        column-gap: 30px;
        -moz-column-gap: 30px;
    }
}

@media screen, print {
	#skipLinks {
		display: none;
	}
}
