@charset "utf-8";
/*
*/

@import url("fontawesome-free/css/all.min.css");
@import url("framework.css");

/* Rows
--------------------------------------------------------------------------------------------------------------- */
.row0, .row0 a{}
.row1{border-top:1px solid;}
.row2, .row2 a{}
.row3, .row3 a{}
.row4, .row4 a{}
.row5{border-top:1px solid;}


/* Contact Details
--------------------------------------------------------------------------------------------------------------- */
#ctdetails{padding:30px 0;}

#ctdetails ul{}
#ctdetails ul li{}
#ctdetails ul li:last-child{margin-bottom:0;}/* Used when elements stack in small viewports */
#ctdetails ul li div{position:relative; padding:0 0 0 35px; line-height:1; word-wrap:break-word;}
#ctdetails ul li div i{position:absolute; top:0; left:0; width:25px; height:25px; line-height:25px; font-size:12px; text-align:center;}
#ctdetails ul li div span{display:block; padding:4px 0 0 0;}
#ctdetails ul li div strong{display:block; margin:8px 0 0 0;}
#ctdetails > ul > li:last-child .btn{display:block; text-align:center; font-weight:700;}


/* Header
--------------------------------------------------------------------------------------------------------------- */
#header{}

#header #logo{margin:22px 0 0 0;}
#header #logo h1{margin:0; padding:0; font-size:2rem; font-variant:small-caps;}


/* Page Intro
--------------------------------------------------------------------------------------------------------------- */
#pageintro{padding:200px 0;}

#pageintro article{display:block; max-width:65%; margin:0 auto; text-transform:capitalize; text-align:center;}
#pageintro p:first-of-type{font-size:1.6rem; letter-spacing:2px; text-transform:uppercase;}
#pageintro .heading{font-size:5rem; font-weight:700;}
#pageintro footer{margin-top:50px;}


/* Click to Action
--------------------------------------------------------------------------------------------------------------- */
.cta{padding:50px 0;}

.cta > :first-child{margin-top:10px;}
.cta > :last-child{margin-bottom:0;}/* Used when elements stack in smaller viewports */
.cta footer{text-align:center;}
.cta footer a{display:block;}


/* Split Box
--------------------------------------------------------------------------------------------------------------- */
.split{}

.split section{display:block; position:relative; float:left; width:50%; padding:100px 50px 100px 0;}
.split section::after{display:block; position:absolute; top:0; right:100%; bottom:0; left:-1000%; content:"";}


/* Content Area
--------------------------------------------------------------------------------------------------------------- */
.container{padding:80px 0;}

/* Content */
.container .content{}

.sectiontitle{display:block; max-width:55%; margin:0 auto 80px; text-align:center;}
.sectiontitle *{margin:0;}

.icon{display:inline-block; width:80px; height:80px; line-height:80px; font-size:36px; text-align:center;}

.grid-3 > li{margin-bottom:50px;}
.grid-3 > li:nth-last-child(-n+3){margin-bottom:0;}/* Removes bottom margin from the last line of items - margin is restored in the media queries when items stack */
.grid-3 > li:nth-child(3n+1){margin-left:0; clear:left;}/* Removes the need to add class="first" */

/* Services */
#services{}
#services article{padding:30px; border-bottom:2px solid;}
#services i{margin-right:10px; font-size:32px;}

/* Points */
#points{}
#points ul{font-size:1.2rem; font-weight:700;}
#points li{display:block; position:relative; float:left; width:47.89473%; margin:0 0 20px 4.21052%; padding:15px; border-bottom:2px solid;}/* Here we use the 50% grid */
#points li:nth-child(odd){margin-left:0; clear:left;}
#points li:nth-last-child(2), #points li:last-child{margin-bottom:0;}
#points li i{margin-right:8px; font-size:1.4rem;}

/* Latest */
#latest{text-align:center;}
#latest > li:last-child{margin-bottom:0;}/* Used when elements stack in small viewports */
#latest article{}
#latest article figure{}
#latest article figure > a{}
#latest article .excerpt{padding:30px; border-bottom:2px solid;}
#latest article .excerpt .heading{margin:0 0 8px 0;}
#latest article .excerpt .meta{display:block; margin:0 0 20px 0;}
#latest article .excerpt .meta li{display:inline-block; margin-right:5px; padding-right:10px; border-right:1px solid; font-size:.8rem;}
#latest article .excerpt .meta li:last-child{margin-right:0; padding-right:0; border-right:none;}
#latest article .excerpt .meta li i{margin-right:5px;}

/* Comments */
#comments ul{margin:0 0 40px 0; padding:0; list-style:none;}
#comments li{margin:0 0 10px 0; padding:15px;}
#comments .avatar{float:right; margin:0 0 10px 10px; padding:3px; border:1px solid;}
#comments address{font-weight:bold;}
#comments time{font-size:smaller;}
#comments .comcont{display:block; margin:0; padding:0;}
#comments .comcont p{margin:10px 5px 10px 0; padding:0;}

#comments form{display:block; width:100%;}
#comments input, #comments textarea{width:100%; padding:10px; border:1px solid;}
#comments textarea{overflow:auto;}
#comments div{margin-bottom:15px;}
#comments input[type="submit"], #comments input[type="reset"]{display:inline-block; width:auto; min-width:150px; margin:0; padding:8px 5px; cursor:pointer;}

/* Sidebar */
.container .sidebar{}

.sidebar .sdb_holder{margin-bottom:50px;}
.sidebar .sdb_holder:last-child{margin-bottom:0;}


/* Footer
--------------------------------------------------------------------------------------------------------------- */
#footer{padding:80px 0;}

#footer .heading{margin-bottom:50px; font-size:1.2rem;}
#footer p + .faico{margin-top:30px;}

#footer input, #footer button{border:1px solid;}
#footer input{display:block; width:100%; padding:12px 15px;}
#footer button{padding:10px 15px 12px; font-size:1rem;}

#footer .linklist li{display:block; margin-bottom:15px; padding:0 0 15px 0; border-bottom:1px solid;}
#footer .linklist li:last-child{margin:0; padding:0; border:none;}
#footer .linklist li::before, #footer .linklist li::after{display:table; content:"";}
#footer .linklist li, #footer .linklist li::after{clear:both;}

#footer .latestimg{}
#footer .latestimg > li{display:inline-block; float:left; width:30%; margin:0 0 5% 5%;}
#footer .latestimg > li:nth-last-child(-n+3){margin-bottom:0;}/* Removes bottom margin from the last three items - margin is restored in the media queries when items stack */
#footer .latestimg > li:nth-child(3n+1){margin-left:0; clear:left;}/* Removes the need to add class="first" */
#footer .latestimg > li img{width:100%;}/* Force the image to resize to take the full space - may have to be changed for tablets, depends on personal preference */
#footer .latestimg > li a.imgover{display:block;}

#footer nav{display:block;}


/* Copyright
--------------------------------------------------------------------------------------------------------------- */
#copyright{padding:20px 0;}
#copyright *{margin:0; padding:0;}


/* Transition Fade
This gives a smooth transition to "ALL" elements used in the layout - other than the navigation form used in mobile devices
If you don't want it to fade all elements, you have to list the ones you want to be faded individually
Delete it completely to stop fading
--------------------------------------------------------------------------------------------------------------- */
*, *::before, *::after{transition:all .3s ease-in-out;}
#mainav form *{transition:none !important;}


/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */


/* Navigation
--------------------------------------------------------------------------------------------------------------- */
nav ul, nav ol{margin:0; padding:0; list-style:none;}

#mainav, #breadcrumb, .sidebar nav{line-height:normal;}
#mainav .drop::after, #mainav li li .drop::after, #breadcrumb li a::after, .sidebar nav a::after{position:absolute; font-family:"Font Awesome 5 Free"; font-weight:900; font-size:10px; line-height:10px;}

/* Top Navigation */
#mainav{position:relative; margin-top:-1px;}
#mainav ul{text-transform:uppercase;}
#mainav ul ul{position:absolute; width:180px; text-transform:none; z-index:9999;}
#mainav ul ul ul{left:180px; top:0;}
#mainav li{display:block; position:relative; float:left; margin:0; padding:0;}
#mainav li:last-child{margin-right:0;}
#mainav li li{width:100%; margin:0;}
#mainav li a{display:block; padding:30px 15px; border:solid; border-width:3px 0 0 0;}
#mainav li li a{border-width:0 0 1px 0;}
#mainav .drop{padding-left:15px;}
#mainav li li a, #mainav li li .drop{display:block; margin:0; padding:10px 15px;}
#mainav .drop::after, #mainav li li .drop::after{content:"\f0d7";}
#mainav .drop::after{top:38px; left:5px;}
#mainav li li .drop::after{top:15px; left:5px;}
#mainav .active a{font-weight:700;}
#mainav li li a, #mainav .active li a{font-weight:400;}
#mainav ul ul{visibility:hidden; opacity:0;}
#mainav ul li:hover > ul{visibility:visible; opacity:1;}

#mainav form{display:none; width:100%; margin:0; padding:0;}
#mainav form select, #mainav form select option{display:block; cursor:pointer; outline:none;}
#mainav form select{width:100%; padding:5px; border:1px solid;}
#mainav form select option{margin:5px; padding:0; border:none;}

/* Breadcrumb */
#breadcrumb{padding:150px 0 30px; text-align:right;}
#breadcrumb ul{margin:0; padding:0; list-style:none; text-transform:uppercase;}
#breadcrumb li{display:inline-block; margin:0 6px 0 0; padding:0;}
#breadcrumb li a{display:block; position:relative; margin:0; padding:0 12px 0 0; font-size:12px;}
#breadcrumb li a::after{top:4px; right:0; content:"\f0da";}
#breadcrumb li:last-child a{margin:0; padding:0;}
#breadcrumb li:last-child a::after{display:none;}
#breadcrumb .heading{margin:0; font-size:2rem;}

/* Sidebar Navigation */
.sidebar nav{display:block; width:100%;}
.sidebar nav li{margin:0 0 3px 0; padding:0;}
.sidebar nav a{display:block; position:relative; margin:0; padding:5px 10px 5px 15px; text-decoration:none; border:solid; border-width:0 0 1px 0;}
.sidebar nav a::after{top:10px; left:5px; content:"\f0da";}
.sidebar nav ul ul a{padding-left:35px;}
.sidebar nav ul ul a::after{left:25px;}
.sidebar nav ul ul ul a{padding-left:55px;}
.sidebar nav ul ul ul a::after{left:45px;}

/* Pagination */
.pagination{display:block; width:100%; text-align:center; clear:both;}
.pagination li{display:inline-block; margin:0 2px 0 0;}
.pagination li:last-child{margin-right:0;}
.pagination a, .pagination strong{display:block; padding:8px 11px; border:1px solid; background-clip:padding-box; font-weight:normal;}

/* Back to Top */
#backtotop{z-index:999; display:inline-block; position:fixed; visibility:hidden; bottom:20px; right:20px; width:36px; height:36px; line-height:36px; font-size:16px; text-align:center; opacity:.2;}
#backtotop i{display:block; width:100%; height:100%; line-height:inherit;}
#backtotop.visible{visibility:visible; opacity:.5;}
#backtotop:hover{opacity:1;}


/* Tables
--------------------------------------------------------------------------------------------------------------- */
table, th, td{border:1px solid; border-collapse:collapse; vertical-align:top;}
table, th{table-layout:auto;}
table{width:100%; margin-bottom:15px;}
th, td{padding:5px 8px;}
td{border-width:0 1px;}


/* Gallery
--------------------------------------------------------------------------------------------------------------- */
#gallery{display:block; width:100%; margin-bottom:50px;}
#gallery figure figcaption{display:block; width:100%; clear:both;}
#gallery li{margin-bottom:30px;}


/* Font Awesome Social Icons
--------------------------------------------------------------------------------------------------------------- */
.faico{margin:0; padding:0; list-style:none;}
.faico li{display:inline-block; margin:8px 5px 0 0; padding:0; line-height:normal;}
.faico li:last-child{margin-right:0;}
.faico a{display:inline-block; width:36px; height:36px; line-height:36px; font-size:18px; text-align:center;}

.faico a{color:inherit; background-color:rgba(255,255,255,.2);}
.faico a:hover{color:#FFFFFF;}

.faicon-dribble:hover{background-color:#EA4C89;}
.faicon-facebook:hover{background-color:#3B5998;}
.faicon-google-plus:hover{background-color:#DB4A39;}
.faicon-linkedin:hover{background-color:#0E76A8;}
.faicon-twitter:hover{background-color:#00ACEE;}
.faicon-vk:hover{background-color:#4E658E;}


/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */


/* Colours
--------------------------------------------------------------------------------------------------------------- */
body{color:#A8A8A8; background-color:#202020;}
a{color:#D24130;}
a:active, a:focus{background:transparent !important;}/* IE10 + 11 Bugfix - prevents grey background */
hr, .borderedbox{border-color:#D7D7D7;}
label span{color:#FF0000; background-color:inherit;}
input:focus, textarea:focus, *:required:focus{border-color:#D24130 !important;}

.overlay{color:#FFFFFF; background-color:inherit;}
.overlay::after{color:inherit; background-color:rgba(0,0,0,.55);}
.overlay.light{color:#474747;}
.overlay.light::after{background-color:rgba(255,255,255,.7);}

.btn, .btn.inverse:hover{color:#FFFFFF; background-color:#D24130; border-color:#D24130;}
.coloured .btn, .coloured .btn.inverse:hover{color:#D24130; background-color:#FFFFFF; border-color:#FFFFFF;}
.btn:hover, .btn.inverse{color:inherit; background-color:transparent; border-color:inherit;}

.imgover:hover::before{background-color:rgba(210,65,48,.3)/* #D24130 */;}
.imgover, .imgover:hover::after{color:#FFFFFF;}


/* Rows */
.row0{color:#474747; background-color:#FFFFFF;}
.row1{color:#474747; background-color:#FFFFFF; border-color:rgba(0,0,0,.2);}
.row2{color:#474747; background-color:#F4F4F4;}
.row3{color:#474747; background-color:#FFFFFF;}
.row4{color:#A8A8A8; background-color:#202020;}
.row5, .row5 a{color:#A8A8A8; background-color:#202020;}
.row5{border-color:rgba(255,255,255,.2);}

.coloured{color:#FFFFFF; background-color:#D24130;}


/* Contact Details */
#ctdetails ul li div i{color:inherit; background-color:rgba(0,0,0,.03);}
#ctdetails ul li div:hover i{color:#FFFFFF; background-color:#D24130;}


/* Header */
#header #logo a{color:inherit;}


/* Split Box */
.split section, .split section::after{color:#FFFFFF; background-color:#202020;}
.split section i{color:#D24130;}


/* Content */
.icon{color:inherit; background:linear-gradient(to bottom, rgba(210,65,48,.5), rgba(210,65,48,.05)/* #D24130 */);}
.icon:hover{color:#FFFFFF; background:#D24130;}

#services article{color:inherit; background-color:rgba(0,0,0,.03); border-color:transparent;}
#services article:hover{color:#FFFFFF; background-color:#202020; border-color:#D24130;}

#points{}
#points li{color:#FFFFFF; background-color:rgba(255,255,255,.5); border-color:transparent;}
#points li:hover{color:#474747; background-color:#FFFFFF; border-color:#D24130;}
#points li i{color:#D24130;}

#latest article .excerpt{color:#474747; background-color:#FFFFFF; border-color:transparent;}
#latest article .excerpt:hover{border-color:#D24130;}
#latest article .excerpt .meta li{border-color:rgba(0,0,0,.1);}


/* Footer */
#footer .heading{color:#FFFFFF;}
#footer hr, #footer .borderedbox, #footer .linklist li{border-color:rgba(255,255,255,.1);}

#footer input, #footer button{border-color:transparent;}
#footer input{color:#FFFFFF; background-color:rgba(255,255,255,.2);}
#footer input:focus{background-color:#D24130;}
#footer button{color:#FFFFFF; background-color:#D24130;}
#footer button:hover{color:inherit; background-color:transparent; border-color:inherit;}

#footer nav a{color:#FFFFFF;}
#footer nav a:hover{color:#D24130;}


/* Copyright */
#copyright{border-color:rgba(255,255,255,.2);}


/* Navigation */
#mainav li a{color:inherit; border-color:transparent;}
#mainav .active a, #mainav a:hover, #mainav li:hover > a{color:#D24130; background-color:inherit; border-color:#D24130;}
#mainav li li a, #mainav .active li a{color:#FFFFFF; background-color:rgba(210,65,48,.5); border-color:rgba(210,65,48,.5);/* #D24130 */}
#mainav li li:hover > a, #mainav .active .active > a{color:#FFFFFF; background-color:#D24130; border-color:rgba(210,65,48,.5);/* #D24130 */}
#mainav form select{color:#474747; background-color:#FFFFFF; border-color:#D7D7D7;}

#breadcrumb *{color:#FFFFFF; background-color:inherit;}
#breadcrumb li:last-child a{color:#D24130;}

.container .sidebar nav a{color:inherit; border-color:#D7D7D7;}
.container .sidebar nav a:hover{color:#D24130;}

.pagination a, .pagination strong{border-color:#D7D7D7;}
.pagination .current *{color:#FFFFFF; background-color:#D24130;}

#backtotop{color:#FFFFFF; background-color:#D24130;}


/* Tables + Comments */
table, th, td, #comments .avatar, #comments input, #comments textarea{border-color:#D7D7D7;}
th{color:#FFFFFF; background-color:#373737;}
tr, #comments li, #comments input[type="submit"], #comments input[type="reset"]{color:inherit; background-color:#FBFBFB;}
tr:nth-child(even), #comments li:nth-child(even){color:inherit; background-color:#F7F7F7;}
table a, #comments a{background-color:inherit;}


/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */


/* Media Queries
--------------------------------------------------------------------------------------------------------------- */
@-ms-viewport{width:device-width;}


/* Max Wrapper Width - Laptop, Desktop etc.
--------------------------------------------------------------------------------------------------------------- */
@media screen and (min-width:1140px){
	.hoc{max-width:1140px;}
}

@media screen and (min-width:978px) and (max-width:1140px){
	.hoc{max-width:95%;}
}


/* Mobile Devices
--------------------------------------------------------------------------------------------------------------- */
@media screen and (max-width:978px){
	.hoc{max-width:90%;}

	#header{padding:30px;}
	#header #logo{margin-top:0;}

	#mainav{}
	#mainav ul{display:none;}
	#mainav form{display:block; margin-top:2px;}

	#breadcrumb{}

	.container{}
	#comments input[type="reset"]{margin-top:10px;}
	.pagination li{display:inline-block; margin:0 5px 5px 0;}

	#footer{}

	#copyright{}
	#copyright p:first-of-type{margin-bottom:10px;}
}

@media screen and (max-width:750px){
	.imgl, .imgr{display:inline-block; float:none; margin:0 0 10px 0;}
	.fl_left, .fl_right{display:block; float:none;}
	.one_half, .one_third, .two_third, .one_quarter, .two_quarter, .three_quarter{display:block; float:none; width:auto; margin:0 0 30px 0;}
	.last, .group .group > *:last-child, .clear .clear > *:last-child, .clear .group > *:last-child, .group .clear > *:last-child{margin-bottom:0;}/* Experimental - Needs more testing in different situations, stops double margin when stacking */

	#header{text-align:center;}
	#header #logo{margin:0 0 15px 0;}

	#pageintro article{max-width:none;}
	#pageintro .heading{margin-bottom:20px; font-size:2.5rem;}

	.cta > :first-child{margin-top:0; text-align:center;}
	.cta footer a{display:inline-block;}

	.sectiontitle{max-width:none;}
	.grid-3{margin:0 auto; max-width:348px;}/* Restrict the width to the one_third grid element in smaller devices */
	.grid-3 > li:nth-last-child(-n+3){margin-bottom:50px;}
	.grid-3 > li:last-child{margin-bottom:0;}

	#latest > li{margin:0 auto 50px;}

	#footer{}
	#footer .latestimg > li, #footer .latestimg > li:nth-last-child(-n+3){display:inline-block; float:none; width:auto; margin:0 5% 5% 0;}
	#footer .latestimg > li:last-child{margin-bottom:0;}
	#footer .latestimg > li img{width:auto;}
}

@media screen and (max-width:450px){
	#points li{display:block; float:none; width:100%; margin-left:0;}
	#points li:nth-last-child(2){margin-bottom:20px;}
}


/* Other
--------------------------------------------------------------------------------------------------------------- */
@media screen and (max-width:650px){
	.scrollable{display:block; width:100%; margin:0 0 30px 0; padding:0 0 15px 0; overflow:auto; overflow-x:scroll;}
	.scrollable table{margin:0; padding:0; white-space:nowrap;}

	.inline li{display:block; margin-bottom:10px;}
	.pushright li{margin-right:0;}

	.font-x2{font-size:1.6rem;}
	.font-x3{font-size:1.8rem;}

	.hoc.split{max-width:none; width:100%;}
	.split section{float:none; width:100%; padding:10% 5%;}
}