
/* BODY FONT */
@import url('https://fonts.googleapis.com/css?family=Hind');

/* BUTTONS and FORMS FONT */
@import url('https://fonts.googleapis.com/css?family=Questrial');

/* =============================================================================
HAWTHORNE THEME: PAGE LAYOUT CSS - Page and Page Elements Styles
You should NOT have to edit any of these styles as they are all "layout" styles.
============================================================================= */
html, body {
	padding: 0;
  	margin: 0;
  	height: 100%;
}
body {
	font-family: 'Hind', sans-serif;
}

/* ==========================================================================
																GLOBAL STYLES
========================================================================== */
/* ------------------------------------- HEADERS */
h1, h2, h3, h4, h5, h6 { 
	font-family: 'Montserrat', sans-serif;
	text-align: center;
}
hr {
	border: none;
	height: 2px;
	background: #000;
}

/* ------------------------------------- BUTTONS */
.btn.active.focus,
.btn.active:focus,
.btn.focus,
.btn:active.focus,
.btn:active:focus,
.btn:focus,
button:focus {
    outline: none;
    outline-offset: 0;
}
a,
.btn,
button {
    -o-transition:.5s;
    -ms-transition:.5s;
    -moz-transition:.5s;
    -webkit-transition:.5s;
    transition:.5s;
}
a:hover { text-decoration: none; }
:focus,
a:focus {
	outline: none;
}
.btn {
	text-transform: uppercase;
	font-size: 12px;
	font-weight: bold;
	letter-spacing: 2px;
	font-family: 'Questrial', sans-serif;
}
#banner-carousel .btn {
	-webkit-box-shadow: 0px 4px 30px -9px rgba(0,0,0,1);
	-moz-box-shadow: 0px 4px 30px -9px rgba(0,0,0,1);
	box-shadow: 0px 4px 30px -9px rgba(0,0,0,1);
}

@media screen and (max-width: 768px) {
	.flickity-prev-next-button {
	    display: block;
	}
}
/* ------------------------------------- UNORDERED LIST */
.content ul {
	padding-left: 0;
    list-style: none;
}
.content ul li:before {
	font: normal normal normal 15px/1 "Material Design Icons";
    text-rendering: optimizeLegibility;
    font-size: 1rem;
    display: inline-block;
    content: "\f134";
    margin-right: 5px;
    color: #5cb85c;
}

/* ------------------------------------- TWO COLUMN UNORDERED LIST */
ul.multi-column {
    -moz-column-count: 2;
    -moz-column-gap: 20px;
    -webkit-column-count: 2;
    -webkit-column-gap: 20px;
    column-count: 2;
    column-gap: 20px;
}
ul.multi-column li {
    line-height: 1.2rem;
    margin: 7px 0;
    padding: 0;
    padding-left: 20px;
    text-indent: -10px;
}

/* ------------------------------------- FORM ELEMENTS */
.form-group {
    margin: .5rem 0;
}
.bg-light label {
    margin-bottom: .15rem;
    text-transform: uppercase;
    font-size: .75rem;
    letter-spacing: .05rem;
}
select.form-control:not([size]):not([multiple]) {
    height: 2.35rem;
}
/* IE 10 and 11 Hack for the height of form selects */
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
	select.form-control:not([size]):not([multiple]) { 
		height: 2.7rem;
	}
}
/* EDGE Hack for the height of form selects */
@supports (-ms-accelerator:true) {
    select.form-control:not([size]):not([multiple]) { 
		height: 2.7rem;
	}
}

/* HELP TEXT */
p.form-text {
	margin-bottom: -.75rem;
	font-size: .85rem;
}
/* REQUIRED FORM ELEMENT - SUCCESS */
.has-success .form-control {
	background: url("../images/checkmark-valid.png") #e1ffe1 no-repeat right !important;
	color: #5cb85c;
}
/* REQUIRED FORM ELEMENT - ERROR */
.has-error .form-control {
	background: url("../images/checkmark-invalid.png") #ffdfde no-repeat right !important;
	color: #d9534f;
}
/* REQUIRED FORM ELEMENT - ERROR MESSAGE */
.help-block.with-errors ul {
	margin-bottom: 0;
}
.help-block.with-errors ul li {
	font-style: italic;
	color: #d9534f;
	margin-bottom: -.4rem;
    line-height: 1.2rem;
}
.help-block.with-errors ul li:before {
	content: "\f029";
	color: #d9534f;
	font-size: 1.5rem;
    position: relative;
    top: 3px;
}

/* ==========================================================================
															NAVIGATION COLUMN
========================================================================== */
#nav-col {
	position: fixed;
	top: 0;
	left: 0;
	bottom: 0;
	overflow-y: auto;
	height: 100%;
	color: #fff;
	scrollbar-base-color: #174c59;
	scrollbar-face-color: #174c59;
	scrollbar-3dlight-color: #174c59;
	scrollbar-highlight-color: #174c59;
	scrollbar-track-color: #0c313a;
	scrollbar-arrow-color: #FAF4E4;
	scrollbar-shadow-color: #174c59;
	scrollbar-dark-shadow-color: #174c59;
}
#nav-col hr {
    background-image: linear-gradient(to right, rgba(0, 0, 0, 0), rgba(34,166,170,1), rgba(0, 0, 0, 0));
    width: 80%;
    margin: 1rem auto 2rem auto;
}
@media all and (max-width: 800px) {
	#nav-col {
		position: relative;
		height: 65px;
	}
	#mobile-header {
		position: fixed;
    	top: 0;
    	z-index: 999;
    	width: 100%;
    }
    #mobile-header .phone {
    	position: absolute;
    	right: 15px;
    	top: 22px;
    }
}
@media all and (max-width: 375px) {
	#mobile-header .phone {
    	display: none;
    	visibility: hidden;
    }
}

/* SEARCH FORM */
#nav-col form {
	padding: 0 1rem;
}
#nav-col label {
	text-transform: uppercase;
	font-size: .75rem;
	margin-bottom: 0;
}

/* CUSTOM SCROLLBAR */
#nav-col::-webkit-scrollbar-track {
	-webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.3);
	background-color: #0D343E;
}

#nav-col::-webkit-scrollbar {
	width: 10px;
	background-color: #65CFCA;
}

#nav-col::-webkit-scrollbar-thumb {
	background-color: #0D343E;
	border: 1px solid #174c59;
}

/* ==========================================================================
										OFFSCREEN STYLES (TABLET and MOBILE)
========================================================================== */
button#c-button--slide-left {
    border-radius: 0 !important;
    padding: 24px 15px;
}
@media all and (max-width: 800px) {
	.c-menu {
	  position: fixed;
	  z-index: 9999;
	  transition: transform 0.3s;
	}
}
/* Close button resets */
.c-menu__close:focus {
	outline: none;
}
/* Body states. When a menu is active, we want to hide the overflows on the body to prevent awkward document scrolling. */
body.has-active-menu {
	overflow: hidden;
}
/* Mask component */
.c-mask {
	position: fixed;
	z-index: 9998;
	top: 0;
	left: 0;
	overflow: hidden;
	width: 0;
	height: 0;
	opacity: 0;
	transition: opacity 0.3s, width 0s 0.3s, height 0s 0.3s;
	background-color: #000;
}
.c-mask.is-active {
	width: 100%;
	height: 100%;
	opacity: 0.7;
	transition: opacity 0.3s;
}
.c-menu--slide-left .c-menu__close {
	display: block;
	width: 100%;
	margin-top: 0;
}
@media all and (max-width: 800px) {
	.c-menu--slide-left {
		width: 100%;
		height: 100%;
		overflow-y: scroll;
		width: 300px;
		top: 0;
		left: 0;
		transform: translateX(-100%);
	}
	.c-menu--slide-left {
		transform: translateX(-300px);
	}
	#mobile-header img {
		width: 113px;
	}
}
.c-menu--slide-left.is-active {
	transform: translateX(0);
}

/* NAV ITEMS */
li.nav-item {
	font-size: 1rem;
}
.nav-item:first-of-type {
	border-top: 1px solid #174c59;
}
a.nav-link, span.nav-link {
	padding: 8px 15px;
    width: 100%;
    border-bottom: 1px solid #174c59;
}
/* ACCORDION BUTTON */
.btn-nav-item-accordion {
	position: absolute;
	right: 0;
	top: 0;
	border-radius: 0;
	border-left: 1px solid #174c59;
	height: 2.5rem;
	font-size: 21px;
	font-weight: bold;
	padding: 8px 12px;
}
.nav-item-accordion .nav .nav-link {
    width: 100%;
    padding-left: 20px;
}

#accordion-cetacean ul li a {
    background-color: #06161c;
    padding-left: 35px !important;
}

@media screen and (min-width: 992px) and (max-width: 1199px) {
	#content {
		margin-left: 33.333333%;
	}
}
@media screen and (min-width: 1200px) {
	#content {
		margin-left: 25%;
	}
}

#c-menu--slide-left h6 {
	text-transform: uppercase;
	color: #f9f3e5;
}

/* ==========================================================================
														CAROUSEL ON HOMEPAGE
========================================================================== */
#banner-carousel .flickity-viewport {
	height: 400px;
}
.carousel-caption {
    font-family: 'Montserrat', sans-serif;
    font-size: 3rem;
    line-height: 3.5rem;
    letter-spacing: -2px;
    color: #e5ec16;
    text-shadow: 0 1px 2px rgba(0,0,0,.6);
}
@media screen and (max-width: 600px) {
	#banner-carousel .flickity-viewport {
		height: 400px;
	}
	.carousel-caption {
    	font-size: 2rem;
    	line-height: 2.5rem;
    }
}





/* ==========================================================================
																BUSINESS INFO
========================================================================== */
#biz-info {
	text-align: center;
}
#biz-info p,
#biz-info ul {
    margin-bottom: .55rem;
    padding-bottom: .5rem;
    border-bottom: 1px dotted;
}
ul#social .mdi {
    font-size: 2rem;
}





/* ==========================================================================
																	CONTENT
========================================================================== */
#content ol {
	padding-left: 15px;
}
#content img {
	display: block;
    max-width: 100%;
    height: auto;
}
#content h1,
#content h2,
#content h3,
#content h4,
#content h5,
#content h6 {
	text-align: left;
}
@media only screen and (max-width: 435px) {
	#content h1,
	#content h2,
	#content h3,
	#content h4,
	#content h5,
	#content h6 {
		text-align: center;
	}
}

/* ==========================================================================
																	CARDS
========================================================================== */
.card h4.card-title {
	margin-bottom: 0;
	font-size: 1.25rem;
}

/* ==========================================================================
																	FOOTER
========================================================================== */

/* ==========================================================================
																INNER PAGE(S)
========================================================================== */
ul.list-inline-nav li.list-inline-item {
	border-right: 1px solid #000;
    padding-right: .5rem;
}
ul.list-inline-nav li.list-inline-item:last-child {
	border-right: none;
}
.list-group-item-action {
	font-size: 1.25rem;
}

/* ==========================================================================
												CAROUSEL ON IMAGE SLIDER PAGES
========================================================================== */
#item-carousel .carousel-cell {
  width: 50%;
  margin: 0 10px;
  padding: 20px;
  background: rgba(255,255,255,.9);
  min-height: 100%;
  border-radius: .5rem;
}
#item-carousel .carousel-cell-image {
  display: block;
  max-height: 100%;
  margin: 0 auto;
  max-width: 100%;
}
@media only screen and (max-width: 767px) {
	#item-carousel .carousel-cell {
		width: 80%;
	}
}
@media only screen and (min-width: 768px) {
	#item-carousel .carousel-cell {
		width: 50%;
	}
}
@media only screen and (max-width: 767px) {
	.carousel-cell-caption p {
		text-align: center;
	}
}
#item-carousel .carousel-cell-caption {
	margin-bottom: 3rem;
}
#item-carousel .carousel-cell-caption .btn {
	position: absolute;
	bottom: 20px;
	right: 20px;
}



a.btn.btn-sm.btn-outline-primary {
	display: none;
}
