body {
  font-size: 16px;
}
.nav {
  overflow-y:auto;
  overflow-x:hidden;
}

.bg-full {
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

.bg-fixed {
  background-attachment: fixed;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

.white-space { width:100%; height: 10vh; }
.full-screen { min-height: 100vh; }
.half-screen { min-height: 50vh; }
.third-screen { min-height: 30vh; }

.mw-small { width: 100%; max-width: 450px;}
.mw-medium { width: 100%; max-width: 780px;}
.mw-large { width: 100%; max-width: 1220px;}

.clearfix { clear: both; }
.clearfix:after { content: "."; display: block; height: 0; clear: both; visibility: hidden; }

.nowrap { white-space: nowrap; }
.see-thru-dark { background-color: rgba(0,0,0, 0.55); color:#FFF; }
.see-thru-lite { background-color: rgba(250,250,250, 0.9); }

.hand, .link{ cursor:pointer; }
.inline { display:inline-block; }
.block { display:block; }
.kit, .keepittogether { display: inline-block; }
.pxl { position:absolute; left:-10000px; z-index:-1; height:1px; width:1px; }
.spacer { height: 10vh; }

.pull-right{float:right!important}
.pull-left{float:left!important}
.bold { font-weight: 500; }
.bolder { font-weight: 700; }
.fine { font-weight: 200; }
.center-text{ text-align: center!important; }
.center-block{display:block;margin-right:auto;margin-left:auto;}
.dotunder {	border-bottom:dotted thin #333; }
.underline { text-decoration:underline; }
.highlight { background-color: #FF0; }
.middle-center {
	position:absolute;
	top:50%;
	left:50%;
	transform:translate(-50%, -50%);
}

/* VIDEO -------------- {{{ */
.video-wrap {
	width:96%;
	max-width: 1200px;
	margin:2vh auto 4vh;
	background-color:#000;
	border:#000 solid 5px;
}
.video-container {
	position: relative;
	padding-bottom: 56.25%;
	height: 0;
	overflow: hidden;
	margin: 0 auto;
}
.video-container iframe, .video-container object, .video-container embed, .video-container video {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border:none;
}
/* }}} end VIDEO */

/* "Thinking Spinner" -------------- {{{ */
.thinking body:after {
	content: "";
	z-index: -1;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background: -webkit-radial-gradient(center center, circle cover, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.5));
	background: radial-gradient(center center, circle cover, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.5));
}
.thinking .bar {
	font-size: 20px;
	width: 10em;
	height: 1em;
	position: relative;
	margin: 50px auto;
	border-radius: .5em;
	background: rgba(255, 255, 255, 0.6);
	box-shadow:
 0 0 0 .05em rgba(100, 100, 100, 0.075),  0 0 0 .25em rgba(0, 0, 0, 0.1),  inset 0 .1em .05em rgba(0, 0, 0, 0.1),  0 .05em rgba(255, 255, 255, 0.7);
}
.thinking .bar:after {
	content: "Please wait.";
	position: absolute;
	left: 25%;
	top: 150%;
	font-family: 'Carrois Gothic', sans-serif;
	font-size: 1em;
	color: #fff;
	text-shadow: 0 .05em rgba(255, 255, 255, 0.7);
}
.thinking .bar .sphere {
	border-radius: 50%;
	width: 1em;
	height: 100%;
	background: -webkit-linear-gradient(#eee, #ddd);
	background: linear-gradient(#eee, #ddd);
	box-shadow:
 inset 0 .15em .1em rgba(255, 255, 255, 0.3),  inset 0 -.1em .15em rgba(0, 0, 0, 0.15),  0 0 .25em rgba(0, 0, 0, 0.3);
	display: block;
	-webkit-animation: slide 1.75s ease-in-out infinite alternate;
	animation: slide 1.75s ease-in-out infinite alternate;
}

@-webkit-keyframes slide {
 from {}
 to {
	margin-left: 90%;
 }
}

@keyframes slide {
 from {}
 to {
	margin-left: 90%;
 }
}
/* }}} end Thinking Spinner */
