@charset "UTF-8";
/* CSS Defined by F3 Designs (June 2018) f3designs.ca */


/* CUSTOM COLOUR PALETTE ================================================================================================ */
/* black: #000000 */
/* black-off: #222222 */
/* green: #57ad3f */
/* grey-light: #dddddd; */
/* grey-lighter: #f0f0f0; */


/* FONTS: =============================================================================================================== */
/* PT Sans Narrow -- Headings, Buttons:
	font-family: 'PT Sans', sans-serif;
	font-family: 'PT Sans Narrow', sans-serif;
/* Open Sans -- Body Copy:
	font-family: 'Open Sans', sans-serif;
	font-weight: 400;
	font-weight: 600;
	font-weight: 700;


/* MEDIA QUERIES ======================================================================================================== */
/* Smartphones (portrait and landscape)
@media (min-width: 320px) and (max-width: 568px) {
 ...
}
/* Tablets (portrait and landscape)
@media (min-width: 768px) and (max-width: 1024px) {
 ...
}
/* Tablets (landscape)
@media (min-width: 768px) and (max-width: 1024px) and (orientation: landscape) {
 ...
}
/* Tablets (portrait)
@media (min-width: 768px) and (max-width: 1024px) and (orientation: portrait) {
 ...
}
/* Smartphones and Tablets (portrait and landscape)
@media (min-width: 320px) and (max-width: 1024px) {
 ...
}


/* TYPE SELECTORS ======================================================================================================= */
html, body {
	height: 100% !important;
	font-family: 'Open Sans', sans-serif;
	font-size: 16px;
	font-weight: 400;
	color: #222222;
	background-color: #ffffff;
	-webkit-font-smoothing: antialiased; /* resolves issue with font displaying much bolder than it should in Mac Chrome and Safari */
	-moz-osx-font-smoothing: grayscale; /* resolves issue with font displaying much bolder than it should in Mac Firefox */
}
p {
	line-height: 28px;
	margin: 0px 0px 40px 0px;
}
p a:link {
	text-decoration: none;
	border-bottom: solid 1px #57ad3f;
	color: #000000;
	font-weight: bold;
}
p a:visited {
	color: #000000;
}
p a:hover {
	color: #57ad3f;
}
p a:active {
	color: #000000;
}
h1 {
	font-family: 'PT Sans Narrow', sans-serif;
	font-size: 60px;
	margin: 15px 0px 60px 0px;
	text-align: center;
}
/* Smartphones (portrait and landscape) */
@media (min-width: 320px) and (max-width: 568px) {
h1 {
	font-size: 36px;
}
}
h2 {
	font-family: 'PT Sans Narrow', sans-serif;
	font-size: 48px;
	margin: 15px 0px 30px 0px;
}
/* Smartphones (portrait and landscape) */
@media (min-width: 320px) and (max-width: 568px) {
h2 {
	font-size: 24px;
}
}
h3 {
	background-color: #57ad3f;
	text-transform: uppercase;
	font-family: 'PT Sans', sans-serif;
	color: #ffffff;
	padding: 5px 15px 5px 15px;
	width: 50%;
	text-align: center;
	margin: 0px auto;
}
/* Smartphones (portrait and landscape) */
@media (min-width: 320px) and (max-width: 568px) {
[class*="col-"] {
	margin-bottom: 60px !important;
}
}
/* Tablets (portrait) */
@media (min-width: 768px) and (max-width: 1024px) and (orientation: portrait) {
[class*="col-"] {
	margin-bottom: 60px !important;
}
}


/* CLASS SELECTORS (Miscellaneous) ====================================================================================== */
/* callout */
.callout {
	text-transform: uppercase;
	color: #57ad3f;
	font-weight: 700;
	font-size: 18px;
	margin: 0px;
	border-top: solid 1px #dddddd;
	padding-top: 15px;
	text-align: center;
}
/* Smartphones (portrait and landscape) */
@media (min-width: 320px) and (max-width: 568px) {
.callout {
	font-size: 14px;
}
}
/* pipe */
.pipe {
	color: #f0f0f0;
	padding: 0px 15px 0px 15px;
}
/* Smartphones (portrait and landscape) */
@media (min-width: 320px) and (max-width: 568px) {
.pipe {
	display: none;
}
}
/* note */
.note {
	font-size: 24px;
	border-left: solid 3px #d9534f;
	border-right: solid 3px #d9534f;
	padding: 15px;
	background-color: #fdf7f7;
	text-transform: uppercase;
	font-weight: bold;
	margin-top: 60px;
}
/* nowrap */
.nowrap {
	white-space: nowrap;
}
/* nopadding */
.nopadding {
	padding: 0 !important;
}
/* Tablets (portrait) */
@media (min-width: 768px) and (max-width: 1024px) and (orientation: portrait) {
.nopadding {
	padding: 15px !important;
}
}
/* flex (equalizes col height) */
.flex {
	display: -webkit-flex; /* css3 flexbox (equalizes col height) */
	display: -ms-flexbox;   /* css3 flexbox (equalizes col height */
	display: flex; /* css3 flexbox (equalizes col height */
	overflow: hidden; /* css3 flexbox (equalizes col height */
	padding: 15px;
}
/* Smartphones (portrait and landscape) */
@media (min-width: 320px) and (max-width: 568px) {
.flex {
 display: inline;
}
}
/* Tablets (portrait) */
@media (min-width: 768px) and (max-width: 1024px) and (orientation: portrait) {
.flex {
 display: inline;
}
}
/* col (adds padding between cols) */
.col {
	border: solid 1px #e0e0e0;
	margin: 0px 15px 0px 15px;
}
/* resolves issue with anchor links when you have a fixed top nav */
.anchor {
	padding-top: 120px;
}

/* (partners logos) */
#partners-logos {
	text-align: center;
}
.partners-logos-img {
	display: inline-block;
    margin-left: auto;
    margin-right: auto;
	padding: 90px 60px 0px 60px;
}
/* Smartphones (portrait and landscape) */
@media (min-width: 320px) and (max-width: 568px) {
.partners-logos-img {
	padding: 90px 0px 0px 0px;
}
}


/* CLASS SELECTORS (Buttons) ============================================================================================ */
/* btn-default */
.btn-default:link {
	background-color: #57ad3f;
	border-color: #57ad3f;
	border-radius: 10px 0px 10px 0px;
	text-transform: uppercase;
	font-family: 'PT Sans', sans-serif;
	font-size: 18px;
	padding: 15px;
	color: #ffffff !important;
	-webkit-transition: all 0.5s;
	-moz-transition: all 0.5s;
}
.btn-default:visited {
	background-color: #57ad3f;
	border-color: #57ad3f;
	color: #ffffff !important;
}
.btn-default:hover {
	background-color: #222222;
	border-color: #222222;
	color: #ffffff !important;
}
.btn-default:active {
	background-color: #57ad3f;
	border-color: #57ad3f;
	color: #ffffff !important;
}
/* btn-primary */
.btn-primary:link {
	background-color: transparent;
	border: solid 3px #ffffff !important;
	border-radius: 100%;
	text-shadow: 0px 4px 20px rgba(0,0,0,.5);	
}


/* JUMBOTRON =========================================================================================================== */
.jumbotron {
	background-image: url(../img/bg-jumbotron.jpg);
	background-repeat: no-repeat;
	background-size: cover;
	/* height: calc(100vh - 110px); */
	/* margin-top: 110px; */
	height: calc(100vh);
	margin-top: 0px;
	margin-bottom: 0px;
	background-color: #ffffff;
}
.jumbotron p {
	font-size: 30px;
	margin-bottom: 30px;
}
/* Smartphones (portrait and landscape) */
@media (min-width: 320px) and (max-width: 568px) {
.jumbotron p {
	font-size: 18px;
}
}
.jumbotron img {
	margin: 0px auto 30px auto;
}
.jumbotron-content {
	color: #222222;
	padding-top: 120px;
	text-align: center;
	text-shadow: 0px 4px 20px rgba(0,0,0,.5);	
}
.jumbotron .scroll-down {
  position: absolute;
  width: 100%;
  bottom: 30px;
  text-align: center;
}
.jumbotron .scroll-down .btn {
  height: 50px;
  width: 50px;
  border: none;
  border-radius: 100% !important;
  line-height: 50px;
  padding: 0px;
  color: #ffffff;
  font-size: 30px;
  -webkit-transition: all 0.5s;
  -moz-transition: all 0.5s;
  transition: all 0.5s;
	text-shadow: 0px 4px 20px rgba(0,0,0,.5);	
}
.jumbotron .scroll-down .btn:hover {
  color: rgba(255, 255, 255, 0.5);
  border-color: rgba(255, 255, 255, 0.5);
  outline: none;
}
/* Smartphones (portrait and landscape) */
@media (min-width: 320px) and (max-width: 568px) {
.jumbotron .scroll-down {
	display: none !important;
}
}


/* CONTAINER (Section) ================================================================================================== */
section .button {
	text-align: center;
	margin: 30px auto 0px auto;
}
section p {
	text-align: justify;
    text-justify: inter-word;
}
.section1 {
	margin-top: 120px;
}
/* Smartphones (portrait and landscape) */
@media (min-width: 320px) and (max-width: 568px) {
.section1 {
	margin-top: 0px;
}
}
.section2 {
	margin-top: 120px;
}
/* Smartphones (portrait and landscape) */
@media (min-width: 320px) and (max-width: 568px) {
.section2 {
	margin-top: 0px;
}
}
.section3 {
	margin-top: 120px;
	margin-bottom: 120px;
}

.models {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    position: relative;
}
/* Smartphones (portrait and landscape) */
@media (min-width: 320px) and (max-width: 568px) {
.models {
 display: inline;
}
}
.models .model {
    flex: 1 1 33.3333%;
    position: relative;
    background-size: cover;
    background-position: 50%;
    background-repeat: no-repeat;
    overflow: hidden;
}
.models .model .model-overlay {
    background-color: #383530;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    opacity: .5;
    z-index: 3;
}
.models .model .model-image {
    min-width: 100%;
    object-fit: cover;
    transition: all .5s cubic-bezier(.28,0,.18,1);
}
.models .model .model-link {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 7;
	text-decoration: none;
}
.models .model .model-content {
    z-index: 5;
    position: relative;
    padding: 30px;
	color: #ffffff !important;
	text-shadow: 0px 4px 20px rgba(0,0,0,.5);	
}
/* Smartphones (portrait and landscape) */
@media (min-width: 320px) and (max-width: 568px) {
.models .model .model-content {
    padding: 15px;
}
}
.models .model .model-content .callout {
	color: #ffffff;
	text-align: left;
	border-top: none;
}
.models .model .btn, .models .model .btn-default {
    position: absolute;
    bottom: 15px;
    left: 30px;
    z-index: 100;
    color: #453c37;
}
/* Smartphones (portrait and landscape) */
@media (min-width: 320px) and (max-width: 568px) {
.models .model .btn, .models .model .btn-default {
    left: 15px;
}
}
.models h2 {
	margin: 0px 0px 15px 0px;
}
.models p {
    line-height: 20px;
	margin: 0px 0px 5px 0px;
}


/* CONTAINER (Footer) =================================================================================================== */
footer {
	background-color: #222222;
	color: #ffffff;
	text-align: center;
}
footer img {
	margin: 120px auto 60px auto;
}
footer ul {
	list-style: none;
	margin: 0px;
	padding: 0px;
}
footer li {
	display: inline;
	margin: 0px 0px 30px 0px;
	line-height: 30px;
}
/* Smartphones (portrait and landscape) */
@media (min-width: 320px) and (max-width: 568px) {
footer li {
	display: block;
}
}
footer a:link {
	color: #ffffff;
	text-decoration: none;
	border-bottom: solid 1px #57ad3f;
}
footer a:visited {
	color: #ffffff;
	text-decoration: none;
	border-bottom: solid 1px #57ad3f;
}
footer a:hover {
	color: #57ad3f;
	text-decoration: none;
	border-bottom: solid 1px #ffffff;
}
footer a:active {
	color: #ffffff;
	text-decoration: none;
	border-bottom: solid 1px #57ad3f;
}
/* footer-row1 */
.footer-row1 {
	padding: 60px 15px 60px 15px;
}
.footer-row2 {
	background-color: #000000;
	padding: 60px 15px 30px 15px;
	font-size: 12px;
	text-transform: uppercase;
	color: #dddddd;
}
/* scroll-up */
.footer .scroll-up {
  width: 100%;
  text-align: center;
}
.footer .scroll-up .btn {
  height: 50px;
  width: 50px;
  border: none;
  border-radius: 100% !important;
  line-height: 50px;
  padding: 0px;
  color: #ffffff;
  font-size: 30px;
  -webkit-transition: all 0.5s;
  -moz-transition: all 0.5s;
  transition: all 0.5s;
	text-shadow: 0px 4px 20px rgba(0,0,0,.5);	
}
.footer .scroll-up .btn:hover {
  color: rgba(255, 255, 255, 0.5);
  border-color: rgba(255, 255, 255, 0.5);
  outline: none;
}



/* CLASS SELECTORS (Navbar) ============================================================================================= */
.navbar {
	background-color: #ffffff !important;
}
/* (moves the logo within the navbar to desired position) */
.navbar-brand img {
	margin: -20px auto 0px auto !important;
}
/* Main ================================================================================================================= */
.navbar-default.navbar-expanded {
	background-color: #ffffff !important;
	border-bottom: none;
	padding: 30px 0px 30px 0px;
	margin: 0px;
}
/* Smartphones (portrait and landscape) */
@media (min-width: 320px) and (max-width: 568px) {
.navbar-default.navbar-expanded {
	padding: 10px 0px 20px 0px;
}
}
.navbar-default {
	background-color: #f0f0f0 !important;
	border-bottom: solid 1px #57ad3f;
	padding: 30px 0px 30px 0px;
	margin: 0px;
}
/* Smartphones (portrait and landscape) */
@media (min-width: 320px) and (max-width: 568px) {
.navbar-default {
	padding: 10px 0px 20px 0px;
}
}
/* Toggle =============================================================================================================== */
/* (background-color, surrounding border color, and position of toggle menu on mobile) */
.navbar-default .navbar-toggle {
	background-color: #dddddd;
	border-color: #222222;
    /* position: absolute; /* turn on if you want to center toggle on mobile */
    /* left: 50%; /* turn on if you want to center toggle on mobile */
    /* transform: translatex(-50%); /* turn on if you want to center toggle on mobile */
}
/* (inner 3 lines color for toggle on mobile) */
.navbar-default .navbar-toggle .icon-bar {
	color: #ffffff;
}
/* (background color for toggle when clicked on mobile) */
.navbar-default .navbar-toggle:hover, .navbar-default .navbar-toggle:focus {
}

/* Smartphones (portrait and landscape) */
@media (min-width: 320px) and (max-width: 568px) {
.navbar-default .navbar-collapse {
	border: none !important;/* (removes bottom border when toggle menu on mobile is expanded) */
	background-color: #d9d9d9;
	margin-top: 30px;
}
}
/* Tablets (portrait and landscape) */
@media (min-width: 768px) and (max-width: 1024px) {
.navbar-default .navbar-collapse {
	border: none !important;/* (removes bottom border when toggle menu on mobile is expanded) */
	background-color: #d9d9d9;
	margin-top: 30px;
}
}
/* Primary ============================================================================================================== */
/* (primary list items in off state) */
.navbar-default .navbar-nav ul {
}
.navbar-default .navbar-nav li a {
	font-family: 'PT Sans', sans-serif;
	color: #000000;
	text-transform: uppercase;
	padding: 30px 30px 0px 30px;
	font-size: 18px;
}
/* (primary list items visited) */
.navbar-default .navbar-nav li a:visited {
}
/* (primary list items on hover) */
.navbar-default .navbar-nav li a:hover {
	color: #57ad3f;
}
/* (primary list items active) */
.navbar-default .navbar-nav li a:active {
}
/* (primary list items focus) */
.navbar-default .navbar-nav li a:focus {
}
/* Smartphones (portrait and landscape) */
@media (min-width: 320px) and (max-width: 568px) {
.navbar-default .navbar-nav li a {
	border-bottom: solid 1px #ffffff !important;
	padding-bottom: 10px !important;
}
}
/* Tablets (portrait and landscape) */
@media (min-width: 768px) and (max-width: 1024px) {
.navbar-default .navbar-nav li a {
	border-bottom: solid 1px #ffffff !important;
	padding-bottom: 10px !important;
}
}


/* 404 NOT FOUND ======================================================================================================== */
.notfound {
	height: 100%;
}
.notfound-message {
	margin: auto;
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	width: 100%;
	text-align: center;
	color: #000000;
}
.notfound-message img {
	margin: 60px auto 60px auto !important;
	text-align: center !important;
}


/* MASONRY GALLERY ======================================================================================================= */
.gal1 {
	-webkit-column-count: 3; /* Chrome, Safari, Opera */
    -moz-column-count: 3; /* Firefox */
    column-count: 3;
	}	
	.gal1 img{ width: 100%; padding: 7px 0;}
@media (max-width: 500px) {
		.gal1 {
	-webkit-column-count: 1; /* Chrome, Safari, Opera */
    -moz-column-count: 1; /* Firefox */
    column-count: 1;
	}
	}

.gal2 {
	-webkit-column-count: 2; /* Chrome, Safari, Opera */
    -moz-column-count: 2; /* Firefox */
    column-count: 2;
	}	
	.gal2 img{ width: 100%; padding: 7px 0;}
@media (max-width: 500px) {
		.gal2 {
	-webkit-column-count: 1; /* Chrome, Safari, Opera */
    -moz-column-count: 1; /* Firefox */
    column-count: 1;
	}
	}