/*! HTML5 Boilerplate v8.0.0 | MIT License | https://html5boilerplate.com/ */

/* main.css 2.1.0 | MIT License | https://github.com/h5bp/main.css#readme */
/*
 * What follows is the result of much research on cross-browser styling.
 * Credit left inline and big thanks to Nicolas Gallagher, Jonathan Neal,
 * Kroc Camen, and the H5BP dev community and team.
 */

/* ==========================================================================
   Base styles: opinionated defaults
   ========================================================================== */

html {
  color: #222;
  font-size: 1em;
  line-height: 1.4;
}

/*
 * Remove text-shadow in selection highlight:
 * https://twitter.com/miketaylr/status/12228805301
 *
 * Vendor-prefixed and regular ::selection selectors cannot be combined:
 * https://stackoverflow.com/a/16982510/7133471
 *
 * Customize the background color to match your design.
 */

::-moz-selection {
  background: #b3d4fc;
  text-shadow: none;
}

::selection {
  background: #b3d4fc;
  text-shadow: none;
}

/*
 * A better looking default horizontal rule
 */

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #ccc;
  margin: 1em 0;
  padding: 0;
}

/*
 * Remove the gap between audio, canvas, iframes,
 * images, videos and the bottom of their containers:
 * https://github.com/h5bp/html5-boilerplate/issues/440
 */

audio,
canvas,
iframe,
img,
svg,
video {
  vertical-align: middle;
}

/*
 * Remove default fieldset styles.
 */

fieldset {
  border: 0;
  margin: 0;
  padding: 0;
}

/*
 * Allow only vertical resizing of textareas.
 */

textarea {
  resize: vertical;
}

/* ==========================================================================
   Author's custom styles
   ========================================================================== */

html {
	overflow-x: hidden;
}
body {
	font-family: Lato, Arial, sans-serif;
	background-color: #fff;
}
ul.ui, ul.ui li {
	list-style: none;
	margin: 0;
	padding: 0;
}
nav#main-nav,
.nav-social-icons {
	display: none;
}

.slider .slick-prev {
    left: 20px !important;
}
.slider .slick-next {
    right: 20px !important;
}
.slick-prev, .slick-next,
.slick-prev svg, .slick-next svg {
	width: 18px !important;
	height: auto;
	z-index: 1;
	color: rgba(255,255,255,0.75);
}
.slick-prev:hover svg, .slick-next:hover svg,
.slick-prev:focus svg, .slick-next:focus svg {
	color: #fff;
}
.slick-prev:before, .slick-next:before {
/*	font-family: unset !important;
	font-size: 18px; */
	content: "" !important;
}

.wrapper {
	/* overflow-x: hidden; */
	font-size: 1em;
}
a {
	color: #004da3;
	text-decoration: none;
}

.top-advisory {
	background-color: #75FF75;
	text-align: center;
	padding: 15px 10px;
	border-bottom: 2px solid #ffffff;
}

.top-advisory p {
	text-align: center;
	color: #000000;
	font-size: 1em;
	margin: 0;
}

.top-advisory p.large {
	color: #000000;
	font-size: 1.25em;
	font-weight: 700;
	margin: 0;
}

.top-advisory a {
	color: #000000;
	font-size: 1em;
	margin: 0;
	text-decoration: underline;
}

header {
	background-color: transparent;
	position: relative;
	width: 100vw;
	height: 100vh;
}
.mobile-icon {
	position: absolute;
	display: block;
	font-size: 1.5em;
	line-height: 1em;
	color: #fff;
	text-shadow: 0 0 .5em rgba(0,0,0,0.5);
	z-index: 99999;
	cursor: pointer;
}
#mobile-nav {
	top: 1.5em;
	left: 1.5em;
}
#mobile-search {
	top: 1.5em;
	right: 1.5em;
}

.logo {
	position: absolute;
	top: 0;
	left: 0;
	width: 9em;
	height: auto;
	z-index: 9999;
	text-align: center;
	margin-left: calc(50vw - 4.5em);
}
.logo img {
	margin: .875em 0;
	width: 9em;
}
.header-social,
.header-tools {
	display: none;
}

.header-fade {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 8em;
	z-index: 99998;
	background-image: linear-gradient(to bottom, rgba(0,124,205,.8), rgba(0,124,205,.6), rgba(0,124,205,.4), rgba(0,124,205,.2), rgba(0,124,205,0));
}

header .slider.mobile {
	background-color: transparent;
	width: 100vw;
	height: 100vh;
	display: none !important;
}
header .slider.mobile img {
	width: 100%;
	height: 100vh;
	object-fit: cover;
	object-position: center center;
}
header .slider.mobile > div {
	position: relative;
}
header .slider.mobile .slide-title {
	display: none;

	position: absolute;
	bottom: 1.25em;
	left: 0;
	width: 100%;
	text-align: center;
	font-family: Big Shoulders Display, sans-serif;
	font-size: 3rem;
	line-height: 1em;
	color: #fff;
	text-shadow: 0 0 .5em rgba(0,0,0,0.5);
/*	opacity: 0;
		-webkit-transition: all 750ms cubic-bezier(0.23, 1, 0.32, 1);
		-moz-transition: all 750ms cubic-bezier(0.23, 1, 0.32, 1);
		transition: all 750ms cubic-bezier(0.23, 1, 0.32, 1);
		transition-delay: 500ms; */
}

header .slider.desktop {
	background-color: transparent;
	width: 100vw;
	background-image: url("../img/video-home.jpg");
	background-size: cover;
	background-position: center center;
}
.section-key-west header .slider.desktop {
	background-image: url("../img/video-key-west.jpg");
}
.section-lower-keys header .slider.desktop {
	background-image: url("../img/video-lower-keys.jpg");
}
.section-marathon header .slider.desktop {
	background-image: url("../img/video-marathon.jpg");
}
.section-islamorada header .slider.desktop {
	background-image: url("../img/video-islamorada.jpg");
}
.section-key-largo header .slider.desktop {
	background-image: url("../img/video-key-largo.jpg");
}
header .slider.desktop iframe {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
/*			transition: opacity 100ms ease-in;
			transition-delay: 0ms; */
}
header .slider.desktop > div {
	position: relative;
	width: 100%;
	height: 100vh;
/*	height: 0;
	padding-bottom: 56.25%; */
}
.slider-video {
/*	display: none; */
}
.slider-video iframe {
	transition: opacity 500ms ease-in-out;
	transition-delay: 250ms;
}
.video-background-controls {
	top: unset !important;
	bottom: 2em !important;
	right: 2em !important;
}
.video-background-controls button {
	background-color: transparent;
	border: 0;
	font-size: 1.5em;
	color: #fff;
}
.video-background-controls button:hover,
.video-background-controls button:focus {
	cursor: pointer;
}

header .slider .slick-active .slide-title {
/*	bottom: .75em;
	opacity: 1; */
}

.header-arrow p {
	margin: 0;
	padding: 0;
}
.header-arrow {
	position: absolute;
	bottom: 2em;
	left: 0;
	width: 100%;
	text-align: center;
	z-index: 2;
}
.header-arrow a {
	font-size: 2em;
	color: #fff;
	text-shadow: 0 0 20px rgba(0,0,0,0.75);
}
.header-arrow svg {
	filter: drop-shadow(0 0 20px rgba(0,0,0,0.75));
}



/* ============================================================ */


.section-florida-keys header {
		background-image: url(../img/section-florida-keys-bg.jpg);
		background-repeat: no-repeat;
		background-size: cover;
		background-position: center top;
}

header .slider img {
    width: 100%;
    height: 100vh;
    object-fit: cover;
    object-position: center center !important;
}



.header-section-logo {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	display: flex;
	flex-flow: row wrap;
	justify-content: center;
	align-items: center;
	z-index: 1;
	text-align: center;
}
.header-section-logo img {
/*	width: 80%;
	max-width: 40rem; */
	max-width: 100%;
	max-height: 14em;
	opacity: .67;
		-webkit-transition: all 500ms cubic-bezier(0.23, 1, 0.32, 1);
		-moz-transition: all 500ms cubic-bezier(0.23, 1, 0.32, 1);
		transition: all 500ms cubic-bezier(0.23, 1, 0.32, 1);
}
.header-section-logo img:hover,
.header-section-logo img:focus {
	opacity: 1;
}

.page header {
	height: auto; 
	min-height: 20rem;
}
.page header .slider.desktop > div,
.page header .slider img {
	height: 20rem; 
	min-height: 20rem;
}
.page header .slider.mobile {
	position: relative;
}
.page header .slider.mobile,
.page header .slider.mobile img {
	height: 20rem;
}
.page .header-section-logo {
/*	align-items: flex-end; */
/*	margin-top: 1.75em; */
}
.page .header-section-logo img {
/*	max-width: 20rem; */
	margin: 0 0 1em;
}
.page .header-arrow {
	display: none;
}

.page p a {
	font-weight: 500;
}

.content-col article ul li a {
	font-weight: 500;
}

/* ============================================================ */

h1, h2,
.h1, .h2 {
	text-align: center;
}
.kicker {
	flex: 0 0 100%;
	font-family: Big Shoulders Display, sans-serif;
	text-align: center;
	text-transform: uppercase;
	font-size: 1em;
	line-height: 1.5em;
	font-weight: 700;
	margin: 1.5em 0 0;
}
.content-one article h1,
.content-one article h2,
.content-one article h3,
.content-row > h1,
.content-one article .h1,
.content-one article .h2,
.content-one article .h3,
.content-row > .h1,
.title-light {
	font-family: Big Shoulders Display, sans-serif;
	text-align: center;
	margin: 0 auto;
}
.content-one article h1,
.content-one article .h1,
.title-light {
	font-size: 2em;
	line-height: 1em;
	font-weight: 400;
	padding: .25em 16px;
/*	background-color: #fff; */
}
.t-divider {
	display: block;
	margin: 2rem 2rem 0;
	border-bottom: 1px solid rgb(0 124 205 / 50%);
}
.t-content-row {
	overflow-x: hidden;
}
.t-content-excerpt {
	margin: 1.25em 0;
}
.t-content-excerpt > a > img {
	width: 100%;
	height: auto;
}
.page article {
/*	padding: 0 0 2rem; */
}
article p {
	font-size: 1em;
	line-height: 1.5em;
	font-weight: 400;
	padding-left: 1.5em;
	padding-right: 1.5em;
}
.continue {
	font-size: .875em;
	line-height: 1.5em;
	font-weight: 700;
	text-transform: uppercase;
	white-space: nowrap;
}
.t-content-preview {
	margin: 1em 0;
}
.t-content-preview a {
	display: flex;
	flex-flow: row wrap;
	justify-content: space-evenly;
	align-items: center;
}
.t-content-preview .preview-img {
	flex: 0 0 25%;
	display: block;
/*    width: 25%;
    height: 0;
    padding-bottom: 17.5%;
	overflow: hidden; */
}
.t-content-preview .preview-img img {
	width: 100%;
	height: 16.75vw;
	object-fit: cover;
}
.t-content-video-more .t-content-preview .preview-img img {
	height: 14vw;
}
.t-content-preview .preview-link {
	flex: 0 0 calc(75% - 2em);
	padding: 0 1em;
	font-size: 1em;
	line-height: 1.5em;
}

.t-fixed-bg {
/*	background-attachment: fixed; */
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
}

#front-features-1 {
	background-image: url("../img/o/ReefAerial_1696.jpg");
}
#front-features-2 {
	background-image: url("../img/o/KeyWestSmathersBeachSunset.jpg");
}
#front-features-3 {
	background-image: url("../img/o/Smathers-126.jpg");
}

#front-features-4 {
	justify-content: center;
}
#front-features-4,
#front-features-4 a,
#front-features-4 a span {
	background-color: #e6eef6;
	color: #0b5787;
}

.t-content-features {
	margin: 3em 0;
	padding: 1.5em;
}
.t-content-features.t-content-features-sm {
	/* max-width: 90em; */
	margin-left: auto;
	margin-right: auto;
	font-size: .75em;
}
.t-content-features .t-content-col {
	margin: 0 0 1.5em;
}
.t-content-features .t-content-col a {
	display: block;
	padding: 2em 1.5em;
	background-color: #fff;
	text-align: center;
	border-radius: .5em;
	color: #222222;
}
.t-content-features.t-content-features-sm .t-content-col a {
	padding: .5em;
}
.t-content-features .t-content-col.t-content-features-reversed a {
	background-color: #000;
	color: #222;
	text-shadow: 1px 1px 0 rgba(0,0,0,0.25);
	/* border: 5px solid #fff; */
	opacity: .9;
	box-shadow: 0 0 1em rgba(0,0,0,0.25);
}
.feature-title {
	font-family: Big Shoulders Display;  
	font-size: 2em; 
	line-height: 1em; 
	font-weight: 900;
	text-align: center; 
	color: #fff; 
	text-shadow: 0 0 .25em rgba(0,0,0,0.5); 
	margin: 0 0 .5em;
}
.feature-hed {
	display: block;
	font-family: Big Shoulders Display, sans-serif;
	font-size: 2em;
	line-height: 1em;
	margin: .25em 0;
	color: #444;
}
.t-content-features-reversed .feature-hed {
	color: #222;
	text-shadow: 2px 2px 0 rgba(0,0,0,0.25);
}
.t-content-features.t-content-features-sm .feature-hed {
	/* font-family: Lato; */
	font-size: 2em;
	font-weight: 400;
	line-height: 1em;
}
.feature-txt {
	display: block;
	font-size: .875em;
	line-height: 1.5em;
	font-weight: 300;
	text-align: left;
}
.t-content-features .t-content-col a i,
.t-content-features .t-content-col a svg {
	display: block;
	font-size: 6em;
	line-height: 1em;
	text-align: center;
	margin: 0 auto;
}
.t-content-features.t-content-features-sm i,
.t-content-features.t-content-features-sm svg {
	margin: 0 auto .25em !important;
}
.t-content-img-col img {
	width: 100%;
	height: auto;
}
.t-content-alternating .t-content-img-col img {
	width: 100%;
	margin: 1.5em 0;
}
.t-crowdriff {
	width: calc(100% - 2em); 
	padding: 1em;
}

#front-welcome h1 {
	font-family: Big Shoulders Display, sans-serif;
	font-size: 2em;
	line-height: 1em;
	font-weight: normal;
	margin-top: .25em;
}

.t-content-video .t-content-video-clip div {
	position: relative;
	display: block;
	width: 100%;
	height: 0;
	padding-bottom: 56.25%;		
}
.t-content-video .t-content-video-clip div iframe,
.t-content-video .t-content-video-clip div object {
	position: absolute;
	display: block;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

#front-app-photo {
	padding: 3em 0;
	justify-content: center;
	/* align-items: center; */
}
#front-app-promo,
#front-photo-adventure-promo {
	margin: 0 auto;
}
#front-app-promo a {
	display: flex;
	flex-flow: row wrap;
	justify-content: center;
	align-items: center;
	max-width: 75vw;
	margin: 0 auto 3em;
	color: #73a700;
}
#front-app-promo img {
	max-width: calc(50% - 1.5em);
	border-radius: 1em;
	margin: 0 .75em 1.5em;
}
.photo-adventure-promo {

}
.photo-adventure-featured {
	margin-bottom: 1em;
}
.photo-adventure-promo-block h1,
.photo-adventure-promo-block h2,
.photo-adventure-promo-block h3,
.photo-adventure-promo-block .h1,
.photo-adventure-promo-block .h2,
.photo-adventure-promo-block .h3,
.photo-adventure-promo-block p {
	font-size: .875em;
	line-height: 1.5em;
	font-weight: 300;
	margin: 0;
	padding: 0 1em;
	text-align: center;
}
.photo-adventure-promo-block h1,
.photo-adventure-promo-block .h1 {
	font-family: "Big Shoulders Display";
	font-size: 1.5em !important;
	line-height: 1em !important;
	margin-bottom: .25em;
	font-weight:  400;
	color: #ff6c00;
}
.photo-adventure-promo-block h2,
.photo-adventure-promo-block .h2 {
	font-style: italic;
}
.photo-adventure-promo-block img {
	margin: 0 0 1.5em 0;
}
.photo-adventure-promo-block a {	
	color: #004da3;
}
.photo-adventure-logo p {
	font-weight: 700;
}
.photo-adventure-logo img {
	max-width: 240px;
}
.photo-adventure-promo > p {
	clear: both;
	padding: .5em 1.5em;
	text-align: center; 
	font-size: .875em; 
	line-height: 1.25em; 
	font-weight: bold;
}
.photo-adventure-promo > p svg {
	color: #f5750f;
}
a.expand-img {
	position: relative;
	display: inline-block;
	border-bottom: 0 !important;
}
a.expand-img i,
a.expand-img svg {
	position: absolute;
	top: 0;
	right: 0;
	color: #fff;
	padding: .5em;
	text-shadow: 0 0 10px rgba(0,0,0,0.5);
	font-size: .875em;
	background-color: rgba(0,0,0,0.1);
}
a.photo-adventure-img span,
a.photo-adventure-img i,
a.photo-adventure-img svg {
	/*
	color: #f5750f;
	text-shadow: 0 0 10px rgba(256,256,256,0.5);
	background-color: rgba(256,256,256,0.75);
	*/
	display: none;
}


footer {
	margin: 2rem 0 0 0;
	padding: 0 0 3em;
	overflow-x: hidden;
}
footer .t-content-row {
	/* align-items: center; */
}
.footer-hed {
	font-family: "Big Shoulders Display";
	font-size: 1.25em;

/*	font-size: .75em; */
	line-height: 1em;
/*	text-transform: uppercase; */
	margin: .75em auto .25em;
/*	font-weight: 400; */
	font-weight: 600;
	text-align: center;
	color: #007dd3;
}
.footer-logo {
	text-align: center;
}
.footer-logo img {
/*	max-width: 8em; */
	max-width: 12em; 
	/* margin: -0.5em auto 0; */
}
.footer-social ul {
	display: flex;
	flex-flow: row wrap;
	justify-content: center;
	align-items: flex-start;
	font-size: 1.5em;
}
.footer-social ul li {
	margin: 0 .25em;
}
footer p {
	font-size: 12px;
	line-height: 1.5em;
	text-align: center;
	color: #0c297c;
}
footer p.footer-note {
	font-size: 1em;
	line-height: 1.5em;
	font-weight: 300;
	margin-top: 0;
}
footer p a {
	color: #0c297c;
}

footer .t-content-row {
	display: flex;
	flex-flow: row wrap;
	justify-content: center;
/*	align-items: flex-start; */
	align-items: center;
}
.tdcfr footer .t-content-row,
.tdcde footer .t-content-row,
.tdcnl footer .t-content-row,
.tdcit footer .t-content-row,
.tdcuk footer .t-content-row {
	align-items: center;
}

#footer-logo { order: 1; }
#footer-social { order: 2; padding: 1.5em 0; }
#footer-signup { order: 3; }
#footer-contact { order: 4; }
#footer-marketing { order: 5; }
#footer-copyright { order: 6; }

footer .t-content-three {
	flex: 0 0 100%;
	/* padding-bottom: 1.5em; */
}
footer .t-content-three.footer-bottom {
	/* padding-bottom: 0; */
}
#footer-copyright span.all-rights {
	display: block;
}

#footer-links ul {
	display: flex;
	flex-flow: row wrap;
	justify-content: center;
	align-items: flex-start;
}
#footer-links ul li {
/*	flex: 0 0 20%; */
	font-size: .6875em;
	line-height: 1em;
	text-align: center;
	margin: 0 1em;
}
/*
#footer-share {
	margin: 0 0 3em;
	padding: 3em 0;
	background-color: #007dd3;
	background-image: url("https://fla-keys.com/img/o/ShellBeachDarker_3194.jpg");
}
#footer-share .footer-hed,
#footer-share .kicker {
	color: #fff;
	text-shadow: 0 0 .25em rgba(0,0,0,0.5); 
}
*/

.full-screen-block {
	position: fixed;
	background-color: rgba(256,256,256,0.9375);
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 99999999;
	display: none;
}
.full-screen-block .full-screen {
	position: relative;
	display: flex;
	flex-flow: column wrap;
	justify-content: center;
	align-items: center;
	margin: 0 auto;
	width: 100%;
	height: 100%;
	

}
.full-screen a.full-screen-close {
	position: absolute;
	top: .25em;
	right: .75em;
	font-size: 2.5em;
	line-height: 1em;
	color: #ff8332;
	color: #000;
	padding: .25em;
}
.full-screen a.full-screen-close:hover,
.full-screen a.full-screen-close:focus {
	color: #ff8332;
}
#map-screen {
	background-image: linear-gradient(to bottom, #e6eef6, #d6f1f9, #cbf4ef, #cff5d9, #e6f0c1);
}
#search-screen {
	background-image: linear-gradient(to top, #e6eef6, #ebe8f8, #f9e1ef, #ffdbda, #fcdcc3);
}
#map-screen .full-screen .full-screen-map {
	margin: 0 auto;
	width: 87.5%;
	height: 100%;
	background-image: url(../img/main/map-nav-floridakeys-m.png); 
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center center;
	display: none;
}
#map-screen .full-screen .full-screen-map.floridakeys {
	display: block;
}

#search-screen h1,
#search-screen h2,
#search-screen .h1,
#search-screen .h2 {
	font-size: 5em;
	line-height: 1em;
	font-weight: 300;
	text-align: center;
	color: #2668b1;
	font-family: Big Shoulders Display;
}
#search-screen h2,
#search-screen .h2 {
	font-size: 2em;
	line-height: 3em;
	font-weight: 400;
}
#search-screen .full-screen-search {
/*	position: absolute;
	width: 100%;
	height: 300px;
	top: 50%;
	margin-top: -170px; */
	font-size: .5625em;
}
#search-screen form {
	text-align: center;
}
#search-screen input {
	width: 75%;
	font-size: 3em;
	line-height: 1.5em;
	border-radius: 2px;
	border: 2px solid #2668b1;
	font-weight: 400;
	text-align: center;
	margin: .5em auto;
	padding: .125em .5em;
	color: #b0d236;
}
#search-screen input#tdc-site-search-submit {
	display: none;
}
#search-screen ul, #search-screen ul li {
	list-style: none;
	margin: 0;
	padding: 0;
}
#search-screen ul {
	text-align: center;
	display: flex;
	flex-flow: row wrap;
	justify-content: center;
	align-items: center;
}
#search-screen ul li {
/*	display: inline-block; */
	flex: 0 0 18em;
	width: 18em;
	margin: .5em;
}
#search-screen ul li a,
.button a {
		font-family: Big Shoulders Display;
	display: block;
	width: 100%;
	background-color: #3a9ad8;
	border-radius: 2px;
	color: #fff !important;
	/* border-bottom: 0 !important; */
	font-size: 1.75em;
	line-height: 1em;
	padding: 1em 0;
		-webkit-transition: all 200ms cubic-bezier(0.23, 1, 0.32, 1);
		-moz-transition: all 200ms cubic-bezier(0.23, 1, 0.32, 1);
		-o-transition: all 200ms cubic-bezier(0.23, 1, 0.32, 1);
		transition: all 200ms cubic-bezier(0.23, 1, 0.32, 1);
}
#search-screen ul li a .fa {
	margin: 0 .5em;
}
#search-screen ul li a:hover,
#search-screen ul li a:focus {
	background-color: #ff8332;
}

ul#on-the-map-nav, ul#on-the-map-nav li {
	list-style: none;
	margin: 0;
	padding: 0;
}
ul#on-the-map-nav {
	/* background: rgba(0,0,0,0.5); */
	width: 87.5%;
	height: 74%;
	height: 37vw;
	margin: auto;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
}
ul#on-the-map-nav li {
	position: absolute;
	display: block;
	bottom: 0;
	left: 0;
	width: auto;
	height: 0;
}
ul#on-the-map-nav li a {
	display: block;
	width: 100%;
	height: 100%;
	margin: 0;
	padding: 0;
	/* background-color: rgba(0,0,0,.5); */
	/* border: 1px solid #000; */

	text-align: center;
	font-size: 1.5em;
	line-height: 1.5em;
	font-weight: 300;
	color: rgba(0,77,163,.75);
}
ul#on-the-map-nav li a span {
	display: block;
	text-indent: -9999px;
}
ul#on-the-map-nav li a:hover,
ul#on-the-map-nav li a:focus {
	color: #ff8332;
}
ul#on-the-map-nav li#on-the-map-keywest a span {

}
ul#on-the-map-nav li#on-the-map-lowerkeys a span {

}
ul#on-the-map-nav li#on-the-map-marathon a span {

}
ul#on-the-map-nav li#on-the-map-islamorada a span {

}
ul#on-the-map-nav li#on-the-map-keylargo a span {
	text-align: left;
	margin: 35% 0 0 -25%;
}
ul#on-the-map-nav li#on-the-map-keywest {
	width: 10%;
	height: 32%;
	margin: 40% 0 1% 0;
}
ul#on-the-map-nav li#on-the-map-lowerkeys {
	width: 37%;
	height: 45%;
	margin: 40% 0 1% 10%;
}
ul#on-the-map-nav li#on-the-map-marathon {
	width: 18%;
	height: 37%;
	margin: 40% 0 1% 47%;
}
ul#on-the-map-nav li#on-the-map-islamorada {
	width: 20%;
	height: 42%;
	margin: 40% 0 7% 65%;
}
ul#on-the-map-nav li#on-the-map-keylargo {
	width: 15%;
	height: 50%;
	margin: 50% 0 20% 85%;
}

._full-screen {
	display: block;
	border: 1px solid #000;
	width: 100%;
	height: 0;
	padding-bottom: 37%;
}



@media only screen and (min-width: 568px) {
	header {
/*		height: 56.25vw; */
	}
	header .slider.mobile {
		position: absolute;
		top: 0;
		left: 0;
		z-index: 1;
	}
	header .slider.mobile .slide-title {
		/* display: none; */
	}
	header .slider.mobile img {
		object-position: center center !important;
	}
	.header-district-nav {
		position: absolute;
		width: 100%;
		bottom: 0;
		left: 0;
		z-index: 2;
	}
	header.mobile .slick-dots,
	.header-district-nav ul {
		width: 100%;
		display: flex;
		flex-flow: row wrap;
		justify-content: space-evenly;
		align-items: center;
		position: absolute;
		left: 0;
    	bottom: 0;

/*		border-top: 3px solid #fff; */
	}
	header.mobile .slick-dots li,
	.header-district-nav li {
		width: auto;
		height: auto;
/*		flex: 0 0 20%; */
		text-align: center;
/*		background-color: rgba(0,0,0,0.25); */
	}
	header.mobile .slick-dots li a,
	.header-district-nav a {
		display: block;
		font-family: Big Shoulders Display, sans-serif;
		font-size: 1.5em;
		line-height: 1em;
		font-weight: 600;
		padding: .75em .75em 1.25em;
		color: #fff;
		text-shadow: 0 0 .5em rgba(0,0,0,0.5);
		margin-bottom: -.5em;
	}
	.header-district-nav a span {
		/* display: block;
		font-size: .5625em;
		line-height: 1em; */
	}
	header.mobile .slick-dots a {
		-webkit-transition: all 500ms cubic-bezier(0.23, 1, 0.32, 1);
		-moz-transition: all 500ms cubic-bezier(0.23, 1, 0.32, 1);
		transition: all 500ms cubic-bezier(0.23, 1, 0.32, 1);
	}
	header.mobile .slick-dots .slick-active a:before {

	}
	header.mobile .slick-dots span {
		display: block;
		width: 100%;
		height: 3px;
		margin-top: 2px;
		background-color: #fff;
		transform: scaleX(0);
 		transform-origin: bottom right;
 		transition: transform 0.75s ease-in-out;
	}
	header.mobile .slick-dots .slick-active span {
		transform: scaleX(1);
		transform-origin: bottom left;
	}

	header.mobile .slick-dots li a:hover,
	header.mobile .slick-dots li a:focus-within {
		/* transform: scale(1.05);
		-webkit-transform: scale(1.05); */
/*		background-color: #fff;
		border-top-left-radius: .25em;
		border-top-right-radius: .25em;
		color: #000;
		text-shadow: none; */
		margin-top: -.5em; 
	}
	header.mobile .slick-dots li a:hover span,
	header.mobile .slick-dots li a:focus-within span {
/*		background-color: #000; */
		transform: scaleX(1);
		transform-origin: bottom left;
	}

	.t-crowdriff {
		width: calc(100% - 4em); 
		padding: 2em;
	}
	.t-content-one {
		flex: 0 0 100%;
	}
	.t-content-two,
	.t-content-three,
	.t-content-four,
	.t-content-five {
		flex: 0 0 50%;
	}


	#footer-copyright span.all-rights {
		display: inline;
	}

}
@media only screen and (min-width: 768px) {
	.wrapper {
		font-size: .75em;
	}
	.t-fixed-bg {
		background-attachment: fixed;
	}
	.mobile-icon {
		font-size: 2em;
		line-height: 1em;
	}
	header {
		min-height: 30em;
	}
	.slider .slick-prev {
	    left: 36px !important;
	}
	.slider .slick-next {
	    right: 36px !important;
	}
	.slick-prev:before, .slick-next:before {
		font-size: 36px;
	}
	.slick-prev, .slick-next,
	.slick-prev svg, .slick-next svg {
		width: 24px !important;
	}
	header.mobile .slick-dots,
	.header-district-nav ul {
/*		width: calc(100% - 6em);
		left: 3em; */
	}
	header.mobile .slick-dots li a,
	.header-district-nav a {
		font-size: 2.5em;
		line-height: 1em;
	}

	.t-content-row {
		display: flex;
		flex-flow: row wrap;
		justify-content: space-evenly;
		align-items: flex-start;
	}
	.t-content-one {
		flex: 0 0 100%;
	}
	.t-content-two {
		flex: 0 0 50%;
	}
	.t-content-three {
		flex: 0 0 33.33%;
	}
	.t-content-four {
		flex: 0 0 25%;
	}
	.t-content-five {
		flex: 0 0 20%;
	}

	.t-content-order-1 { order: 1; }
	.t-content-order-2 { order: 2; }
	.t-content-order-3 { order: 3; }
	.t-content-order-4 { order: 4; }
	.t-content-order-5 { order: 5; }
	.t-content-order-6 { order: 6; }
	.t-content-order-7 { order: 7; }
	.t-content-order-8 { order: 8; }
	.t-content-order-9 { order: 9; }
	.t-content-order-10 { order: 10; }

	.kicker {
		font-size: 1.5em;
		line-height: 1.5em;
	}
	article {
		max-width: 60em;
		margin: 0 auto;
	}
	.t-content-excerpt {
		display: flex;
		flex-flow: row wrap;
		justify-content: space-between;
		align-items: center;
	}
	.t-content-excerpt > a, .t-content-excerpt p {
		flex: 0 0 calc(50% - 1.5em);
		font-size: 1.5em;
		line-height: 1.5em;
	}
	article p,
	article ul,
	article ol {
		font-size: 1.5em;
		line-height: 1.5em;
		font-weight: 300;
		padding-left: 0;
		padding-right: 0;
	}
	article p p,
	article ul ul,
	article ol ol {
		font-size: inherit;
	}
	.content-one article h1,
	.content-one article .h1,
	.title-light {
		font-size: 5em;
		line-height: 1em;
		padding: .25em .125em;
	}
	.t-content-more .t-content-five {
		flex: 0 0 18vw;
		flex: 0 0 calc((100vw - 12em) / 5);
	}
	.t-content-preview .preview-img {
		flex: 0 0 100%;
/*	    width: 100%;
	    padding-bottom: 67%; */
	}
	.t-content-preview .preview-img img {
		width: 100%;
		/* height: 13.4vw; */
		height: 11.75vw;
		height: 11.5vw;
	}
	.t-content-video-more .t-content-preview .preview-img img {
		/* height: 11.25vw; */
		height: 10vw;
		height: 9.3vw;
	}
	.t-content-preview .preview-link {
		/* flex: 0 0 calc(100% - 2em);
		padding: .5em 1em; */
		flex: 0 0 100%;
		padding: .5em 0;
		font-size: .875em;
		line-height: 1.5em;
	}

	.t-content-features {
		margin: 1.5em 0;
		padding: 4em 0;
		align-items: stretch;
	}
	.t-content-features .t-content-five {
		flex: 0 0 18vw;
	}
	.t-content-features .t-content-three {
		flex: 0 0 27.33vw;
		display: flex;
	}
	.t-content-features .t-content-col {
		margin: 0;
	}
	.t-content-features .t-content-col a {
		opacity: .9;
		padding: 2em 2.5em;
		-webkit-transition: transform 200ms cubic-bezier(0.23, 1, 0.32, 1);
		-moz-transition: transform 200ms cubic-bezier(0.23, 1, 0.32, 1);
		transition: transform 200ms cubic-bezier(0.23, 1, 0.32, 1);
	}
	.feature-title {
		font-size: 5em; 
		line-height: 1em; 
	}
	.feature-hed {
		font-size: 2.25em;
		line-height: 1em;
	}
	.feature-hed.feature-hed-sm {
		font-size: 2em;
		line-height: 1em;
	}
	.t-content-features .t-content-col a:hover,
	.t-content-features .t-content-col a:focus {
		opacity: 1;
		transform: scale(1.05);
		-webkit-transform: scale(1.05);
	}

	.t-content-alternating {
		align-items: stretch;
	}
	.t-content-alternating .t-content-two,
	.t-content-padded .t-content-two {
		flex: 0 0 calc(50% - 4.5em);
		display: flex;
		flex-flow: column wrap;
		justify-content: center;
		align-items: flex-start;
	}

	#front-welcome .kicker {
		margin-top: 0;
	}
	#front-welcome h1 {
		font-size: 3.5em;
		line-height: 1em;
	}
	#front-news article p,
	#front-welcome article p,
	#keys-featured-video article p {
		font-size: 1.5em;
		line-height: 1.5em;
		font-weight: 300;
	}

	.t-content-video .t-content-video-clip {
		width: 60em;
		/* max-width: 800px; */
		margin: 0 auto;
	}

	#front-app-promo .feature-hed {
		font-size: 3em;
		line-height: 1em;
	}
	#front-app-photo {
		padding: 3em 7.5vw 0;
	}
	.photo-adventure-promo {
		width: 100%;
		margin: 0 auto;
		display: flex;
	    flex-flow: row wrap;
	    justify-content: space-evenly;
	    align-items: center;
	}
	.photo-adventure-promo-block {
		flex: 0 0 45%;
/*		width: 11.25em; */
	}
	.photo-adventure-promo-block.photo-adventure-photo {
		flex: 0 0 100%;
	}
	.photo-adventure-promo-block:nth-child(even) {
		border-right: 1px solid rgba(0,0,0,0.25);
		margin: 0 .625em 0 0;
		padding: 0 .625em 0 0;
	}
	.photo-adventure-promo-block h1,
	.photo-adventure-promo-block h2,
	.photo-adventure-promo-block h3,
	.photo-adventure-promo-block .h1,
	.photo-adventure-promo-block .h2,
	.photo-adventure-promo-block .h3,
	.photo-adventure-promo-block p {
		font-size: .875em;
		line-height: 1.5em;
		padding: 0;
	}
	.photo-adventure-featured {
		margin-bottom: 0;
	}
	footer {
		font-size: 1.25em;
		padding: 2em 0 4em;
	}
	footer .t-content-three {
		flex: 0 0 100vw;
	}
	footer p {
		font-size: 13px;
		line-height: 1.5em;
	}
	.footer-div {
/*		flex: 0 0 100%;
		border-top: 1px solid #e6eef6; 
		margin-top: 1.5em; 
		padding-top: 1.5em; */
	}

	#search-screen .full-screen-search {
		font-size: 1em;
	}
	#map-screen .full-screen .full-screen-map {
		background-image: url(../img/main/map-nav-floridakeys.png); 
	}
	#map-screen .full-screen .keywest {
		background-image: url(../img/main/map-nav-keywest.png);
	}
	#map-screen .full-screen .lowerkeys {
		background-image: url(../img/main/map-nav-lowerkeys.png);
	}
	#map-screen .full-screen .marathon {
		background-image: url(../img/main/map-nav-marathon.png);
	}
	#map-screen .full-screen .islamorada {
		background-image: url(../img/main/map-nav-islamorada.png);
	}
	#map-screen .full-screen .keylargo {
		background-image: url(../img/main/map-nav-keylargo.png);
	}

	#search-screen input {
		width: 10em;
	}

}

@media only screen and (max-width: 1024px) {

	.header-fade {
/*		position: unset;
		z-index: unset;
		background-image: none;
		background-color: transparent;
		height: unset; */
	}
	.page .header-section-logo {
		height: 20rem;
	}
	.page .header-section-logo img {
		margin: 4em 0 0;
	}
	nav#section-nav {
/*		background-color: #a9d140;
		background-color: #e6eef6;
		background-color: #d7ef7f; */
	}
	nav#section-nav ul,
	nav#section-nav ul li {
		list-style: none;
		margin: 0;
		padding: 0;
	}
	nav#section-nav ul {
		overflow-x: hidden;
		padding: 0 0 1.5em 0;
	}
	nav#section-nav > ul > li {
		position: relative;
		text-align: left;
		font-size: 1.125rem;
		line-height: 1rem;
		/* background-color: #7eb200; */
		font-weight: 700;
		/* background-image: linear-gradient(to bottom, #d7ef7f, #d1ec71, #ccea62, #c6e752, #c0e440); */
		/* border-bottom: 1px solid #e6eef6; */
		box-shadow: 0 1rem 1rem -1rem rgb(0 125 211 / 25%);
		margin-left: -1rem;
		margin-right: -1rem;
	}
	nav#section-nav ul li.section-nav-txt {
		font-weight: 400;
		font-style: italic;
	}
	nav#section-nav ul li a {
		/* color: #fff; */
		/* color: #4da300; */
		text-shadow: 1px 1px 0 rgba(255,255,255,0.5);
	}
	nav#section-nav > ul > li > a {
		max-width: 20rem;
		margin: 0 auto;
	}
	nav#section-nav .nav-submenu {
		display: none;
		/* background-color: #fff; */
		padding: 0 .5rem .5rem;
		max-width: 30rem;
		margin: 0 auto;
	}
	nav#section-nav > ul > li:not(:first-child) {
		/* border-top: 1px solid rgba(256,256,256,0.25); */
	}
	nav#section-nav ul li a {
		padding: .75rem;
	}
	nav#section-nav ul li ul {
		column-count: 2;
	}
	nav#section-nav ul li ul li {
		font-size: .875rem;
		line-height: 1rem;
		font-weight: 400;
/*		background-color: #8dc101;
		border-top: 1px solid rgba(256,256,256,0.25);
		border-bottom: 0; */
	}
	nav#section-nav ul li ul li a {
		color: #004da3;
		padding: .375rem .5rem;
	}
	nav#section-nav ul li .fa-angle-down,
	nav#section-nav ul li .fa-angle-right {
		/* float: right; */
		}
	nav#section-nav ul li ul li.more a {
		font-weight: 700;
		text-transform: uppercase;
	}
	nav#section-nav ul li ul li.more a {
		font-weight: 700;
		text-transform: uppercase;
	}
	nav#section-nav ul li .fa-angle-down {
		transition: rotate 200ms;
	}
	nav#section-nav ul li.active .fa-angle-down {
		rotate: -180deg;
	}
	nav#section-nav ul li ul li.more a .fa {
		width: auto;
		margin-right: 5px;
	}
	nav#section-nav ul li ul li.more a:after {
		/* content: " »"; */
	}
	nav#section-nav a > svg:not(.fa-angle-down, .fa-angle-right) {
		font-size: .875rem;
		margin-right: .75rem;
	}
	nav#section-nav li ul li svg {
		display: none;
	}

	#section-nav a {
		display: flex;
		flex-flow: row wrap;
		justify-content: flex-start;
		align-items: center;	
	}
	#section-nav a span {
		flex-grow: 1;
	}

}
@media only screen and (max-width: 568px) {
	nav#section-nav ul {
		max-width: 100%;
	}
	nav#section-nav > ul > li > a {
		max-width: calc(100% - 5rem);
	}
	nav#section-nav .nav-submenu {
		max-width: 96vw;
	}
}
@media only screen and (min-width: 1025px) {
	.wrapper {
		font-size: .875em;
	}

	#nav-book,
	#nav-map,
	#main-search,
	.mobile-icon {
		display: none;
	}

	header .slider.mobile {
		display: none;
	}
	header .slider.desktop {
		display: block;
	}

	.header-social,
	.header-tools {
		position: absolute;
		top: 0;
		z-index: 999;
		display: flex;
		flex-flow: row wrap;
		align-items: center;
		width: 50vw;
		height: 3em;

		font-family: "Big Shoulders Display", Lato, sans-serif;
		font-size: 1em;
		line-height: 1em;
		font-weight: 400;
		text-shadow: 0 0 .5em rgba(0,124,205,.75);
	}
	.header-social {
		left: 0;
		justify-content: flex-start;
		background-image: linear-gradient(to right, rgba(255,255,255,.20), rgba(255,255,255,.15), rgba(255,255,255,.1), rgba(255,255,255,.05), rgba(255,255,255,0));
	}
	.header-social .header-sustain a {
		font-weight: 700;
		color: #00ff00;
		text-shadow: 0 0 .5em rgba(0,0,0,0.25);
	}
	.header-social .header-sustain a:hover,
	.header-social .header-sustain a:focus {
		color: #fff;
	}
	.header-social ul,
	.header-tools ul {
		margin: 0 2em;
		display: flex;
		flex-flow: row wrap;
		justify-content: flex-start;
	}
	.header-social ul li {
		margin-right: 1.125em;
	}
	.header-social ul li a,
	.header-tools ul li a {
		font-size: 1em;
		line-height: 1em;
		color: #fff;
	}
	.header-tools {
		right: 0;
		justify-content: flex-end;
		background-image: linear-gradient(to left, rgba(255,255,255,.20), rgba(255,255,255,.15), rgba(255,255,255,.1), rgba(255,255,255,.05), rgba(255,255,255,0));
		color: #fff;
	}
	.header-tools ul {
		width: 100%;
		justify-content: flex-end;
		align-items: center;
	}
	.header-tools ul li {
		margin-left: 1em;
	}
	.header-tools svg {
		display: inline-block;
	}
	.header-tools .header-book a {
		/* background-color: #ff8332; */
		background-color: #028f9f;
    	border: 2px solid #fff;
    	border-radius: 4px;
    	padding: 0.25em 0.5em;
    	color: #fff;
	    font-weight: 700;
    	text-transform: uppercase;
    	text-shadow: 0 0 .5em rgba(0,0,0,0.5);
	}
	.header-tools .header-book a svg {
		filter: drop-shadow(0 0 .25em rgba(0,0,0,0.5));
	}
	.header-tools .header-book a:hover,
	.header-tools .header-book a:focus {
		background-color: #fff;
		color: #000;
		text-shadow: none;
	}
	.header-tools .header-book a:hover svg,
	.header-tools .header-book a:focus svg {
		filter: none;
	}

	.page header,
	.page header .slider.desktop > div,
	.page header .slider img {
		height: 23em; 
	}

	.page.page-keywesthome header,
	.page.page-lowerkeyshome header,
	.page.page-marathonhome header,
	.page.page-islamoradahome header,
	.page.page-keylargohome header,
	.page.page-keywesthome header .slider.desktop > div,
	.page.page-lowerkeyshome header .slider.desktop > div,
	.page.page-marathonhome header .slider.desktop > div,
	.page.page-islamoradahome header .slider.desktop > div,
	.page.page-keylargohome header .slider.desktop > div {
		height: 100vh;
	}

	.page-min header,
	.page-min header .slider.desktop > div,
	.page-min header .slider img {
		height: 10em; 
		min-height: 10em;
		background-position: center center;
	}


	.page .header-section-logo {
		margin-top: 1.75em;
	}
	.page .header-section-logo img {
		/* margin-top: 9em; */
		/* width: 20em;
		max-width: 100%; */
		max-height: 14em;
	}

	.page.page-keywesthome .header-section-logo img,
	.page.page-lowerkeyshome .header-section-logo img,
	.page.page-marathonhome .header-section-logo img,
	.page.page-islamoradahome .header-section-logo img,
	.page.page-keylargohome .header-section-logo img {
		max-height: 24em;
	}

	nav {
		display: block;
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		z-index: 999;
		padding: 0;
		background-color: transparent;
		margin: 3em 0 0;
	}
	nav > ul {
		display: flex;
		flex-flow: row wrap;
		justify-content: space-evenly;
		align-items: flex-start;
/*		padding: 0 1em !important; */
	}
	nav > ul > li {
		-webkit-transition: all 500ms cubic-bezier(0.23, 1, 0.32, 1);
		-moz-transition: all 500ms cubic-bezier(0.23, 1, 0.32, 1);
		transition: all 500ms cubic-bezier(0.23, 1, 0.32, 1);
	}
	nav > ul > li > a {
		display: block;
		font-family: "Big Shoulders Display", Lato, sans-serif;
		font-size: 1em;
		line-height: 1em;
		font-weight: 700;
		color: #fff;
		padding: 1.5em .75em;
		text-shadow: 0 0 .5em rgba(0,124,205,.75);
	}
	.t-header-block svg:not(.fa-bolt),
	nav > ul > li > a svg {
		filter: drop-shadow(0 0 .125em rgba(0,124,205,.5));
	}

	nav > ul > li#nav-plan {
		margin-right: 11em;
	}
	.unscrolled #nav-home,
	.unscrolled #nav-search {
		display: none;
	}
	.scrolled #nav-home,
	.scrolled #nav-search {
		display: block;
	}
	.scrolled nav {
		position: fixed;
		top: 0;
		margin-top: 0;
		background-color: rgba(0,124,205,1);
		border-bottom: 1px solid #fff;
	}
	.scrolled nav > ul {
/*		padding: 0 !important; */
	}

	.scrolled nav > ul > li#nav-plan {
		margin-right: 0em;
	}
	.scrolled #nav-home span,
	.scrolled #nav-search span {
		display: none;
	}
	.scrolled nav > ul > li > a {
		padding: 1em .75em;
	}
	.scrolled nav#main-nav > ul > li .nav-submenu {
		top: 3em;
	}


	nav > ul {
		position: relative;
	}
	nav > ul > li > a,
	nav > ul > li .nav-submenu {
		-webkit-transition: all 50ms cubic-bezier(0.23, 1, 0.32, 1);
		-moz-transition: all 50ms cubic-bezier(0.23, 1, 0.32, 1);
		transition: all 50ms cubic-bezier(0.23, 1, 0.32, 1);
	}
	nav > ul > li:hover > a,
	nav > ul > li:focus-within > a {
		background-color: #fff;
		color: #000;
		text-shadow: none;
	}
	nav > ul > li:hover > a svg,
	nav > ul > li:focus-within > a svg {
		filter: none;
	}
	nav > ul > li .nav-submenu {
		visibility: hidden;
		opacity: 0;
		position: absolute;
		top: 4em;
		background-color: #fff;
	}
	.scrolled nav > ul > li .nav-submenu,
	.page nav > ul > li .nav-submenu {
		box-shadow: 0 1rem 1rem -1rem rgb(0 125 211 / 25%);
		padding: 0 1em;
		margin: 0 -1em;
	}
	nav > ul > li:hover .nav-submenu,
	nav > ul > li:focus-within .nav-submenu {
		visibility: visible;
		opacity: 1;
	}
	.nav-img,
	.nav-cols {
		width: 100%;
		left: 0;
	}
	.nav-img > ul {
		display: flex;
		flex-flow: row wrap;
		justify-content: space-evenly;
		align-items: flex-start;
		padding: 2em 0;
	}
	.nav-img > ul > li {
		flex: 0 0 calc((100vw - 12em) / 5);
		text-align: center;
	}
	.nav-img > ul > li > a {
		display: block;
		padding-top: 8vw;
		padding-top: 45.71%;
		background-size: contain;
		background-position: center top;
		background-repeat: no-repeat;
	}
	#main-nav .nav-img ul li#nav-submenu-key-west > a { background-image: url(../img/main/links/section-key-west.jpg); }
	#main-nav .nav-img ul li#nav-submenu-lower-keys > a { background-image: url(../img/main/links/section-lower-keys.jpg); }
	#main-nav .nav-img ul li#nav-submenu-marathon > a { background-image: url(../img/main/links/section-marathon.jpg); }
	#main-nav .nav-img ul li#nav-submenu-islamorada > a { background-image: url(../img/main/links/section-islamorada.jpg); }
	#main-nav .nav-img ul li#nav-submenu-key-largo > a { background-image: url(../img/main/links/section-key-largo.jpg); }

	#main-nav .nav-img ul li#nav-submenu-diving-snorkeling a { background-image: url(../img/main/links/section-diving.jpg); }
	#main-nav .nav-img ul li#nav-submenu-fishing a { background-image: url(../img/main/links/section-fishing.jpg); }
	#main-nav .nav-img ul li#nav-submenu-arts-culture a { background-image: url(../img/main/links/section-arts.jpg); }
	#main-nav .nav-img ul li#nav-submenu-food-drink a { background-image: url(../img/main/links/section-food.jpg); }
	#main-nav .nav-img ul li#nav-submenu-weddings a { background-image: url(../img/main/links/section-weddings.jpg); }

	#main-nav .nav-img ul li#nav-submenu-key-west-webcams a { background-image: url(../img/webcams-key-west.jpg); }
	#main-nav .nav-img ul li#nav-submenu-lower-keys-webcams a { background-image: url(../img/webcams-lower-keys.jpg); }
	#main-nav .nav-img ul li#nav-submenu-marathon-webcams a { background-image: url(../img/webcams-marathon.jpg); }
	#main-nav .nav-img ul li#nav-submenu-islamorada-webcams a { background-image: url(../img/webcams-islamorada.jpg); }
	#main-nav .nav-img ul li#nav-submenu-key-largo-webcams a { background-image: url(../img/webcams-key-largo.jpg); }
	#main-nav .nav-img ul li#nav-submenu-water-beach-views a { background-image: url(../img/webcams-water.jpg); }
	#main-nav .nav-img ul li#nav-submenu-florida-keys-webcams a { background-image: url(../img/webcams-florida-keys.jpg); }
	#main-nav .nav-img ul li#nav-submenu-videos a { background-image: url(../img/webcams-videos.jpg); }
	#main-nav .nav-img ul li#nav-submenu-youtube a { background-image: url(../img/webcams-youtube.jpg); }
	#main-nav .nav-img ul li#nav-submenu-tiktok a { background-image: url(../img/webcams-tiktok.jpg); }

	.nav-img .nav-submenu-hed {
/*		font-family: "Big Shoulders Display";
		font-size: 2em;
		line-height: 1.5em;
		font-weight: 400; */

		display: block;
		font-size: 1.125em;
		line-height: 1em;
		font-weight: 400;
		margin: .875em auto 1em;

	}
	.nav-submenu-text {
		display: block;
		font-size: .825em;
		line-height: 1.5em;
		font-weight: 300;
		text-align: left;
		color: #222;
		margin-top: -.25em;
	}

	#nav-webcams .nav-img > ul {
		padding-bottom: .75em;
	}
	#nav-webcams .nav-submenu-hed {
		font-weight: 300;
/*		margin: 1em auto; */
	}
/*
	#nav-webcams .nav-submenu-hed,
	#nav-webcams .nav-submenu-link {
		font-size: 1.125em;
		line-height: 1em;
		font-weight: 300;
	}
	#nav-webcams .nav-img > ul > li {
		flex: 0 0 calc((100vw - 14em) / 6);
		text-align: center;
	}
	#nav-webcams .nav-img .nav-submenu-hed {
		margin: 1em auto 0;
	}
	#nav-webcams .nav-cols ul {
		border-top: 1px solid #e6eef6;
		text-align: center;
	}
	#nav-webcams .nav-cols ul li {
		margin-bottom: 0 !important;
	}
	#nav-webcams .nav-cols ul li a {
		padding-top: 0;
	}
*/

	.nav-cols {
/*		display: flex;
		flex-flow: row wrap;
		justify-content: space-evenly; */
	}
	.nav-submenu-content { 
		display: none;
		padding: 2em 0;
		flex: 0 0 calc(33.33vw - 6em);
	}
	.nav-submenu-img img {
		max-width: 100%;
		margin-bottom: 1em;
	}
	.nav-cols ul {
/*		background-color: #eee; */
/*		flex: 0 0 66.66vw; */
		padding: 2em 0;
		width: 60em;
		margin: 0 auto;
		-webkit-column-count: 3;
		-moz-column-count: 3;
		column-count: 3;
		-webkit-column-gap: 2em;
		-moz-column-gap: 2em;
		column-gap: 2em;
	}
	.nav-submenu.nav-single {
		width: auto;
		
	}
	.nav-cols.nav-single ul {
		width: max-content;
		-webkit-column-count: 1;
		-moz-column-count: 1;
		column-count: 1;
		-webkit-column-gap: unset;
		-moz-column-gap: unset;
		column-gap: unset;
	}
	.nav-cols ul li {
		display: block;
		font-size: 1.125em;
		line-height: 1.5em;
		font-weight: 300;
		margin-bottom: 1.25em;
		padding-left: 1.75em;
		text-indent: -1.75em;
	}
	.nav-cols ul li:last-child {
		margin-bottom: 0;
	}
	.csscolumns-breakafter .nav-cols ul li.submenu-col-break {
		break-after: column;
		margin-bottom: 0;
	}
	.nav-cols ul li.submenu-slim {
		letter-spacing: -.05em;
	}
	.nav-cols ul li a {
		display: block;
	}
	.nav-cols svg,
	.nav-cols .fi {
		margin-right: .25em;
	}

	.nav-cols .nav-submenu-text {
		font-size: 1em;
		line-height: 1.5em;
		width: 60em;
		margin: 2em auto;
	}

	.nav-submenu-img-hed {
		margin: 2em 0 0;
		width: 60em;
		height: 7.5em;
		background-size: cover;
		background-position: center center;
		background-repeat: no-repeat;
	}

/*
	#nav-plan .nav-submenu-img-hed { background-image: url("https://fla-keys.com/img/o/ShellBeachDarker_3194.jpg"); }
*/
	.svg-gradients {
	    position: absolute !important;
	    height: 1px; width: 1px;
	    overflow: hidden;
	    clip: rect(1px 1px 1px 1px);
	    clip: rect(1px, 1px, 1px, 1px);
	}
	.nav-lgbtq {
		background-image: linear-gradient(to right, #e89d1d, #e89d1d, #e4d01b, #87d42f, #1bb3e0, #736af1, #8600f3, #8600f3);
		background-clip: text;
		-webkit-background-clip: text;
		-webkit-text-fill-color: transparent;
	}
	.nav-lgbtq .far::before {
		-webkit-text-fill-color: #004da3;
	}
	.nav-lgbtq path {
		/* color: #fb2704; */
		fill: url(#rainbow-start);
	}
	.rainbow-start-stop1 { stop-color: #fb2704; }
	.rainbow-start-stop2 { stop-color: #e89d1d; }

	.nav-lgbtq .fa-external-link path {
		fill: url(#rainbow-end);
	}
	.rainbow-end-stop1 { stop-color: #8600f3; }
	.rainbow-end-stop2 { stop-color: #5d03a7; }
	#nav-know .fa-external-link,
	#nav-connect .fa-external-link {
		margin-left: 20px;
	}
	.nav-sustainable {
		color: #36a300;
	}

	.nav-submenu a {

	}
	.nav-submenu a:hover,
	.nav-submenu a:focus {
		color: #000;
	}
	.nav-submenu a.nav-lgbtq:hover,
	.nav-submenu a.nav-lgbtq:focus {
		background-image: none;
		-webkit-background-clip: unset !important;
		-webkit-text-fill-color: unset !important;
		color: #000 !important;
	}
	.nav-submenu a.nav-lgbtq:hover path,
	.nav-submenu a.nav-lgbtq:focus path {
		fill: #000;
	}



	nav#section-nav {
		position: absolute;
		background-color: rgba(11, 87,135,.5);
		top: unset;
		bottom: 0;
		margin: 0;
		z-index: 998;
	}
	nav#section-nav > ul {
		width: 100%;
	}
	nav#section-nav > ul > li > a {
		font-size: 1.5em;
		font-weight: 400;
		/* padding: 1rem .75rem; */
		padding: .5em .5em .5em .75em;

	}
	.section-diving nav#section-nav > ul > li > a,
	.section-fishing nav#section-nav > ul > li > a,
	.section-weddings nav#section-nav > ul > li > a {
		padding: .5em .25em .5em .5em;
	}
	nav#section-nav > ul > li .nav-submenu {
		top: 3em;
	}
	nav#section-nav .nav-submenu-hed,
	nav#section-nav .nav-cols ul li {
		font-size: 1em;
		font-weight: 300;
	}
	#nav-welcome {
		order: 2;
	}
	#nav-places {
		order: 1;
	}
	#nav-things {
		order: 3;
	}
	#nav-places .nav-img > ul > li {
		flex: 0 0 calc((100vw - 14em) / 6);
	}
	#nav-places .nav-img .nav-submenu-hed {
		margin-bottom: 0;
	}
	#nav-things .nav-img > ul {
		justify-content: center;
		padding: 2em 0 0;
	}
	#nav-things .nav-img > ul > li {
		flex: 0 0 calc((100vw - 18em) / 8);
		text-align: center;
		margin: 0 1em;
	}
	nav#section-nav #nav-things .nav-submenu-hed {
		font-size: .75em;
		line-height: 1.25em;
		font-weight: 400;
		background-color: #fff;
		padding: 1em 0;
		margin: 0 auto 1em;
	}
	#nav-things .nav-img > ul > li > a {
		padding-top: 45.71%;
		background-position: center top;
	}

	.nav-img ul li#nav-submenu-places-hotels > a { background-image: url("../img/main/links/section-places-hotels.jpg"); }
	.nav-img ul li#nav-submenu-places-guesthouses > a { background-image: url("../img/main/links/section-places-guesthouses.jpg"); }
	.nav-img ul li#nav-submenu-places-vacationrentals > a { background-image: url("../img/main/links/section-places-rentals.jpg"); }
	.nav-img ul li#nav-submenu-places-campgrounds > a { background-image: url("../img/main/links/section-places-rv-parks.jpg"); }
	.nav-img ul li#nav-submenu-places-lgbtq > a { background-image: url("../img/main/links/section-places-lgbtq.jpg"); }
	.nav-img ul li#nav-submenu-places-green > a { background-image: url("../img/main/links/section-places-green.jpg"); }

	.nav-img ul li#nav-submenu-air-tours > a { background-image: url("../img/things-to-do/air-tours.jpg"); }
	.nav-img ul li#nav-submenu-arts-culture > a { background-image: url("../img/things-to-do/arts-culture-1.jpg"); }
	.nav-img ul li#nav-submenu-attractions-beaches-museums-parks > a { background-image: url("../img/things-to-do/attractions-beaches-museums-parks.jpg"); }
	.nav-img ul li#nav-submenu-bicycle > a { background-image: url("../img/things-to-do/bicycle.jpg"); }
	.nav-img ul li#nav-submenu-boating > a { background-image: url("../img/things-to-do/boating.jpg"); }
	.nav-img ul li#nav-submenu-diving > a { background-image: url("../img/things-to-do/diving.jpg"); }
	.nav-img ul li#nav-submenu-dolphin-encounters > a { background-image: url("../img/things-to-do/dolphin-encounters.jpg"); }
	.nav-img ul li#nav-submenu-eco-tours > a { background-image: url("../img/things-to-do/eco-tours.jpg"); }
	.nav-img ul li#nav-submenu-kids > a { background-image: url("../img/things-to-do/kids.jpg"); }
	.nav-img ul li#nav-submenu-fishing > a { background-image: url("../img/things-to-do/fishing.jpg"); }
	.nav-img ul li#nav-submenu-galleries-photography > a { background-image: url("../img/things-to-do/galleries-photography.jpg"); }
	.nav-img ul li#nav-submenu-golf > a { background-image: url("../img/things-to-do/golf.jpg"); }
	.nav-img ul li#nav-submenu-marinas > a { background-image: url("../img/things-to-do/marinas.jpg"); }
	.nav-img ul li#nav-submenu-restaurants-bars > a { background-image: url("../img/things-to-do/restaurants-bars.jpg"); }
	.nav-img ul li#nav-submenu-shopping > a { background-image: url("../img/things-to-do/shopping-1.jpg"); }
	.nav-img ul li#nav-submenu-watersports > a { background-image: url("../img/things-to-do/watersports1.jpg"); }
	.nav-img ul li#nav-submenu-spas-health-wellness > a { background-image: url("../img/things-to-do/spas-health-wellness.jpg"); }
	.nav-img ul li#nav-submenu-sunset-cruises > a { background-image: url("../img/things-to-do/sunset-cruises.jpg"); }
	.nav-img ul li#nav-submenu-theatre > a { background-image: url("../img/things-to-do/theatre-1.jpg"); }
	.nav-img ul li#nav-submenu-watersports > a { background-image: url("../img/things-to-do/watersports.jpg"); }
	.nav-img ul li#nav-submenu-weddings > a { background-image: url("../img/things-to-do/weddings.jpg"); }
	.nav-img ul li#nav-submenu-calendar-of-events > a { background-image: url("../img/things-to-do/calendar-of-events.jpg"); }


	#front-welcome article {
		padding: 1.5em;
	}

	footer {
/*		padding: 2em 4em 4em; */
		padding: 0 0 4em;
	}
	footer .t-content-three {
		flex: 0 0 33.33%;
/*		border-top: 1px solid #e6eef6; */
/*		margin-top: 1.5em;
		padding-top: 1.5em; */
	}
	footer .t-content-three.footer-bottom {
		padding-top: .5em;
	}

	#footer-logo { order: 2; }
	#footer-social { order: 1; padding-bottom: 0; }
	#footer-signup { order: 3; }
	#footer-marketing { order: 6; }
	#footer-contact { order: 4; }
	#footer-copyright { order: 5; }

	.footer-social ul {
		width: 7em;
		margin: 0 auto .5em;
		font-size: 2em;
	}

	#footer-share {
		margin: 0;
	}

}
@media only screen and (min-width: 1200px) {
	.wrapper {
		font-size: 1em;
	}
	.header-tools .header-book a {
    	border: 4px solid #fff;
    	border-radius: 4px;
    	padding: 0.125em 0.5em;
		font-size: 1.25em;
		line-height: 1em;
	}
	nav > ul > li#nav-plan {
		margin-right: 13em;
	}
	.section-diving nav#section-nav > ul > li > a,
	.section-fishing nav#section-nav > ul > li > a,
	.section-weddings nav#section-nav > ul > li > a {
		/* font-size: 1.5rem; */
	}
}
@media only screen and (min-width: 1366px) {
	.wrapper {
		font-size: 1.1em;
	}
	.header-social,
	.header-tools {
		width: 45vw;
	}
	.header-tools ul li {
		margin-left: 1.25em;
	}
	.nav-img .nav-submenu-hed,
	.nav-cols ul li {
		font-size: 1.25em;
		line-height: 1.25em;
	}
	footer p {
		font-size: .625em;
		line-height: 1.5em;
	}
}
@media only screen and (min-width: 1600px) {
	.wrapper {
		font-size: 1.2em;
	}
	.header-social,
	.header-tools {
		/* width: 39.5vw; */
	}
}

@media only screen and (min-width: 1760px) {
	.wrapper {
		font-size: 1.3em;
	}
}

@media only screen and (min-width: 1920px) {
	.wrapper {
		font-size: 1.4em;
	}
}

/* ========== */

.material-scrolltop {
	cursor: pointer;
	border-radius: 0;
	box-shadow: 0 0 .5em rgba(0,0,0,0.25);
	background-image: unset;
	background-color: #007ccd;
	/* bottom: 0; */
	z-index: 9999;
}
.material-scrolltop:hover,
.material-scrolltop:focus {
	box-shadow: 0 0 .5em rgba(0,0,0,0.25);
	background-color: #ff8332;
}

/* ========== */

.slick-dots {
    position: absolute;
    bottom: 10px;
    width: 100%;
    padding: 0;
    margin: 0 !important;
    list-style: none;
    text-align: center;
	z-index: 9999;
	background-color: transparent !important;
}
.slick-dots li {
    position: relative;
    display: inline-block;
    width: 30px;
    height: 30px;
    margin: 0;
    padding: 0;
    cursor: pointer;
}
.slick-dots li button {
    font-size: 0;
    line-height: 0;
    display: block;
    width: 30px;
    height: 30px;
    padding: 0;
    cursor: pointer;
    color: transparent;
    border: 0;
    outline: none;
    background: transparent;
}
.slick-dots li button:hover,
.slick-dots li button:focus {
    outline: none;
}
.slick-dots li button:hover:before,
.slick-dots li button:focus:before {
    opacity: 1;
	color: #fff;
}
.slick-dots li button:before {
    font-size: 16px;
    line-height: 1em;
    position: absolute;
    top: 0;
    left: 0;
    width: 30px;
    height: 30px;
    content: '•';
    text-align: center;
    opacity: .5;
    color: rgba(255,255,255,0.25);
	-webkit-text-stroke: 2px #fff;
	text-shadow: 0 0 10px #000;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
.slick-dots li.slick-active button:before {
    opacity: .75;
    color: #fff;
}

.slick-prev {
	left: 1.5rem;
}
.slick-next {
	right: 1.5rem;
}

/* ========== */

.signup-form.tdc-newsletter-form {
	text-align: center;
	margin: 0 auto;
	font-size: 1em;
	position: relative;
	max-width: 640px;
}
.signup-form.tdc-newsletter-form > div {
/*	display: block;
	width: 100%;
	height: 1px;
	background-color: #fff;
	position: absolute;
	bottom: 0;
	left: 0; */
}

.signup-form.tdc-newsletter-form form div {
	display: inline;
}
.signup-form.tdc-newsletter-form label {
	display: block;
	text-align: left;
}
.signup-form.tdc-newsletter-form input {
	margin: .5em 0 1em;
	padding: .25em .75em;
	color: #000;
	background-color: #fff;
	border-radius: 3px;
	font-family: Lato;
	font-size: .75em;
	line-height: 1.5em;
	border: none;
}
.signup-form.tdc-newsletter-form input[type=text] {
	width: 10em;
	border: 1px solid #007dd3;
}
.signup-form.tdc-newsletter-form input#SubmitButton {
	background-color: #007dd3;
	color: #fff;
	border: 1px solid #007dd3;
}
.signup-form.tdc-newsletter-form input#SubmitButton:hover {
	cursor: pointer;
}
.signup-form.tdc-newsletter-form ::-webkit-input-placeholder {
	color: #6cbeed;
}
.signup-form.tdc-newsletter-form :-ms-input-placeholder {
	color: #6cbeed;
}
.signup-form.tdc-newsletter-form ::placeholder {
	color: #6cbeed;
}
.signup-form.tdc-newsletter-form p a {
	text-decoration: none;
}
.signup-form.tdc-newsletter-form p.sign-up-for {
/*	margin-bottom: 0;
	font-size: .75em;
	line-height: 1.5em;
	font-weight: bold;
	text-transform: uppercase; */

	font-family: "Big Shoulders Display";
	font-size: 1.25em !important;
	line-height: 1em !important;
	margin: 0 auto .25em;
	font-weight: 400;
	color: #007dd3;
}
.signup-form.tdc-newsletter-form p.privacy {
	font-size: .75em;
	line-height: 1.25em;
	margin: 0 auto 1.5em;
	padding: 0;
	text-transform: uppercase;
}

/* ========== */

#google_translate_element {
	display: inline-block !important;
}
.goog-te-gadget {
	font-family: "Big Shoulders Display" !important;
	font-size: 1em !important;
	line-height: 1em !important;
	color: #fff !important;
	/* margin-top: .625em; */
}
.goog-te-gadget-simple {
	background-color: transparent !important;
	border: none !important;
	padding: 0 !important;
	font-size: 1em !important;
}
.goog-te-gadget-simple .goog-te-gadget-icon {
	display: none !important;
}
.goog-te-menu-value,
.goog-te-menu-value img {
	margin-left: 0 !important;
	margin-right: 0 !important;

}
.goog-te-menu-value img {
	vertical-align: text-bottom !important;
}
.goog-te-gadget-simple .goog-te-menu-value span {
	border-left: none !important;
	color: #fff !important;
}
.goog-te-gadget-simple .goog-te-menu-value span:first-of-type,
.goog-te-gadget-simple .goog-te-menu-value span:last-of-type {
	display: none;
}
.goog-te-gadget-simple .goog-te-menu-value span:nth-of-type(2):before {
	content: "Languages";
}
#google_translate_element_m .goog-te-gadget {
	/* margin-top: 2.5em; */
}
#google_translate_element_m .goog-te-gadget select {
	font-family: Lato !important;	
}
#google_translate_element_m .goog-te-gadget span {
	display: block;
}

/* ========== */





/* ==========================================================================
   Helper classes
   ========================================================================== */

/*
 * Hide visually and from screen readers
 */

.hidden,
[hidden] {
  display: none !important;
}

/*
 * Hide only visually, but have it available for screen readers:
 * https://snook.ca/archives/html_and_css/hiding-content-for-accessibility
 *
 * 1. For long content, line feeds are not interpreted as spaces and small width
 *    causes content to wrap 1 word per line:
 *    https://medium.com/@jessebeach/beware-smushed-off-screen-accessible-text-5952a4c2cbfe
 */

.tr,
.icon-label,
.visuallyhidden,
.sr-only {
  border: 0;
  clip: rect(0, 0, 0, 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  white-space: nowrap;
  width: 1px;
  /* 1 */
}

/*
 * Extends the .sr-only class to allow the element
 * to be focusable when navigated to via the keyboard:
 * https://www.drupal.org/node/897638
 */

.sr-only.focusable:active,
.sr-only.focusable:focus {
  clip: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  position: static;
  white-space: inherit;
  width: auto;
}

/*
 * Hide visually and from screen readers, but maintain layout
 */

.invisible {
  visibility: hidden;
}

/*
 * Clearfix: contain floats
 *
 * For modern browsers
 * 1. The space content is one way to avoid an Opera bug when the
 *    `contenteditable` attribute is included anywhere else in the document.
 *    Otherwise it causes space to appear at the top and bottom of elements
 *    that receive the `clearfix` class.
 * 2. The use of `table` rather than `block` is only necessary if using
 *    `:before` to contain the top-margins of child elements.
 */

:not(.t-crowdriff) .clearfix::before,
:not(.t-crowdriff) .clearfix::after {
	content: unset !important;
	display: unset !important;
	clear: unset !important;
}

/*
.clearfix::before,
.clearfix::after {
  content: " ";
  display: table;
}

.clearfix::after {
  clear: both;
}
*/

/* ==========================================================================
   EXAMPLE Media Queries for Responsive Design.
   These examples override the primary ('mobile first') styles.
   Modify as content requires.
   ========================================================================== */

@media only screen and (min-width: 35em) {
  /* Style adjustments for viewports that meet the condition */
}

@media print,
  (-webkit-min-device-pixel-ratio: 1.25),
  (min-resolution: 1.25dppx),
  (min-resolution: 120dpi) {
  /* Style adjustments for high resolution devices */
}

/* ==========================================================================
   Print styles.
   Inlined to avoid the additional HTTP request:
   https://www.phpied.com/delay-loading-your-print-css/
   ========================================================================== */

@media print {
  *,
  *::before,
  *::after {
    background: #fff !important;
    color: #000 !important;
    /* Black prints faster */
    box-shadow: none !important;
    text-shadow: none !important;
  }

  a,
  a:visited {
    text-decoration: underline;
  }

  a[href]::after {
    content: " (" attr(href) ")";
  }

  abbr[title]::after {
    content: " (" attr(title) ")";
  }

  /*
   * Don't show links that are fragment identifiers,
   * or use the `javascript:` pseudo protocol
   */
  a[href^="#"]::after,
  a[href^="javascript:"]::after {
    content: "";
  }

  pre {
    white-space: pre-wrap !important;
  }

  pre,
  blockquote {
    border: 1px solid #999;
    page-break-inside: avoid;
  }

  /*
   * Printing Tables:
   * https://web.archive.org/web/20180815150934/http://css-discuss.incutio.com/wiki/Printing_Tables
   */
  thead {
    display: table-header-group;
  }

  tr,
  img {
    page-break-inside: avoid;
  }

  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3;
  }

  h2,
  h3 {
    page-break-after: avoid;
  }
}

