header{
    height: initial;
    background: initial;
    color: initial;
    overflow: initial;
}
header *{
	visibility: visible;
}



*{
    box-sizing: border-box;
}

html, body{
    margin: 0;
    padding: 0;
    min-height: 100%;
    background: #fff;
    font-family: 'Open Sans', sans-serif;
    color: #000;
    font-size: 16px;
}

body{
	overflow-y: scroll;
}

header{
	background: #eee;
	width: 100%;
	box-shadow: 0px 0px 10px #000;
}

h1, h2, h3{
	font-weight: 300;
	
}
h2{
    font-size: 42px;
}
h1, h2{
	color: #182F7C;	
}

iframe {
    max-width: 100%;
}

nav#menu{
    z-index: 100;
    text-transform: uppercase;
    font-size: 13px;
    font-weight: bold;
}


nav#menu .dropdown-menu{
	border-radius: 0;
	font-size: inherit;
	border: none;
	top: 30px;
	padding: 0;
	border-top: solid transparent 12px;
}

nav#menu .dropdown-item{
	padding: .5rem 1rem;
}
nav#menu .dropdown-item.active, nav#menu .dropdown-item:active{
	background: #ccc;
}

nav#menu, section .inner, footer .inner{
	max-width: 1000px;
    margin: 0 auto;
}

@media (min-width: 1200px) {
	nav#menu, section .inner, footer .inner{
		max-width: 90%;
	}
}
@media (min-width: 1400px) {
	nav#menu, section .inner, footer .inner{
		max-width: 80%;
	}
}
@media (min-width: 1600px) {
	nav#menu, section .inner, footer .inner{
		max-width: 75%;
	}
}


#logo_container{
    position: relative;
    width: 144px;
    height: 22px;
}
#logo_container img{
    height: 22px;
    position: absolute;
    top: 0;
    left: 0;
}
#logo_container .white{
    display: none;
}
#logo_container .colour{

}

.ie #logo_container{
	position: absolute;
	top: 15px;
}

.navbar-toggler{
	font-size: inherit;
}


div#wrapper{
    width: 100%;
}

section{
    min-height: 300px;
    background: #eee;
    position: relative;
    border-bottom: 5px solid #fff;
    color: #000;
}

section.mid{
    min-height: 500px;
}

section.short{
    min-height: 300px;
}
   
section.veryshort{
	height: auto;
	min-height: auto;
}
   
section.nopad{
    padding: 0;
}

/*
section:nth-child(odd) {
    background: #669;
    background: #465896;
}

section:nth-child(even) a {
	color: #fbb;
}
section:nth-child(odd) a {
	color: #ccf;
}

section:nth-child(even) {
    background: #966;
    background: #f0494f;
}
*/

section .inner, section .sub{
    padding: 20px;
    width: 100%;
    z-index:1;
    position:relative;
}



section .inner.midpad, section .sub.midpad{
    padding: 30px;
}
section .inner.bigpad, section .sub.bigpad{
    padding: 50px;
}

section .inner.half{
    width: 50%;
}
section .inner.wide{
    width: 70%;
}
section .inner.narrow{
    width: 30%;
}



section .inner p:last-child, section .sub p:last-child {
	margin: 0;
	padding: 0;
}


section .sub.media{
    color: #fff;
    background: rgba(50,50,50,0.5);
    background-size: cover;
    background-position: center;
    opacity: 0.8;
    transition: .8s ease-in-out;
}

section.visible .sub.media, section:hover .sub.media{
    opacity: 0.95;
    transition: .3s ease-in-out;
}

section .content{
    height: auto;
    padding: 20px;
    background: #fff;
}
section .content.dark{
    color: #fff;
    background: rgba(50,50,50,0.5);
}

@media (max-width: 768px) {
    section{
        max-height: none;
        height: auto;
    }
    section .inner{
        height: auto;
    }
    
    section{
          max-height: none !important;
    }
    section .media{
        height: 30% !important;
        min-height: 300px;
    }
    
    section .content{
	    height: auto;
	}
}

section.white{
    background: #fff;
    color: #000;
}

section.main .inner img{
	max-width: 100%;
    height: auto;
}


/* Footer */
footer{
	background: #182F7C;
    font-size: 14px;
    color: #fff;
}
footer h2, footer h3{
	color: #fff;
}
footer > div{
	padding: 20px;
}
footer #top{
	min-height: 300px;
	background: #3351b5;
	background: #465896;
	padding: 30px 20px;
}
footer #top ul{
	list-style-type: none !important;
	margin: 0;
	padding: 0;
}
footer #top ul li{
	margin-bottom: 3px;
}
footer #top ul li a{
	color: #eef;
}
footer .social-button img{
	width: 64px;
}
footer .social-button:hover img{
	filter: drop-shadow(0px 0px 5px rgba(255,255,255,0.80));
}
footer #top form{
	margin-bottom: 20px;
}
footer #top form .btn{
	background: #182F7C;
	border: #182F7C;
	margin-left: 10px;
}

footer #top form .btn:hover{
	background: #182F7C;
	opacity: 0.8;
}
footer #top div.inner > div{
	margin-bottom: 20px;
}
@media (max-width: 573px) {
	footer #top form .btn{
		margin-left: 0px;
		margin-top: 5px;
	}
}
/*
footer #top form input{
	max-width: 80%;
}

@media (min-width: 992px) and (max-width: 1250px) {
	footer #top form .btn{
		margin-left: 0px;
	}
}
*/

#overview{
    position: relative;
    background: #000;
    /* background: #465896; */
    overflow: hidden;
    height: 61.8%;
    min-height: 400px;

}
#overview h1{
	color: #fff;
    font-size: 4em;
}
#overview video{
    position: absolute;
    top: 0;
    left: 0;
    filter: saturate(80%) opacity(70%) blur(5px);
    width: 100%;
}
#overview .play{
	font-size: 3em;
	opacity: 0.8;
	display: inline-block;
	width: 100px;
	height: 100px;
}
#overview .play:hover{
	opacity: 1;
	cursor: pointer;
	
	transform-origin: center center;
}
#overview .play.opening{
	transform: rotate(90deg);
	transition: .2s ease-in-out;
}
#overview .play::selection {
    background: transparent;
}

#overview .pause{
	font-size: 5em;
	opacity: 0.9;
	position: absolute;
	bottom: 50px;
	left: 30px;
	width: 100px;
	height: 100px;
	display: none;
	z-index: 5;
	filter: drop-shadow(0px 0px 5px rgba(0,0,0,0.6));
}
#overview .pause:hover{
	opacity: 1;
	cursor: pointer;
}

#overview, .header{
	color: #fff;
}

.header .image{
	position: absolute;
	width: 100%;
	height: 100%;
	background-repeat: none;
	background-size: cover;
	background-position: center; 
	filter: saturate(70%) brightness(60%);
}

.ie section.header{
	background: #000;
}
.ie section.header .image, .ie #overview video{
	filter: none;
	opacity: 0.6;
}	
	
.header h1{
	color: #fff;
	font-size: 72px;
	font-size: 5rem;
}

@media (max-width: 768px) {
	.header h1{
		font-size: 3.5rem;
	}
}



/* HOMEPAGE */
#services{
    color: #fff;
    background: #fff;
}
#services .inner{
    padding-top: 0;
}
#services .item-outer{
	padding: 0;
	margin: 0;
}
#services .item{
    position: relative;
    background-size: cover;
    background-position: center center;
    border-bottom-right-radius: 90px;
    min-height: 320px;
    overflow: hidden;
    background-color: #ccc;
    cursor: pointer;
}

@media (max-width: 768px) {
	#services .item-outer {
		padding: 0px 0px 15px 0px;
	}
}

@media (min-width: 768px) {
	#services .item-outer:nth-child(odd) {
		padding: 7px 7px 7px 0px;
	}
	#services .item-outer:nth-child(even) {
		padding: 7px 0px 7px 7px;
	}
}

@media (min-width: 1200px) { /* 992px */
	#services .item-outer:nth-child(3n+1) {
		padding: 7px 7px 7px 0px;
	}
	#services .item-outer:nth-child(3n+2) {
		padding: 7px 7px 7px 7px;
	}
	#services .item-outer:nth-child(3n+3) {
		padding: 7px 0px 7px 7px;
	}
}

#services .item .filter{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}
#services .item h2{
    margin: 0;
}
#services .item a{
    color: #fff;
}
#services .item .text{
    background:  rgba(64, 79, 160, 0.87);
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: auto;
    padding: 20px;
    font-size: 14px;
    z-index: 1;
    min-height: 108px;
}

@media (min-width: 1400px) {
	#services .item .text{
	    min-height: auto;
	}
}
@media (max-width: 768px) {
	#services .item .text{
	    min-height: auto;
	}
}

#services .item .summary{
    margin-top: 10px;
}

#services .item .filter{
    background: transparent !important;
    transition: background 0.4s;
}
#services .item:hover .filter{
    background: rgba(240,73,79,0.2) !important;
    transition: background 0.4s;
}


#news{
	color: #000;
}
#news .sub{
	padding: 20px 0;
	padding-right: 20px;
}
#news .sub:first-child{
	padding-left: 20px;
}
#news .content, .related .content{
	height: 50%;
}
@media (max-width: 768px) {
	#news .sub{
		padding: 10px 20px;
	}
}
#news .sub .content{
    position: relative;
}
#news .sub .content .readmore{
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100px;
    padding: 60px 15px 15px 15px;
    background: linear-gradient(to bottom, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 50%);
}

hr{
	margin-bottom: 40px;
	margin-bottom: 3rem;
}


#customers img{
	padding: 10px;
}



/* CONTENT SECTIONS */
section{
    /*font-size: 14px;*/
    font-weight: 400;
    border-bottom: none;
}
section.red {
    background: #f0494f;
}    
section.blue {
    background: #465896;
}
section.header{
	background: #444;
}
section.header.mid{
	height: 500px;
}
section.header {
    animation-name: fadeIn;
    animation-iteration-count: 1;
    animation-timing-function: ease-in-out;
    animation-duration: 1s;
    animation-fill-mode:forwards;
}
@keyframes fadeIn {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}


section.text{
    padding-top: 30px;
    padding-bottom: 30px;
    width: 100%;
}
section.text .inner *{
	max-width: 100%;
}
@media (max-width: 768px) {
	section.doubletext .inner > div:first-child{
	    padding-bottom: 30px;
	}
}
section.doubletext{
    padding-top: 30px;
    padding-bottom: 30px;
    width: 100%;
}
section.doubletext .inner *{
	max-width: 100%;
}

section.calltoaction{
    background: #f0494f;
    color: #fff;
    padding: 40px;
    font-size: 18px;
}
section.calltoaction h2, section.calltoaction h3{
	color: #fff;
	font-weight: 300px;
}
section.calltoaction a{
    color: #fee;
    text-decoration: underline;
}
section.quote{
    text-align: center;
    background: #eee;
    padding: 10px;
}
section.quote .inner{
    color: #444;
}




@media (max-width: 768px) {
	section.textandimage .inner > div, section.imageandtext .inner > div{
		margin-bottom: 20px !important;
		text-align: left !important;
	}
}
section.text h2, section.doubletext h2, section.textandimage h2, section.imageandtext h2,
section.videoandtext h2, section.textandvideo h2, section.video h2, 
section.youtubeandtext h2, section.textandyoutube h2, section.youtubex h2,
section.text h3, section.doubletext h3, section.textandimage h3, section.imageandtext h3,
section.videoandtext h3, section.textandvideo h3, section.video h3, 
section.youtubeandtext h3, section.textandyoutube h3, section.youtube h3 
{
    color: #182F7C;
    font-weight: 400;
}
section.video h2, section.youtube h2, section.video h3, section.youtube h3 
{
    color: #fff;
}


section.textandimage .inner >div{

}
section.textandimage .inner >div ul{
    padding-right: 1.5em;
}
section.textandimage .inner >img{
    border-bottom-right-radius: 70px;
}
section.imageandtext .inner >div{

}
section.imageandtext .inner >div ul{
    padding-left: 1.5em;
}
section.imageandtext .inner >img{
    border-bottom-right-radius: 70px;
}
section .inner >div ul{
   /* font-size: 15px; */
}

section.imageandtext .inner, section.textandimage .inner{
	padding: 30px 20px !important;
}
.ie section.imageandtext img, .ie section.textandimage img{
	padding-right: 0px;
}

section.imageandtext .inner >div, section.videoandtext .inner >div{
	padding-left: 50px;
}
section.textandimage .inner >div, section.textandvideo .inner >div{
	padding-right: 50px;
}
@media (max-width: 768px) {
	section.imageandtext .inner >div, section.videoandtext .inner >div{
		padding-left: inherit;
		padding-bottom: 15px;
	}
	section.textandimage .inner >div, section.textandvideo .inner >div{
		padding-right: inherit;
		padding-bottom: 15px;
	}
}




section .inner .image{
    background-repeat: no-repeat;
    background-color: #ccc;
    background-size: cover;
    overflow: hidden;
    border-radius: 100%;
    width: 80%;
    max-width: 100%;
    margin: 0 auto;
}

section.related{
	color: #000;
}
section.related .inner{

}
section.related .sub{
	padding: 15px;
}

section.related .sub:last-child{
}


article img{
	max-width: 100%;
	height: auto;
}

#archive {
	
}
#archive ul{
	list-style: none;
	padding: 0;
}
#archive ul li{

}
#archive ul ul li{
	font-size: 13px;
}

.cardies{
    width: 100% !important;
}


.anchor{
	display: block;
	height: 48px;
	margin-top: -48px;
	visibility: hidden;
	z-index: -20;
}







/* DARK MODE */
body.dark{
    width: 100%;
    min-height: 100%;
    background: #111;
    overflow-y: scroll;
    color: #ccc;
}
body.dark h1{
	color: #465896;
}
body.dark h2, body.dark h3 {
	color: #aaa;
}
body.dark > .label{
    color: #ccc;
}
body.dark .compositions-select .composition.view, body.dark .button{
    border-color: #444;
}
body.dark .compositions-select .composition.view:hover, body.dark .button:hover{
    border-color: #a66;
}
body.dark .compositions-select .composition.view.active, body.dark .button.active{
    border-color: #a44;
}
body.dark .button{
    color: #ccc;
    background-color: #555;
}
body.dark table.list tr:nth-child(even) {
	background: #414141;
}
body.dark table.list tr:nth-child(odd) {
	background: #4A4A4A;
}
body.dark table.list td, body.dark  table.list th {
	border: 1px solid #333;
}
body.dark table.list tr.selected{
	background: #132563 !important;
}
html.no-touch body.dark ::-webkit-scrollbar {
	width: 10px;
}
html.no-touch body.dark ::-webkit-scrollbar-thumb {
	background-color: rgba(0, 0, 0, 0.2);
	-webkit-box-shadow: inset 1px 1px 0 rgba(0,0,0,0.10),inset 0 -1px 0 rgba(0,0,0,0.07); 
}

body.dark #global_context_menu{
	background: #444;
	color: #ddd;
    border: 1px solid #888;
}

body.dark #global_context_menu hr{
	background: #888;
}

body.dark #global_context_menu .contextmenu_item{
	color: #ddd;
}
body.dark #global_context_menu a.contextmenu_item:hover{
	background: #666;
}

body.dark #edit input[type=text], 
body.dark #edit input[type=password], 
body.dark #edit input[type=number], 
body.dark #edit select, 
body.dark #edit textarea, 
body.dark .edit input[type=text], 
body.dark .edit input[type=password], 
body.dark .edit input[type=number], 
body.dark .edit select, 
body.dark .edit textarea, 
body.dark .ui-widget-content,
body.dark form.cms-search input[type=text],
body.dark form.inline_edit input[type=text]
{
	border: none;
	background: #444;
	color: #eee;
}






body.dark .tox{
	border-radius: 7px !important;
}
body.dark .tox .tox-menubar, 
body.dark .tox .tox-toolbar, 
body.dark .tox .tox-toolbar__overflow, 
body.dark .tox .tox-toolbar__primary, 
body.dark .tox .tox-statusbar,
body.dark .tox:not(.tox-tinymce-inline) .tox-editor-header,
body.dark .tox .tox-toolbar-overlord
{
	background-color: #333 !important;
}

body.dark .tox-tinymce{
	border: 2px solid #222 !important;
}
body.dark .tox .tox-tbtn--bespoke{
	background-color: #444 !important;
}



body.dark form#edit textarea, 
body.dark form#edit input, 
body.dark form#edit select, 
body.dark form.edit textarea, 
body.dark form.edit input, 
body.dark form.edit select, 
body.dark > button, 
body.dark .multi-order > button,
body.dark .add, 
body.dark .button, 
body.dark form.cms-search input,
body.dark form.inline_edit input,
body.dark form.inline_edit button,
body.dark ul.tagit.ui-widget.ui-widget-content  {
	border-radius: 7px;
	padding: 3px 10px;
	/*border: 2px solid #777;*/
	border: none;
}
body.dark .minicolors-theme-default .minicolors-input{
	padding-left: 26px !important;
}
body.dark .option{
	border-radius: 7px;
}
body.dark form.cms-search input{
	margin: 0 0 4px 0;
	border: none;
}
body.dark #modal-container{
	border-radius: 7px;
}

body.dark > button, 
body.dark button.button, 
body.dark label.button, 
body.dark .button,
body.dark form.inline_edit button,
body.dark form.cms-search input[type=submit]
{
	background-color: #eee;
	color: #111;
	border: none;
	text-decoration: none;
}
body.dark > button:hover, 
body.dark button.button:hover, 
body.dark label.button:hover, 
body.dark #submit:hover, 
body.dark .multi-order > button:hover,
body.dark .button:hover,
body.dark .add:hover,
body.dark form#edit input[type=button]:hover,
body.dark form.cms-search input[type=submit]:hover
{
	background-color: #fff;
}
form#edit label.button{
	border-radius: 7px;
    padding: 3px 10px;
	font-weight: 400;
	cursor: pointer;
	min-height: 26px;
}


/* Search box */
body.dark .cms-search {
    float: right;
    margin: 25px 0 5px 2px;
    clear: both;
}
body.dark form.cms-search input{
	display: inline-block;
	float: left;
	margin: 0;
}
body.dark form.cms-search input[type=text]{
	border-radius: 7px 0 0 7px;
}
body.dark form.cms-search input[type=submit]{
	border-radius: 0 7px 7px 0;
	background-image: url(/themes/cms/graphics/icons/magnifying-glass.png);
	background-size: auto 100% ;
	background-origin: content-box;
	background-repeat: no-repeat;
	color: transparent;
	width: 40px;
}
body.dark form.cms-search a{
	clear: both;
	display: block;
	text-align: right;
	margin: 4px 0 0 0;
	padding: 5px;
}




form#edit .uploader > label{
	display: none;
}
body.dark form#edit .uploader > label{
	display: inline-block;
}
form#edit .uploader > input[type=file]{
	display: inline;
}
body.dark form#edit .uploader > input[type=file]{
	display: none;
}

body.dark form#edit input[type=file]{
	border: none;
}
body.dark form#edit select:focus{
	border-radius: 7px 7px 0px 0px !important;
}


body.dark form#edit input[readonly]{
	color: #999;
}




/* Rounded tables */

/* Sides */
body.dark table.list tr td{
	border-width: 1px 1px 1px 0px;
}
body.dark table.list tr td:last-child{
	border-width: 1px 0px 1px 1px;
}

/* Top */
body.dark table.list tr:first-child th{
	border-width: 0px 1px 1px 1px;
}
body.dark table.list tr th:first-child{
	border-radius: 7px 0px 0px 0px;
	border-width: 0px 1px 1px 0px;
}
body.dark table.list tr th:last-child{
	border-radius: 0px 7px 0px 0px;
	border-width: 0px 0px 1px 1px;
}



/* Bottom */
body.dark table.list tr:last-child td{
	border-width: 0px 1px 1px 1px;
}
body.dark table.list tr:last-child td:first-child{
	border-radius: 0px 0px 0px 7px;
	border-width: 1px 1px 0px 0px;
}
body.dark table.list tr:last-child td:last-child{
	border-radius: 0px 0px 7px 0px;
	border-width: 1px 0px 0px 1px;
}

/*
body.dark *:link, body.dark *:visited, body.dark *:hover, body.dark *:active, body.dark *:focus{
   -webkit-transition:
     color .25s linear,
     background-color .25s linear,
     border-color .25s linear;
   transition:
     color .25s linear,
     background-color .25s linear,
     border-color .25s linear;
}
*/
body.dark a{
	color: #68b1ff;
}
body.dark h1{
	color: #5e72b6;
}

body.dark table .icon img, body.dark table .edit img, body.dark table .delete img, body.dark table .order img{
	filter: invert(1);
	opacity: 0.8;
	height: 18px;
	width: auto !important;
}
body.dark table .icon img:hover, body.dark table .edit img:hover, body.dark table .delete img:hover, body.dark table .delete img:hover{
	opacity: 1;
}
#modal table.list img{
	filter: invert(0);
}


body.dark form.inline_edit button{
	margin-left: 3px;
}


/*New look*/

body.dark table.list tr th{
	border-width: 0px 0px 0px 0px !important;
}
body.dark table.list tr td{
	border-width: 1px 0px 1px 0px !important;
}
body.dark table.list tr{
	background-color: transparent !important;
}

body.dark form#edit .section[data-section-toggle="1"] h3:hover{
	color: #eee;
}

body.dark .cms-sort-reset{
	clear: right;
}



body.dark{
	background-color: #222;
}
body.dark #edit input[type=text], 
body.dark #edit input[type=password], 
body.dark #edit input[type=number], 
body.dark #edit input[type=email], 
body.dark #edit select, 
body.dark #edit textarea, 
body.dark .edit input[type=text], 
body.dark .edit input[type=password], 
body.dark .edit input[type=number], 
body.dark .edit input[type=email], 
body.dark .edit select, 
body.dark .edit textarea, 
body.dark .ui-widget-content, 
body.dark form.cms-search input[type=text],
body.dark form.inline_edit input[type=text]
{
	background-color: #141414;
}

body.dark a{
	color: #84a0ff;
}
body.dark h1{
	color: #eee;
}
body.dark header{
	background-color: #465896 !important;
}
body.dark footer{
	background-color: #353946;
}
body.dark table.list th{
	height: 40px;
}
body.dark nav#menu .dropdown-item, body.dark .chosen-container{
	color: #222;
}

body.dark .pagination select{
    border-radius: 7px;
}


body.dark .select .option{
    background-color: #141414;
}
body.dark .select .option:hover{
	background-color: #5b5b38;
}
body.dark .select .option.selected, body.dark .select .option.selected:hover {
	background-color: #eeb;
	color: #111;
}

body.dark #login-container{
	background: #353946;
	border: none;
}
body.dark .chosen .option{
	color: #000;	
}