@charset "utf-8";
/*
Template Name: Gomag
Author: <a href="http://www.os-templates.com/">OS Templates</a>
Author URI: http://www.os-templates.com/
Licence: Free to use under our free template licence terms
Licence URI: http://www.os-templates.com/template-terms
File: Layout CSS
*/

@import url("font-awesome.min.css");
@import url("framework.css");

/* Rows
--------------------------------------------------------------------------------------------------------------- */
.row1{z-index:1;}/* Required for the drop shadow - do not delete, unless the drop shadow isn't wanted */
.row2, .row2 a{}
.row3, .row3 a{}
.row4, .row4 a{}
.row5, .row5 a{}


/* Header
--------------------------------------------------------------------------------------------------------------- */
#header{}

#header #logo{margin:23px 0 0 0;}
#header #logo h1{margin:0; padding:0; font-size:22px;}


/* Page Intro
--------------------------------------------------------------------------------------------------------------- */
#pageintro{padding:125px 0 250px;}

#pageintro > div{display:block; max-width:75%;}
#pageintro > div *{line-height:normal;}
#pageintro .heading{margin:0 0 30px 0; padding:0; font-size:3rem;}
#pageintro p{margin:0; font-size:1.2rem; line-height:2rem;}
#pageintro footer{margin-top:30px;}


/* Content Area
--------------------------------------------------------------------------------------------------------------- */
.container{padding:80px 0;}
.btmpad-none{padding-bottom:0;}

/* Content */
.container .content{}

.sectiontitle{padding:60px;}
.sectiontitle *{margin:0;}

.infoboxes{}
.infoboxes li{padding:25px 0 0 0; text-align:center;}
.infoboxes li:last-child{margin-bottom:0;}/* Used when elements stack in small viewports */
.infoboxes li *{margin:0; padding:0; line-height:1.6;}
.infoboxes article{display:block; position:relative; padding:35px 20px 25px 20px;}
.infoboxes article i{display:inline-block; position:absolute; top:0; left:50%; width:50px; height:50px; line-height:50px; margin:-25px 0 0 -25px; font-size:18px; z-index:1;}
.infoboxes article .fa{font-size:18px;}

.logos a img{opacity:.5;}
.logos a:hover img{opacity:1;}

/* 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{position: -webkit-sticky;position: sticky;top: 60px;}

.sidebar .sdb_holder{margin-bottom:50px;}
.sidebar .sdb_holder:last-child{margin-bottom:0;}


/* Footer
--------------------------------------------------------------------------------------------------------------- */
#footer{padding:60px 0 0;}

#footer .heading{margin-bottom:50px; font-size:1.2rem;}

#footer nav{margin-bottom:30px; text-transform:uppercase;}
#footer nav ul{}
#footer nav ul li{display:inline-block; margin:10px 20px 0 0; width: 22%;}
#footer nav ul li:last-child{margin-right:0;}

#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 .contact{}
#footer .contact.linklist li, #footer .contact.linklist li:last-child{position:relative; padding-left:40px;}
#footer .contact li *{margin:0; padding:0; line-height:1.6;}
#footer .contact li i{display:block; position:absolute; top:0; left:0; width:30px; font-size:16px; text-align:center;}


/* Copyright
--------------------------------------------------------------------------------------------------------------- */
#copyright{padding:20px 0;}
#copyright *{margin-bottom:30px; padding:0;color: #000000;}


/* 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:"FontAwesome"; font-size:10px; line-height:10px;}

/* Top Navigation */
#mainav{position: -webkit-sticky;position: sticky;}
#mainav ul.clear{margin-top:3px;}
#mainav ul{text-transform:uppercase;}
#mainav ul ul{z-index:9999; position:absolute; width:200px; text-transform:none;}
#mainav ul ul ul{left:180px; top:0;}
#mainav li{display:inline-block; position:relative; margin:0 25px 0 0; padding:0;}
#mainav li:last-child{margin-right:0;}
#mainav li li{width:100%; margin:0;}
#mainav li a{display:block; padding:19px 0;font-size:16px;}
#mainav li li a{border:solid; 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:27px; left:5px;}
#mainav li li .drop::after{top:15px; left:5px;}
#mainav ul ul{visibility:hidden; opacity:0;}
#mainav ul li:hover > ul{visibility:visible; opacity:1;}

#mainav form{display:none; 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:120px 0 15px;}
#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:3px; right:0; content:"\f101";}
#breadcrumb li:last-child a{margin:0; padding:0;}
#breadcrumb li:last-child a::after{display:none;}
#breadcrumb .heading{margin:0 0 30px 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:9px; left:5px; content:"\f101";}
.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:#FFFFFF; background-color:rgba(207,72,69,.5)/* #aa182c */;}

.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:#f2f2f2; background-color:#FFFFFF;}
a{color:#aa182c;}
a:active, a:focus{background:transparent;}/* 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:#aa182c;}
.overlay{color:#FFFFFF; background-color:inherit;}
.overlay::after{color:inherit; background-color:rgba(0,0,0,.55);}
.overlay.coloured::after{color:inherit; background-color:rgba(207,72,69,.5)/* #aa182c */;}

.btn, .btn.inverse:hover{color:#FFFFFF; background-color:#aa182c; border-color:#aa182c;border-radius:4px;}
.btn:hover, .btn.inverse{color:inherit; background-color:transparent; border-color:inherit;border-radius:4px;}

/* Rows */
.row1{color:#191919; background-color:rgba(255,255,255,.65);}
.row1{box-shadow:0 5px 10px rgba(0,0,0,.1);}
.row2{}
.row3{color:#191919; background-color:#FFFFFF;}
.row4{color:#555759;}
.row5, .row5 a{color:#555759; background-color:#CCCCCC;}
.row1.navbar{  position: -webkit-sticky;position: sticky;top: 0;margin-top: -71px;}


/* Header */
#header #logo a{color:inherit;}


/* Page Intro */
#pageintro{color:#191919;}


/* Content Area */
.infoboxes article{color:#191919; background-color:rgba(255,255,255,.65);}
.infoboxes article:hover{background-color:#FFFFFF;}
.infoboxes article .fa{color:#FFFFFF; background-color:#aa182c;}


/* Footer */
#footer .heading{color:#FFFFFF;}
#footer hr, #footer .borderedbox, #footer .linklist li{border-color:rgba(255,255,255,.2);}
#footer nav a{color:inherit;font-size:16px;}


/* Navigation */
#mainav li a{color:inherit;}
#mainav .active a, #mainav a:hover, #mainav li:hover > a{color:#aa182c; background-color:inherit;}
#mainav li li a, #mainav .active li a{color:#FFFFFF; background-color:rgba(207,72,69,.75)/* #aa182c */; border-color:rgba(0,0,0,.1);}
#mainav li li:hover > a, #mainav .active .active > a{color:#FFFFFF; background-color:#aa182c;}
#mainav form select{color:#FFFFFF; background-color:#000000; border-color:rgba(255,255,255,.2);}

#breadcrumb{color:#191919;}
#breadcrumb a{color:inherit; background-color:inherit;}
#breadcrumb li:last-child a{color:#aa182c;}

.container .sidebar nav a{color:inherit; border-color:#D7D7D7;}
.container .sidebar nav a:hover{color:#aa182c;}

.pagination a, .pagination strong{border-color:#D7D7D7;}
.pagination .current *{color:#FFFFFF; background-color:#aa182c;}

#backtotop{color:#FFFFFF; background-color:#aa182c;}


/* Tables + Comments */
table, th, td, #comments .avatar, #comments input, #comments textarea{border-color:#D7D7D7;}
#comments input:focus, #comments textarea:focus, #comments *:required:focus{border-color:#aa182c;}
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;}

.sticky_header {
	position: fixed;
    top: 0px;
}
img.icon {
    padding: 0 0 20px 0;
    height: 170px;
}
img.family_img {
    padding-bottom: 20px;
    width:100%;
}
img.family_logo {
	width: 25%;
}
.contact_us.linklist {list-style: none;padding: 0 !important;}
.contact_us.linklist li, .contact_us.linklist li:last-child{position:relative;padding: 0 0 25px 40px;border-bottom: 1px solid #D7D7D7;margin-bottom: 25px;}
.contact_us li *{margin:0; padding:0; line-height:1.6;}
.contact_us li i{display:block; position:absolute; top:0; left:0; width:30px; font-size:16px; text-align:center;}
.fixed_div {height:50px;}

/* Timeline
---------------------------------------------------------------------------------------------------------------- */
article {
  position: relative;
  max-width: 980px;
  margin: 0 auto;
  padding-top: 50px;
}
/*
.timeline__nav {
  position: absolute;
  z-index: 99;
  top: 0;
  transition: top .3s ease-out;
}
.timeline__nav ul {
  list-style: none;
  list-style-position: inside;
  margin: 15px 0;
}
.timeline__nav ul li {
  margin: 15px 0;
  padding-left: 0;
  list-style-type: none;
  color: #000;
  border-bottom: 1px dotted rgba(0, 0, 0, 0.3);
  cursor: pointer;
  transition: all .3s ease-out;
}
.timeline__nav ul li.active {
  font-weight: bold;
  color: #f94125;
  border-bottom: 1px dotted transparent;
  -webkit-transform: scale(1.2);
          transform: scale(1.2);
}
.timeline__nav ul li:hover {
  color: #ffffff;
}*/
.timeline_wrapper {
  margin: 0 auto;
  padding: 0 10% 50px;
  width: 100%;
  display: table;
}
.timeline_wrapper .row {
  display: table-row;
}
.timeline_wrapper .cell {
	display: table-cell;
	padding: 10px 10px 0 0;
}
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------------------------ */


/* Media Queries
--------------------------------------------------------------------------------------------------------------- */
@-ms-viewport{width:device-width;}


/* Max Wrapper Width - Laptop, Desktop etc.
--------------------------------------------------------------------------------------------------------------- */
@media screen and (min-width:1040px){
	.hoc{max-width:1040px;}
}


/* Mobile Devices
--------------------------------------------------------------------------------------------------------------- */
@media screen and (max-width:1040px){
	.hoc{max-width:90%;}

	#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;}
  .banner_header{font-size: 50px;letter-spacing: 20px;}
}


@media screen and (max-width:750px){
  #header{padding:20px 0 15px;}
  #header #logo{margin:0;}

  #mainav{}
  #mainav ul{display:none;}
  #mainav form{display:block;}

	.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; padding:0;}
	.group .group > *:last-child, .clear .clear > *:last-child, .clear .group > *:last-child, .group .clear > *:last-child, .group.smvplc > :last-child{margin-bottom:0;}/* Experimental - Needs more testing in different situations, stops double margin when stacking */

	#header{text-align:center;}
	#header #logo{margin-bottom:15px;}
	.container .sidebar{position: -webkit-relative;position: relative;top:0;}

  .row1.navbar{background-color:#ffffff !important;position: relative; margin-top: 0;}
  #footer nav ul li{width: auto;}
  .banner_header{font-size: 35px;letter-spacing: 10px;padding: 30px 10px;}

}


/* 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.4rem;}
	.font-x3{font-size:1.6rem;}

	#pageintro{padding:150px 0;}
	#pageintro > div{max-width:none;}
	#pageintro .heading{font-size:2.2rem;}

	.timeline_wrapper {padding: 0 5% 50px 50px;}
	.sectiontitle {padding: 0;}
	.one_fifth {width: 100%;text-align: center;float:none;}
}

/* Banner slider */

/* Slideshow container */
.slideshow-container {
  max-width: 100%;
  position: relative;
  margin: auto;
}

/* Hide the images by default */
.mySlides {
  display: none;
}

/* Next & previous buttons */
.prev, .next {
  cursor: pointer;
  position: absolute;
  top: 50%;
  width: auto;
  margin-top: -22px;
  padding: 16px;
  color: white;
  font-weight: bold;
  font-size: 18px;
  transition: 0.6s ease;
  border-radius: 0 3px 3px 0;
  user-select: none;
}

/* Position the "next button" to the right */
.next {
  right: 0;
  border-radius: 3px 0 0 3px;
}

/* On hover, add a black background color with a little bit see-through */
.prev:hover, .next:hover {
  background-color: rgba(0,0,0,0.8);
}

/* Caption text */
.text {
  color: #f2f2f2;
  font-size: 15px;
  padding: 8px 12px;
  position: absolute;
  bottom: 8px;
  width: 100%;
  text-align: center;
}
.desktop_banner_text_white {
  color: #f2f2f2;
  font-size: 17px;
  font-weight: 100;
  position: absolute;
  width: 50%;
  text-align: left;
  top: 45%;
  left: 200px;
  transform: translate(0%, 25%);
}
.mobile_banner_text_white {
  display: none;
}
@media screen and (max-width:1000px){
  .desktop_banner_text_white {
    display: none;
  }
  .mobile_banner_text_white {
    display: block;
    font-size: 16px;
    color: #f2f2f2;
    padding: 0;
    position: absolute;
    top: 237px;
    left: 70px;
  }
}
.subbanner { border-right: 1px solid;}
@media screen and (max-width:750px){
  .subbanner { border-right: none; border-bottom: 1px solid;}
}

/* Number text (1/3 etc) */
.numbertext {
  color: #f2f2f2;
  font-size: 12px;
  padding: 8px 12px;
  position: absolute;
  top: 0;
}

/* The dots/bullets/indicators */
.dot {
  cursor: pointer;
  height: 15px;
  width: 15px;
  margin: 0 2px;
  background-color: #bbb;
  border-radius: 50%;
  display: inline-block;
  transition: background-color 0.6s ease;
}

.dot:hover {
  background-color: #717171;
}

/* Fading animation */
.fade {
  -webkit-animation-name: fade;
  -webkit-animation-duration: 1.5s;
  animation-name: fade;
  animation-duration: 1.5s;
}

@-webkit-keyframes fade {
  from {opacity: .4} 
  to {opacity: 1}
}

@keyframes fade {
  from {opacity: .4} 
  to {opacity: 1}
}
/* End banner slider */

/********** NEW Timeline **************/
/* The actual timeline (the vertical ruler) */
.timeline {
  background-color: #003855;
  position: relative;
  max-width: 1200px;
  margin: 0 auto;
}
.timeline::after {
  content: '';
  position: absolute;
  width: 6px;
  background-color: white;
  top: 0;
  bottom: 0;
  left: 50%;
  margin-left: -3px;
}
.timeline-container {
  padding: 10px 40px;
  position: relative;
  background-color: inherit;
  width: 50%;
}
.timeline-container::after {
  content: '';
  position: absolute;
  width: 25px;
  height: 25px;
  right: -17px;
  background-color: white;
  border: 4px solid #FF9F55;
  top: 15px;
  border-radius: 50%;
  z-index: 1;
}
.timeline h2 {margin: 0;}
.timeline p {margin: 10px 0 0;}
.timeline-left { left: 0; }
.timeline-right { left: 50%;}
.timeline-left::before {
  content: " ";
  height: 0;
  position: absolute;
  top: 22px;
  width: 0;
  z-index: 1;
  right: 30px;
  border: medium solid white;
  border-width: 10px 0 10px 10px;
  border-color: transparent transparent transparent white;
}
.timeline-right::before {
  content: " ";
  height: 0;
  position: absolute;
  top: 22px;
  width: 0;
  z-index: 1;
  left: 30px;
  border: medium solid white;
  border-width: 10px 10px 10px 0;
  border-color: transparent white transparent transparent;
}
.timeline-right::after {
  left: -16px;
}
.timeline-content {
  padding: 10px 25px;
  background-color: white;
  position: relative;
  border-radius: 6px;
}
@media screen and (max-width: 600px) {
  .timeline::after {
    left: 31px;
  }
  .timeline-container {
    width: 100%;
    padding-left: 70px;
    padding-right: 25px;
  }
  .timeline-container::before {
    left: 60px;
    border: medium solid white;
    border-width: 10px 10px 10px 0;
    border-color: transparent white transparent transparent;
  }
  .timeline-left::after, .right::after {
    left: 15px;
  }
  .timeline-right {
    left: 0%;
  }
}
