/* CSS reset */
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,p,blockquote,th,td { 
	margin:0;
	padding:0;
}
html,body {
	margin:0;
	padding:0;
	height: 100%;
	width:100%;
}
table {
	border-collapse:collapse;
	border-spacing:0;
}
fieldset,img { 
	border:0;
}
address,caption,cite,code,dfn,th,var {
	font-style:normal;
	font-weight:normal;
}
ol,ul {
	list-style:none;
}
caption,th {
	text-align:left;
}
h1,h2,h3,h4,h5,h6 {
	font-size:100%;
	font-weight:normal;
}
q:before,q:after {
	content:'';
}
abbr,acronym { border:0;
}
section, header{
	display: block;
}

/* Map */
.mapwrapper {
  margin: 0 auto;
  width: 100%;
  height: 100%;
}

#viewport, #viewport2 {
    width: 100%;
    height: 100%;
    overflow: hidden;
}

.mapwrapper {
    position: relative;
}

.map-control {
    position: absolute;
    bottom: 30px;
    right: 30px;
    height: 65px;
    width: 30px;
}

.map-control a {
    height: 18px;
    width: 18px;
    display: block;
    text-indent: -999em;
    position: absolute;
    outline: none;
}

.map-control a:hover {
    background: #535353;
    opacity: .7;
    filter: alpha(opacity=70);
}

.map-control a.info {
    left: 65px;
    bottom: 30px;
	height: 30px;
    width: 30px;
	background: url(../images/info-button.png) center center no-repeat;
	position: absolute;
}

.map-control #box-info {
    width: 190px;
	height: auto;
	visibility: hidden;
	bottom: 80px;
	background-color: #fff;
	-webkit-transition: all 0.3s 0.2s ease-in-out;
	-moz-transition: all 0.3s 0.2s ease-in-out;
	-o-transition: all 0.3s 0.2s ease-in-out;
	-ms-transition: all 0.3s 0.2s ease-in-out;
	transition: all 0.3s 0.2s ease-in-out;
	position: absolute;
	left: -200px;
	padding: 12px;
	opacity: 0;
}

.map-control #box-info:target  {
    visibility: visible;
	opacity: 1;
	bottom: 40px;;
}

.map-control a.zoom {
    right: 0px;
    top: 0px;
    height: 30px;
    width: 30px;
	background: url(../images/zoom-button.png) center center no-repeat;
	padding: 0;
	
}

.map-control a.back {
    right: 0px;
    top: 35px;
    height: 30px;
    width: 30px;
	background: url(../images/back-button.png) center center no-repeat;
	padding: 0;
}

div.info {
    right: 65px;
    bottom: 30px;
	height: 30px;
    width: 30px;
	background: url(../images/info-button.png) center center no-repeat;
	position: absolute;
	cursor: pointer;
	font-family: source-code-pro, sans-serif;

}


div.info span {
    width: 210px;
	height: auto;
	visibility: hidden;
	bottom: 80px;
	background-color: #26A9E0;
	-webkit-transition: all 0.3s 0.2s ease-in-out;
	-moz-transition: all 0.3s 0.2s ease-in-out;
	-o-transition: all 0.3s 0.2s ease-in-out;
	-ms-transition: all 0.3s 0.2s ease-in-out;
	transition: all 0.3s 0.2s ease-in-out;
	position: absolute;
	left: -208px;
	padding: 12px;
	opacity: 0;
	border-radius: 2px;
	font-size: 12px;
	line-height: 16px;
	color: #fff;
	
	
}

div.info:hover span {
    visibility: visible;
	opacity: 1;
	bottom: 40px;;
}

div.info span a {
	color: #fff !important;
	text-decoration: none;
	background-color: #1b75ba;
	padding: 1px;
	
}

div.info span:before,
div.info span:after {
	
	content: '';
	position: absolute;
	bottom: -5px;
	right: 7px;
	width: 0;
	height: 0;
	border-left: 8px solid transparent;
	border-right: 8px solid transparent;
	
}

div.info span:after {
	bottom: -5px;
	margin-left: -20px;
	border-top: 8px solid #26A9E0;
}


.share {
	position: absolute;
	top: 30px;
	right: 30px;
	height: 30px;
	width: 83px;
}


.share div.share-info {
	height: 30px;
    width: 83px;
	background: url(../images/share-button.png) center center no-repeat;
	cursor: pointer;

}


.share div.share-info div.box {
    width: 110px;
	height: auto;
	visibility: hidden;
	top: 80px;
	background-color: #333333;
	-webkit-transition: all 0.3s 0.2s ease-in-out;
	-moz-transition: all 0.3s 0.2s ease-in-out;
	-o-transition: all 0.3s 0.2s ease-in-out;
	-ms-transition: all 0.3s 0.2s ease-in-out;
	transition: all 0.3s 0.2s ease-in-out;
	position: absolute;
	left: -50px;
	padding: 12px;
	opacity: 0;
	border-radius: 2px;
	font-size: 12px;
	line-height: 16px;
	
	
}

.share div.share-info:hover div.box {
    visibility: visible;
	opacity: 1;
	top: 40px;;
}

.share div.share-info div.box a {
	color: #333 !important;
	font-family: source-code-pro, sans-serif;
	background: none !important;
	
}


.share div.share-info div.box:before,
.share div.share-info div.box:after {
	
	content: '';
	position: absolute;
	top: -5px;
	right: 7px;
	width: 0;
	height: 0;
	border-left: 8px solid transparent;
	border-right: 8px solid transparent;
	
}

.share div.share-info div.box:after {
	top: -5px;
	margin-left: -20px;
	border-bottom: 8px solid #333333;
}

.google-map{
	width: 100px;
	height: 90px;
	position: absolute;
	bottom: 30px;
	left: 30px;
}
.google-map a{
	background: none;
	padding: 0;
}


/* Typography */
body, html {
	margin:0;
	padding:0;
	height: 100%;
	text-align: left;
	color:#fff;
	}

a, p a {
	text-decoration: none;
	background-color: #1b75ba;
	color: #fff;
	padding: 2px;
	}

p, span {
	font-family: 'source-code-pro',sans-serif;
	font-weight: 500;	
	font-size: 12px;
	margin:0.5em 0;
	}

h1, h2, h3, h4, h5, h6 {
	margin:0.6em 0;
	font-family: "museo-sans",sans-serif;
	}

h3 {
	font-size: 24px;
	padding: 0;
	text-transform: uppercase;
	margin: 10px 0 10px 0;
	line-height: 26px;
	letter-spacing: 1px;
	}
h4 {
	font-size:20px;
	}

/* Map Pins */

.tt-wrapper {
	list-style:none;
	position:absolute;
}
.tt-wrapper div {
	display: block;
	outline: none;
	background-color: none;
	text-indent: -9000px;
	position: relative;
	opacity: 1;
	width: 100%;
	height: 100%;
	text-decoration: none !important;

}
.tt-wrapper  div.coastal span {
    background: #26A9E0 url(../images/cc-header.gif) no-repeat top center;

}
.tt-wrapper div.mountain span {
    background: #26A9E0 url(../images/mc-header.gif) no-repeat top center;

}
.tt-wrapper div.dyk span {
    background: #26A9E0 url(../images/dyk-header.gif) no-repeat top center;

}
.tt-wrapper div span{
	width: 226px;
	height: auto;
	line-height: 18px;
	padding: 60px 12px 24px 12px;
	left: 50%;
	margin-left: -130px;
	text-decoration: none;
	text-indent: 0px;
	position: absolute;
	cursor:auto;
	bottom: 180%;
	opacity: 0;
	visibility:hidden;
	box-shadow: 1px 1px 2px rgba(0,0,0,0.1);
	-webkit-transition: all 0.3s 0.2s ease-in-out;
	-moz-transition: all 0.3s 0.2s ease-in-out;
	-o-transition: all 0.3s 0.2s ease-in-out;
	-ms-transition: all 0.3s 0.2s ease-in-out;
	transition: all 0.3s 0.2s ease-in-out;
}
.tt-wrapper div span strong{
	
	font-family: 'source-code-pro',sans-serif;
	font-weight: 900;	
	
}

.tt-wrapper div.bottom span{
	
	bottom: -470px;
	
}

.tt-wrapper div.bottom-gay span{
	
	bottom: -350px;
	
}

.tt-wrapper div.bottom-bjorn span{
	
	bottom: -285px;
	
}



.tt-wrapper div span p{
	padding: 0 !important;
	text-decoration: none;
}
  
   ul.degrees {
	padding: 0 0 10px 0 !important; 
  } 
  
  ul.degrees li {
	list-style: none;
	padding: 0 0 0 20px;
	background: url(../images/degrees.png) no-repeat center left; 
	margin: 0;
	line-height: 15px;
	font-size: 15px;
	font-weight: 900;
	font-family: 'source-code-pro',sans-serif;
	
  }
  
.tt-wrapper div span:before,
.tt-wrapper div span:after{
	content: '';
	position: absolute;
	bottom: -24px;
	left: 50%;
	margin-left: -9px;
	width: 0;
	height: 0;
	border-left: 24px solid transparent;
	border-right: 24px solid transparent;
}
.tt-wrapper div span:after{
	bottom: -24px;
	margin-left: -20px;
	border-top: 24px solid #26A9E0;
}

.tt-wrapper div:hover {
	cursor: pointer;
}
.tt-wrapper div:hover span{
	opacity: 1;
	bottom: 130%;
	z-index:99999;
	visibility:visible;
}
.tt-wrapper div.bottom:hover span{
	opacity: 1;
	bottom: -430px;
}

.tt-wrapper div.bottom-gay:hover span{
	opacity: 1;
	bottom: -310px;
}

.tt-wrapper div.bottom-bjorn:hover span{
	opacity: 1;
	bottom: -245px;
}

.tt-wrapper div.bottom span:before,
.tt-wrapper div.bottom span:after
{
	content: '';
	position: absolute;
	top: -24px;
	left: 50%;
	margin-left: -9px;
	width: 0;
	height: 0;
	border-left: 24px solid transparent;
	border-right: 24px solid transparent;
}
.tt-wrapper div.bottom span:after{
	top: -24px;
	margin-left: -20px;
	border-bottom: 24px solid #1b75ba;
	border-top: none;
}

.shayba {
	width: 7%;
	height: 3.5%;
	top: 83%; 
	left: 32.75%;

}

.bolshoy {
	width: 8.3%;
	height: 4%;
	top: 77.5%;	
	left: 26%;

}
.fisht {
	width: 8.3%;
	height: 4%;
	top: 77.5%;	
	left: 38%;

}
.medal {
	width: 12%;
	height: 4%;
	top: 72%;	
	left: 30%;
}

.iceberg {
	width: 8%;
	height: 3%;
	top: 67%;	
	left: 38%;
}

.adler {
	width: 9%;
	height: 3%;
	top: 63%;	
	left: 31.5%;
}

.icecube {
	width: 8%;
	height: 3%;
	top: 67%;	
	left: 25.75%;
}

.village {
	width: 11%;
	height: 10%;
	top: 67%;	
	left: 10%;
	
}

.laura {
	width: 8%;
	height: 8%;
	top: 10%;	
	left: 63%;
}

.russki  {
	width: 5%;
	height: 8.5%;
	top: 20%;	
	left: 42.5%;
}

.sanki  {
	width: 6%;
	height: 7%;
	top: 30%;	
	left: 48.5%;
}
.rosa  {
	width: 6%;
	height: 8%;
	top: 25%;	
	left: 57%;
}
.alpine {
	width: 10%;
	height: 4%;
	top: 42%;	
	left: 64%;
}

.jamaicabs {
	width: 3.5%;
	height: 3%;
	top: 25%;	
	left: 53%;
}

.krasnaya {
	width: 12%;
	height: 12%;
	top: 5%;	
	left: 4%;
}

.adlercity	 {
	width: 4%;
	height: 7%;
	top: 32%;	
	left: 8%;
}

.airport	 {
	width: 9%;
	height: 7%;
	top: 35%;	
	left: 13%;
}

.bbc	 {
	width: 9%;
	height: 3.5%;
	top: 60%;	
	left: 14.5%;
}

.gay	 {
	width: 3%;
	height: 3.5%;
	top: 17%;	
	left: 82.25%;
}

.putin	 {
	width: 5%;
	height: 3.5%;
	top: 51.5%;	
	left: 2%;
}

.putin div span{
	margin-left: -70px;
	
}

.guns	 {
	width: 5%;
	height: 3.5%;
	top: 91%;	
	left: 22%;
}

.transport	 {
	width: 5%;
	height: 5%;
	top: 92%;	
	left: 68%;
}

.torch	 {
	width: 2%;
	height: 10%;
	top: 58%;	
	left: 94.5%;
}
.torch div span{
	margin-left: -200px;
	
}

.bjorn {
    height: 4%;
    left: 58%;
    top: 12%;
    width: 2%;
}

.bars	 {
	width: 1.5%;
	height: 2%;
	top: 50.5%;	
	left: 27.5%;
}

.cost	 {
	width: 2%;
	height: 2.5%;
	top: 67%;	
	left: 65%;
}

.abkhazia	 {
	width: 6%;
	height: 3.5%;
	top: 89.5%;	
	left: 83.5%;
}

.ships	{
	width: 12%;
	height: 5%;
	top: 93%;	
	left: 8.5%;
}

/* Welcome Window */
.welcome {
	position:absolute;
	z-index:9999;
	top:0;
	left:0;
	right:0;
	bottom:0;
	background: repeat center center rgba(70,70,70,0.8);
	background-size: 100% auto;
	text-align:center;
	color:#fff;
	display:none;
	height:100%;
	}
.welcome.show {
	display:block;
	}
.welcome .window {
	position:relative;
	width:600px;
	height:450px;
	top:50%;
	left:50%;
	padding:20px 40px;
	margin-top:-225px;
	margin-left:-330px;
	background-color:rgb(38,169,224);
	border:4px solid #fff;
	box-shadow: -1px -1px 0px 4px rgb(38,169,224);
	}
.welcome .clickable {
	position:absolute;
	top:0;
	left:0;
	right:0;
	bottom:0;
	}
.welcome .close {
	display:inline-block;
	position:absolute;
	top:0;
	right:0;
	width:40px;
	height:40px;
	background:url(../images/cross.gif) center center no-repeat #1b75ba;
	text-indent:-99999px;
	}
.welcome img {
	margin:30px auto 0 auto;
	max-width:100%;
	height:auto;
	}

.mobile,
.mobile.show {
	display:none;
	}

/* Tablet and down */
@media (max-width: 767px) {
	
	.welcome.show {
		display:none;
		}
	.mobile,
	.mobile.show {
		display:block !important;
		}
	.mobile.show .window {
		margin:20px auto;
		width:80%;
		padding:0 5%;
		height:auto;
		top:auto;
		left:auto;
		}
	
}

@media (-webkit-min-device-pixel-ratio: 2) and (max-width: 767px) {  
    .welcome.show {
		display:none;
		}
	.mobile,
	.mobile.show {
		display:block !important;
		}
	.mobile.show .window {
		margin:20px auto;
		width:80%;
		padding:0 5%;
		height:auto;
		top:auto;
		left:auto;
		}
}

@media only screen 
and (min-device-width : 768px) 
and (max-device-width : 1024px) 
and (orientation : portrait)
and (-webkit-min-device-pixel-ratio: 2) { 
    .welcome.show {
		display:none;
		}
	.mobile,
	.mobile.show {
		display:block !important;
		}
	.mobile.show .window {
		margin:20px auto;
		width:80%;
		padding:0 5%;
		height:auto;
		top:auto;
		left:auto;
		}
}
@media only screen 
and (min-device-width : 768px) 
and (max-device-width : 1024px) 
and (orientation : landscape)
and (-webkit-min-device-pixel-ratio: 2) { 
    .welcome.show {
		display:none;
		}
	.mobile,
	.mobile.show {
		display:block !important;
		}
	.mobile.show .window {
		margin:20px auto;
		width:80%;
		padding:0 5%;
		height:auto;
		top:auto;
		left:auto;
		}
}

/* Call to action */
.cta {
	color:#fff;
	background-color:rgb(239,80,35);
	-webkit-border-radius: 18px; 
	-moz-border-radius: 18px; 
	border-radius: 18px;
	text-transform:uppercase;
	font-weight:bold;
	padding:6px 13px;
	margin-top: 15px;
	letter-spacing:1px;
	text-decoration:none;
	font-size:17px;
	-moz-box-shadow:    1px 1px 0px rgb(204,60,39);
	-webkit-box-shadow: 1px 1px 0px rgb(204,60,39);
	box-shadow:         1px 1px 0px rgb(204,60,39);
	position:relative;
	}
.cta:active {
	top:1px;
	left:1px;
	-moz-box-shadow:    none;
	-webkit-box-shadow: none;
	box-shadow:         none;
	}
.sub-head {
	text-transform:uppercase;
	letter-spacing:1px;
	}

/* extras */
#viewport, 
#viewport2 {
	cursor:move;
	cursor: all-scroll;
	cursor: -webkit-grab;
	}
#viewport:active, 
#viewport2:active {
	cursor: move;
	cursor: all-scroll;
	cursor:-webkit-grabbing;
	}
	
	
/* Ducks */
.duck,
.duck2 {
	top:64.9%;
	left:18.5%;
	width:1.03923096%;
	height:0.8%;
	background:url(../images/duck.png) center center no-repeat transparent;
	background-size:100% auto;
	-o-animation: duck 10s 2s infinite linear;
	-moz-animation: duck 10s 2s infinite linear;
    -webkit-animation: duck 10s 2s infinite linear;
	animation: duck 10s 2s infinite linear;
	transform-style: preserve-3d;
	perspective: 1000;
	}
.duck2 {
	top:83%;
	left:56%;
	-o-animation: duck2 15s infinite alternate;
	-moz-animation: duck2 15s infinite alternate;
    -webkit-animation: duck2 15s infinite alternate;
	animation: duck2 15s infinite alternate;
	transform-style: preserve-3d;
	perspective: 1000;
	}

@-o-keyframes duck {
	0% { top:64.9%; left:18.5%; -o-transform: rotateY(0deg); }
	40% { top:64.9%; left:17%; -o-transform: rotateY(0deg); }
	50% { top:64.5%; left:17%; -o-transform: rotateY(-180deg); }
	90% { top:64.5%; left:18.5%; -o-transform: rotateY(-180deg);}
   	100% {top:64.9%; left:18.5%; -o-transform: rotateY(0deg);}
}
@-moz-keyframes duck {
	0% { top:64.9%; left:18.5%; -moz-transform: rotateY(0deg); }
	40% { top:64.9%; left:17%; -moz-transform: rotateY(0deg); }
	50% { top:64.5%; left:17%; -moz-transform: rotateY(-180deg); }
	90% { top:64.5%; left:18.5%; -moz-transform: rotateY(-180deg);}
   	100% {top:64.9%; left:18.5%; -moz-transform: rotateY(0deg);}
}
@-webkit-keyframes duck {
	0% { top:64.9%; left:18.5%; -webkit-transform: rotateY(0deg); }
	40% { top:64.9%; left:17%; -webkit-transform: rotateY(0deg); }
	50% { top:64.5%; left:17%; -webkit-transform: rotateY(-180deg); }
	90% { top:64.5%; left:18.5%; -webkit-transform: rotateY(-180deg);}
   	100% {top:64.9%; left:18.5%; -webkit-transform: rotateY(0deg);}
}
@keyframes duck {
	0% { top:64.9%; left:18.5%; transform: rotateY(0deg); }
	40% { top:64.9%; left:17%; transform: rotateY(0deg); }
	50% { top:64.5%; left:17%; transform: rotateY(-180deg); }
	90% { top:64.5%; left:18.5%; transform: rotateY(-180deg);}
   	100% {top:64.9%; left:18.5%; transform: rotateY(0deg);}
}

@-o-keyframes duck2 {
	0% { top:64.9%; left:18.5%; -o-transform: rotateY(0deg); }
	40% { top:64.9%; left:17%; -o-transform: rotateY(0deg); }
	50% { top:64.5%; left:17%; -o-transform: rotateY(-180deg); }
	90% { top:64.5%; left:18.5%; -o-transform: rotateY(-180deg);}
   	100% {top:64.9%; left:18.5%; -o-transform: rotateY(0deg);}
}
@-moz-keyframes duck2 {
	0% { top:83%; left:56%; }
	40% { top:83%; left:56%; }
	50% { top:83%; left:56%; }
	100% { top:83%; left:52%; }
}
@-webkit-keyframes duck2 {
	0% { top:64.9%; left:18.5%; -webkit-transform: rotateY(0deg); }
	40% { top:64.9%; left:17%; -webkit-transform: rotateY(0deg); }
	50% { top:64.5%; left:17%; -webkit-transform: rotateY(-180deg); }
	90% { top:64.5%; left:18.5%; -webkit-transform: rotateY(-180deg);}
   	100% {top:64.9%; left:18.5%; -webkit-transform: rotateY(0deg);}
}
@keyframes duck2 {
	0% { top:83%; left:56%; }
	40% { top:82.5%; }
	50% { top:83%; }
	100% { top:82.5%; left:54%; }
}


/* Plane */
.plane {
	top:40.2%;
	left:14.8%;
	width:2.05248115%;
	height:2.4%;
	background:url(../images/plane.png) center center no-repeat transparent;
	background-size:100% auto;
	-o-animation: fly 50s infinite linear;
	-moz-animation: fly 50s infinite linear;
    -webkit-animation: fly 50s infinite linear;
	animation: fly 50s infinite linear;
	}
	
.flags	{
	width:3.809277%;
	height:3%;
	top:40.3%;
	left:15.2%;
	background:url(../images/flags.png) center center no-repeat transparent;
	background-size:100% auto;
}

@-o-keyframes fly {
	0% { left:-10%; top:38%; }
	25% { left:-10%; top:38%; }
	30% { left:14%; top:40.2%; }
	35% { left:14.8%; top:40.2%; }
	68% { left:14.8%; top:40.2%; }
	70% { left:18.8%; top:40.2%; }
	100% { left:105%; top:30.2%; }
}
@-moz-keyframes fly {
	0% { left:-10%; top:38%; }
	25% { left:-10%; top:38%; }
	30% { left:14%; top:40.2%; }
	35% { left:14.8%; top:40.2%; }
	68% { left:14.8%; top:40.2%; }
	70% { left:18.8%; top:40.2%; }
	100% { left:105%; top:30.2%; }
}
@-webkit-keyframes fly {
	0% { left:-10%; top:38%; }
	25% { left:-10%; top:38%; }
	30% { left:14%; top:40.2%; }
	35% { left:14.8%; top:40.2%; }
	68% { left:14.8%; top:40.2%; }
	70% { left:18.8%; top:40.2%; }
	100% { left:105%; top:30.2%; }
}
@keyframes fly {
	0% { left:-10%; top:38%; }
	25% { left:-10%; top:38%; }
	30% { left:14%; top:40.2%; }
	35% { left:14.8%; top:40.2%; }
	68% { left:14.8%; top:40.2%; }
	70% { left:18.8%; top:40.2%; }
	100% { left:105%; top:30.2%; }
}

.yeti {
	width: 2.0005196%;
	height: auto;
	position: absolute;
	top: 17.4931964%;
	left: 94.967861%;
	
}

.lifts {
	width: 25.66%;
	height: auto;
	position: absolute;
	top: 8.13%;
	left: 5.716134401%;
	
}

.fire{
	width: 1.195%;
	height: auto;
	position: absolute;
	top: 77%;
	left: 92.6787469%;
	
}

.fire2{
	width: 1%;
	height: auto;
	position: absolute;
	top: 6%;
	left: 94%;
	
}

.whale{
	width: 4.41184719%;
	height: auto;
	position: absolute;
	top: 72.198274%;
	left: 1.22941023%;
	
}

.spec-red{
	width: 1.35100025%;
	height: auto;
	position: absolute;
	top: 70.5831373%;
	left: 24.491556%;
	
}

.spec-brown{
	width: 1.45492334%;
	height: auto;
	position: absolute;
	top: 70.02386%;
	left: 43.8519612%;
	
}

.sleeping {
	width: 2.52013508%;
	height: auto;
	position: absolute;
	top: 56%;
	left: 81.6601708%;
	
}

.ship {
	width: 6.05100021%;
	height: auto;
	position: absolute;
	top: 83.5474601%;
	left: 7.50316959%;
	
}


img{

max-width: 100%;

}
