@font-face
{
	font-family: AvenirBold;
	src: url("/inc/fonts/tsgfontbold.ttf");
	font-weight: bold;
}

html, body
{
	margin: 0;
	height: 100%;
	font-family: "Avenir", sans-serif;


}

@media all and (max-width: 800px)
{
	.d-d
	{
		display: none !important;
	}
}

@media all and (min-width: 801px)
{
	.d-m
	{
		display: none !important;
	}
}

/*
* GLOBAL CLASSES
*/

.w300 {font-weight: 300}
.w400 {font-weight: 400}
.w700 {font-weight: 700}
.w900 {font-weight: 900}

.f10  {font-size: 10px}
.f20  {font-size: 20px}
.f25  {font-size: 25px}
.f35  {font-size: 35px}
.f40  {font-size: 40px}
.f50  {font-size: 50px}
.f75  {font-size: 75px}
.f100 {font-size: 100px}

.center {text-align: center}

.c-green{color: #00853d}
.c-lime {color: #bfd526}
.c-teal {color: #007f7b}
.c-cyan {color: #5ec6c7}
.c-white{color: white;}

.t-s1   {text-shadow: 2px 2px 2px rgba(0, 0, 0, 0.4)}

.inner
{
	width: 100%;
	max-width: 1000px;
	margin: auto;
	text-align: left;

	padding: 0 10px;
	box-sizing: border-box;
}

/*
* Dynamic Backgrounds
*/

.bgi-m
{
	position: fixed;
	left: 0;

	background-size: cover;
	background-position: center center;
	width: 100%;
	z-index: -1;
}

.full-page
{
	width: 100%;
	min-height: 100%;
}

.header
{
	position: fixed;
	top: 0px;
	left: 0;

	width: 100%;
	padding-top: 65px;
	padding-left: 0px;
	padding-right: 0px;
	padding-bottom: 0;
	box-sizing: border-box;
/* 	border-bottom: 3px solid #007f7b; */

	z-index: 999;

	background-color: rgba(0, 0, 0, 0);
/* 	background-color: rgb(93,194,196); */
	text-align: center;

	/* overflow: hidden; */

	-webkit-transition-duration: 0.2s;
	-moz-transition-duration: 0.2s;
	-ms-transition-duration: 0.2s;
	-o-transition-duration: 0.2s;
	transition-duration: 0.2s;
}

.header .upper
{
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	padding: 0 0;
/* 	background: rgba(0, 0, 0, 0.25); */
}

.header.docked .upper
{
/* 	background: rgba(255, 255, 255, 0.5); */
}

.header .upper .inner
{
	text-align: right;
}

.header .upper ul
{
	padding: 0;
	margin: 0;
	list-style: none;
}

.header .upper ul li
{
	display: inline-block;
	vertical-align: middle;
}

.header .upper ul li a
{
	display: inline-block;
	padding: 4px 5px;
	font-size: 12px;
}
/*
.header .upper ul li:hover a
{
	color: #bfd526;
}
*/
.header.docked
{
	padding-top: 39px;

	background-color: #f1f1f1;
}

.header .left
{
	display: inline-block;

	vertical-align: top;
}

.header .left div
{
	display: inline-block;
	vertical-align: middle;
}

.header .left div img
{
	height: 32px;
}

.header .left div.logo
{
	vertical-align: bottom;
}

.header:not(.docked) .left div.logo.docked
{
	display: none;
}

.header.docked .left div.logo
{
	display: none;
}

.header.docked .left div.logo.docked
{
	display: inline-block;
}

.header .left div.title
{
	font-size: 30px;
	margin-left: 5px;
	font-family: AvenirBold;
	color:white;
}

.header.dark .left div.title
{
	color: #333;
}

.header.docked .left div.title
{
	color: black;
}

.header a,
.header a:link,
.header a:visited,
.header .desktop.login-bar p
{
	text-decoration: none;
	color: white;
}

.header.dark a,
.header.dark a:link,
.header.dark a:visited
{
	color: #333;
}

.header.docked a,
.header.docked a:link,
.header.docked a:visited
{
	color: #222;
}

.header .right
{
	display: inline-block;
	vertical-align: top;
	float: right;
}

.header .right ul
{
	list-style: none;
	margin: 0;
	padding: 0;
}

.header .right ul li
{
	font-size: 18px;
	display: inline-block;

	padding-bottom: 5px;
	border-bottom: 0;

	position: relative;
}

.header .right ul li.active
{
	padding-bottom: 0px;
	border-bottom: 5px solid #95bf38;
}

.header .right ul li:not(.nav-button):after
{
	content: "";
	position: absolute;
	width: 100%;
	height: 20px;

/* 	background-image: url(/img/fx/nav-glow.png); */
	background-size: 100% 100%;

	bottom: -100%;

	-webkit-transition-duration: 0.2s;
	-moz-transition-duration: 0.2s;
	-ms-transition-duration: 0.2s;
	-o-transition-duration: 0.2s;
	transition-duration: 0.2s;

	z-index: -1;
}

.header .right ul li:not(.nav-button):hover::after
{
	bottom: 0;
}

ul li.nav-button
{
	padding: 4px 15px;
	border-radius: 16px;

	background: #95bf38;
/* 	background: #00853d; */
	font-weight: 400;

	-webkit-transition-duration: 0.2s;
	-moz-transition-duration: 0.2s;
	-ms-transition-duration: 0.2s;
	-o-transition-duration: 0.2s;
	transition-duration: 0.2s;
}

/*
ul li.nav-button:hover
{
	background: #799c2d;
}
*/
.header.docked .right ul li.nav-button a
{
	color:  rgba(13,43,56);
}

.header .right ul li:not(.nav-button) a
{
	display: block;
	padding: 9px 10px;
	border-radius: 8px;
}

.m-lines
{
	position: relative;
	width: 40px;
	height: 40px;

	overflow: hidden;
}

.header .m-lines .m-line
{
	position: absolute;
	left: 5px;

	height: 4px;
	width: 30px;
	background: black;

	-webkit-transition-duration: 0.2s;
	-moz-transition-duration: 0.2s;
	-ms-transition-duration: 0.2s;
	-o-transition-duration: 0.2s;
	transition-duration: 0.2s;
}

.white
{
	background: white;
}

.header.docked .m-lines .m-line
{
	position: absolute;
	left: 5px;

	height: 4px;
	width: 30px;
	background: black;

	-webkit-transition-duration: 0.2s;
	-moz-transition-duration: 0.2s;
	-ms-transition-duration: 0.2s;
	-o-transition-duration: 0.2s;
	transition-duration: 0.2s;
}

.m-lines .m-line.line-top
{
	top: 5px;
}

.m-lines .m-line.line-middle
{
	top: 13px;
}

.m-lines .m-line.line-bottom
{
	top: 21px;
}

.m-lines.active .m-line.line-top
{
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-o-transform: rotate(45deg);
	transform: rotate(45deg);

	top: 16px;
	height: 3px;
}

.m-lines.active .m-line.line-middle
{
	left: 100%;
	height: 3px;
}

.m-lines.active .m-line.line-bottom
{
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	-o-transform: rotate(-45deg);
	transform: rotate(-45deg);

	top: 16px;
	height: 3px;
}

.m-nav
{
	position: fixed;
	background: #004b48;

	width: 100%;
	height: 100%;

	height: 0;
	overflow: hidden;

	-webkit-transition-duration: 0.2s;
	-moz-transition-duration: 0.2s;
	-ms-transition-duration: 0.2s;
	-o-transition-duration: 0.2s;
	transition-duration: 0.2s;

	z-index: 9;

	text-align: center;
}

.m-nav.active
{
	height: 100%;
}

.m-nav ul.m-top-nav
{
	padding: 0;
	margin: 20px 0 0;
	list-style: none;
}

.m-nav ul.m-top-nav li a
{
	display: inline-block;
	padding: 8px;
	width: 100%;

	font-size: 18px;
	font-weight: 300;
	color: white;
	text-decoration: none;

	box-sizing: border-box;
}

.m-nav ul.m-top-nav li:not(.nav-button) a:hover
{
	opacity: 0.5;
}

.m-nav ul li.nav-button
{
	margin-top: 10px;
	padding: 0;
	display: inline-block;
}

.m-nav ul li.nav-button a
{
	width: auto;
	padding: 6px 20px;
	color: rgba(13,43,56);
}


/*
* ANIMATORS
*/

div.animator
{
	position: relative;
}

p#animator-p1
{
	position: absolute;
	top: 50%;
	left: 0;

	width: 100%;
	margin: 0;
	margin-top: -100px;

	color: white;
	line-height: 100px;
}

p#animator-p1-m
{
	position: absolute;
	top: 50%;
	left: 0;

	width: 100%;
	margin: 0;
	margin-top: -50px;

	color: white;
	line-height: 50px;
}

#connecting-block
{
	background: #f1f1f1;
	color: #333;

	padding: 15px 0;
}

#award-block
{
	position: absolute;
	top: 50%;
	left: 0;

	text-align: center;

	width: 100%;
	margin: 0;
	margin-top: -100px;

	color: white;
	background: rgba(0, 0, 0, 0.65);
}

#award-block img
{
	height: 100px;
}

#award-block h1
{
	font-size: 70px;
	margin: 0;
}

#new-tours-block
{
	background: #f1f1f1;
	color: #333;

	padding: 15px 0;
	text-align: center;
}

#new-tours-block .inner
{
	text-align: center;
}

#new-tours-block h1.title
{
	font-size: 30px;
	font-weight: 900;
	margin:0 0;
}

#new-tours-block h2.subtitle
{
	margin: 0;
}

#new-tours-block hr
{
	width: 700px;
	max-width: 100%;
}


#download-cta-block
{
	position: absolute;
	top: 50%;
	left: 0;

	width: 100%;

	margin-top: -145px;
	text-align: center;
	color: white;
}

#download-cta-block p
{
	margin: 0;
}

#download-cta-block .button-large
{
	margin-top: 15px;
}

.button-large
{
	display: inline-block;
	padding: 10px 20px;
/* 	background: #95bf38; */
	background: #00853d;
	color: white;
	text-decoration: none;

	font-size: 20px;
	border-radius: 24px;
	border: 1px solid #8b9b1b;
}

.button-large:hover
{
	background: #799c2d;
}

/*
/*
* FOOTER
*/

/*
div#footer
{
	background: #222;
	color: white;
	padding: 15px 0;
}

div#footer div.inner
{
	text-align: center;
}

div#footer div.left
{
	display: inline-block;
}

div#footer div.left div.logo
{
	vertical-align: bottom;
}

div#footer div.left div
{
	display: inline-block;
}

div#footer div.left div img
{
	height: 32px;
}

div#footer div.left div.title
{
	font-size: 30px;
	margin-left: 5px;
	font-family: AvenirBold;
}

div#footer div.right
{

}

div#footer div.right ul
{
	list-style: none;
	margin: 0;
	padding: 0;
}

div#footer div.right ul li
{
	display: inline-block;
}

div#footer div.right ul li a
{
	display: block;
	padding: 12px 6px;
	color: white;
	text-decoration: none;

	font-size: 12px;

}

div#sub-footer
{
	background: #0f0f0f;
	color: #bbb;
	font-size: 10px;
	padding: 15px 0;
}

div#sub-footer .inner
{
	text-align: center;
}

#form {
	border: 3px solid #f2f2f2;
}

/* Full-width inputs */
/*
input[type=text], input[type=password] {
	width: 100%;
	padding: 12px 20px;
	margin: 8px 0;
	display: inline-block;
	border: 1px solid #ccc;
	box-sizing: border-box;
}

.modal-buttons
{
	background-color: #00853d;
	color: white;
	padding: 14px 20px;
	margin: 8px 0;
	border: none;
	cursor: pointer;
	width: 100%;
}

.modal-buttons:hover{
	background-color: #005225;
}

.logo-container
{
	text-align: center;

}

img.logo-modal
{

}

.login-container {
	padding: 16px;
}

.modal {
	display: none;
	position: fixed;
	text-align: center;
	z-index: 1000;
	left: 0;
	top: 0;
	width: 30%;
	height: 60%;
	overflow: auto;
	background-color: #f2f2f2;
	padding-top: 60px;
}

.login-content
{
	background-color: #f2f2f2;
	margin: 5px auto;
	border: 1px solid #888;
	width: 80%
}

.close {
	position: absolute;
	right: 25px;
	top: 0;
	color: #00853d;
	font-size: 35px;
	font-weight: lighter;
}

.close:hover,
.close:focus {
	color: #005225;
	cursor: pointer;
}

*/

#app .inner
{
    text-align: center;
}

.animate {
	-webkit-animation: animatezoom 0.6s;
	animation: animatezoom 0.6s;
}

@-webkit-keyframes animatezoom {
    from {-webkit-transform: scale(0)}
    to {-webkit-transform: scale(1)}
}

@keyframes animatezoom {
    from {transform: scale(0)}
    to {transform: scale(1)}
}

.col-3,
.col-2
{
    font-size: 0;
}

.col-3 .item
{
    display: inline-block;
    width: calc(100% / 3);
    vertical-align: top;

    box-sizing: border-box;
    padding: 15px;
}

.col-2 .item
{
	display: inline-block;
	width: calc(100%/2);
	vertical-align: top;
	box-sizing: border-box;
	padding: 15px;

}

.col-3 .item.quote,
.col-2 .item.quote
{
    background-image: url(https://3.travelstorys.com/img/quote.png);
    background-position: left center;
    background-repeat: no-repeat;
    background-size: 120px;
    color: white;

    height: 210px;
}

.col-3 .item.quote p,
.col-2 .item.quote p
{
    font-size: 15px;

    text-align: justify;
		font-style: italic;
}

.col-3 .item.quote h1
{
    font-size: 20px;
    font-weight: 300;
    color: #6b5f88;

    text-align: right;
}

.col-2 .item.quote h1
{
	font-size: 16px;
	font-weight: 300;
	color: white;

	text-align: right;
}

@media all and (max-width: 760px)
{
    .tour-cards .tcard
    {
        display: block;
        width: 100%;
        margin: 15px auto;
        max-width: 400px;
    }

    .col-3 .item,
		.col-2 .item
    {
        width: 100%;
    }

    .col-3 .item.quote,
		.col-2 .item.quote
    {
        height: auto;
    }
}
