/* site stuff */
body {
	background: #f8f8f3;
	color: #021616;
	font-size: 19px;
	font-family: Brabo, Georgia, serif;
}
.main.container {
	margin-top: 5em; /* change to 4.5em after preorder */
	min-height: 35em;
}
::selection {
	background: #3c3625;
	color: #fff;
}
::-moz-selection {
	background: #3c3625;
	color: #fff;
}
input, .submit {
	border-radius: 0.25em;
	border: 1px solid #333;
}
.submit:hover, .submit:active {
	background: #613418;
}
blink {
	-webkit-animation: blink 1s steps(5, start) infinite;
	-moz-animation:    blink 1s steps(5, start) infinite;
	-o-animation:      blink 1s steps(5, start) infinite; 
	animation:         blink 1s steps(5, start) infinite;
}
@-webkit-keyframes blink {
	to { visibility: hidden; }
}
@-moz-keyframes blink {
	to { visibility: hidden; }
}
@-o-keyframes blink {
	to { visibility: hidden; }
}
@keyframes blink {
	to { visibility: hidden; }
}
a {
	color: #3c3625;
}
a:hover {
	text-decoration: none;
	color: #998;
}
.front {
	display: none;
}
p, li {
	-moz-font-feature-settings: 'onum';
	-ms-font-feature-settings: 'onum';
	-webkit-font-feature-settings: 'onum';
	font-feature-settings: 'onum';
}
p.cta, footer, ul.nav, nav, .mobile a span, #blog-tutorials, .login-form, .login-form input, .clock {
	font-family: Flama, "Helvetica Neue", Helvetica, sans-serif;
}
code {
	font-family: Cartograph, Menlo, monospace;
}
h3, p, li, blockquote {
	line-height: 1.66666667em;
}
h2, h3, h4 {
	margin-bottom: 0.5em;
}
h2 {
	text-align: center;
	line-height: 1.2em;
}
.subhead {
	text-align: center;
	margin-top: 0;
	margin-bottom: 2em;
}
h5 {
	text-align: center;
	font-weight: normal;
	font-size: 0.75em;
	margin-top: 0;
	margin-bottom: 2em;
}
.post h5 {
	font-size: 0.8em;
	text-align: left;
	font-weight: bold;
	margin-top: 1em;
	margin-bottom: 0.5em;
}
h2 a:hover {
	text-decoration: none;
}
h2 a {
	font-weight: bold;
}
blockquote {
	margin: 1em 0 1em 1.5em;
	quotes: '“' '”' '‘' '’';
}
blockquote ul {
	margin: 1em 0 1em 1.5em;
}
.testimonials ul {
	list-style-type: none;
}
.bump, .in-body, .post ul, .post ol, .post pre {
	margin: 1em 0;
}
.bump-2x {
	margin: 2em 0;
}
p + p, ol + p, .indent {
	text-indent: 1.5em;
}
abbr {
	font-variant: small-caps;
	font-feature-settings: 'smcp';
	text-transform: lowercase;
	letter-spacing: 0.03em;
}
.noindent, .login-form p, p + p.noindent, .noindent p, p.cta + p {
	text-indent: 0 !important;
}
h3, h4, p.cta + p, .bump-top {
	margin-top: 1em;
}
.bump-bottom {
	margin-bottom: 1em;
}
footer {
	width: 100%;
	background: #16161d;
	color: #ddd;
	margin-top: 3em;
}
footer .container {
	padding: 1em 0;
}
footer p {
	text-align: center;
}
.footer-list-callout {
	font-size: 0.6em;
	margin-top: 2em;
}
footer a {
	color: #ddd;
}
.course-signup #mc_embed_signup {
	margin: 1em 0;
	text-align: center;
}
.course-signup ul, .course-signup ol {
	margin-left: 1.5em;
}
.list-subscribe {
text-align: center;
margin: 0.5em 0 1em 0;
}
.body-subscribe {
text-align: center;
margin-top: 1em;
}
.body-subscribe input {
font-size: 1.25em;
}
.body-subscribe .submit {
	padding-top: 4px;
	padding-bottom: 5px;
}
hr {
	border: 0;
	height: 0;
	width: 80%;
	border-top: 1px solid #ddd;
	margin: 1.5em auto;
}

/* header */
header {
	text-align: center;
	font-size: 1.25em;
	padding: 0 0 0.25em 0;
	line-height: 1em;
	background: #f0f0e9;
	border-bottom: 1px solid #ddd;
	position: fixed;
	width: 100%;
	top: 0;
	z-index: 150;
}
.nav li {
	display: inline;
}
h1 {
	display: inline;
	font-weight: normal;
	font-size: 1.1em;
}
header a {
	padding: 0 0.1em;
	border-radius: 0.15em;
	text-decoration: none;
}
header a:hover, .logo:hover svg, .dropdown:hover .dropbtn {
	text-decoration: none;
	background: #ddd;
	color: #021616;
}
.callout a:hover {
	background: transparent;
	color: #000;
}
.logo:hover {
	background: none;
}
.footer p {
	text-indent: 0;
}
header svg, footer svg {
	height: 1.25em;
	position: relative;
	top: 0.3em;
}
.callout {
	background: #f6f6f1;
	border-bottom: 1px solid #ddd;
	padding: 0.25em 0 0.1em 0;
	font-size: 0.69em;
	margin-bottom: 0.15em;
}
.callout a {
	text-decoration: underline;
}

/* Dropdowns */
li.dropdown {
	overflow: hidden;
	position: relative;
	top: 2px;
}
.dropdown .dropbtn {
	font-size: 1em;
	color: #3c3625a !important;
	border: none;
	outline: none;
	background-color: inherit;
	font-family: inherit; /* Important for vertical align on phones */
	margin: 0; /* Important for vertical align on phones */
}
.dropdown-content {
	display: none;
	position: absolute;
	left: 0;
	margin-top: -3px;
	background-color: #e8e8e3;
	border: 1px solid #ddd;
	min-width: 16em;
	box-shadow: 0px 2px 4px 0px rgba(0,0,0,0.05);
	z-index: 999;
}
.dropdown-content a {
	float: none;
	color: black;
	font-weight: bold;
	padding: 12px 16px;
	text-decoration: none;
	display: block;
	text-align: left;
}
.dropdown-content a span {
	font-family: Flama, Helvetica, Arial, sans-serif;
	font-size: 0.6em;
	font-weight: normal;
	text-transform: none;
	display: block;
	line-height: 1.1em;
}

.dropdown-content a:hover {
	background-color: #ddd;
}
.dropdown:hover .dropdown-content {
	display: block;
}


/* mobile */
.mobile {
	display: none;
	position: fixed;
	width: 100%;
	top: 0;
	z-index: 999;
}
.mobile div {
	display: none;
}
.mobile button {
	position: absolute;
	top: 5px;
	right: 15px;
	border: 0;
	border: 1px solid #ddd;
	border-radius: 3px;
	width: 30px;
	height: 30px;
	outline: none;
	-webkit-transition: all 400ms ease;
	transition: all 400ms ease;
}
.mobile button.expanded {
	-webkit-transform: rotate(90deg);
	-ms-transform: rotate(90deg);
	transform: rotate(90deg);
	background-color: transparent;
	border: 0;
}
.mobile a {
	display: block;
	background: #f0f0f0;
	text-align: center;
	padding: 20px 0;
	border-bottom: 1px solid #ddd;
	text-decoration: none;
	font-weight: bold;
}
.mobile a span {
	font-weight: normal;
	display: block;
	font-size: 0.6em;
}
.mobile a:hover, .mobile a:active, .mobile a:focus {
	background: #e7e7e7;
}

/* front page */
.tagline {
	display: table-cell;
	vertical-align: middle;
	height: 100%;
	width: 70%;
	margin: 0 auto;
}
.offerings {
	margin-top: 1em;
}
.offerings p {
	margin-bottom: 1em;
}
.offerings .row {
	padding: 0;
}
.outreach {
	font-size: 1.5em;
	padding-top: 1em;
}
.testimonials li {
	font-size: 0.9em;
	margin-top: 1em;
}

/* CTAs */
.cta {
	text-align: center;
	margin: 0.5em 0 0.75em 0;
}
.cta + .cta {
	margin: 0;
}
.cta a, .cta input {
	padding: 0.5em 1em;
	font-weight: bold;
	letter-spacing: 0.01em;
	margin: 0.75em auto;
	text-decoration: none;
	display: inline-block;
	background-color: #3d94f6;
	border:1px solid #337fed;
	text-shadow:0px 1px 0px #1570cd;
	color: #fcfcfc;
	border-radius: 0.25em;
	cursor: pointer;
}
ul.bump + .cta a, ul.bump + .cta input {
	margin: 0 auto 0.5em auto;
}
.cta a:hover, .cta input:hover {
	background-color:#1e62d0;
}
.cta a:active, .cta input:active {
	position:relative;
	top:1px;
}
.cta .primary {
	background-color:#79ae01;
	border:1px solid #549807;
	text-shadow: 0 1px 0 #528009;
}
.cta .primary:hover {
	background-color:#77a809;
}
.cta .primary:active {
	position:relative;
	top:1px;
}
.cta .tertiary {
	background: #fafafa;
	color: #3c3625;
	border: 1px solid #3c3625;
	text-shadow: none;
	box-shadow: none;
}
.cta .tertiary:hover {
	background: #fff;
	color: #000;
}
.cta span {
	font-size: 0.6em;
	display: block;
	margin-top: -0.75em;
	font-weight: normal;
}
.cta s {
	font-weight: normal;
}
.ctafinal {
	padding-top: 1em;
}
.ctafinal h2 {
	padding: 0;
	margin: 0;
}
.cta-text {
	color: #1e62d0;
	font-weight: bold;
}
.separator {
	border-top: 1px solid #d0d0c6;
	margin-top: 1em;
	padding-top: 0 !important;
}
.ss-layers {
	padding-top: 1.2em;
}
.contact {
	text-align: center;
}

/* home page */
.home-ml, .home-subhead {
	text-align: center;
}
.home-subhead p {
	text-indent: 0;
	margin-bottom: 0.5em;	
}
.home-ml {
	border-top: 1px solid #ddd;
	border-bottom: 1px solid #ddd;
	font-size: 0.9em;
	padding-bottom: 1em;
	margin-bottom: 0;
}
.home-testimonial {
	border-top: 1px solid #ddd;
}
.home-us h3, .home-us .cta a {
	margin-top: 0;
}
.home-us ul {
	margin-left: 1em;
}

/* marketing pages */
.sig {
	text-align: right;
	font-style: italic;
}
.course-signup .sig {
	font-size: 0.85em;
}
.ps {
	font-size: 0.75em;
	margin: 1em 0;
}
.attr {
	text-align: right;
	text-indent: 0;
}
.product {
	font-weight: bold;
}
.headteaser {
	width: 100%;
	text-align: center;
	border-bottom: 1px solid #333;
	font-size: 0.6em;
	text-decoration: none;
	padding: 0.25em 0;
	background: #EDC393;
	display: none;
}
.headteaser:hover {
	background: transparent;
	color: #000;
}

/* blog */
h2.blog-title {
	margin: 1em 0 1em 0;
}

#blog-tutorials h3 {
	text-align: center;
	font-size: 2em;
}
#blog-tutorials a {
	display: inline-block;
	padding: 1em 0;
	width: 100%;
	text-decoration: none;
	font-weight: bold;
	background: #f6f6f1;
}
#blog-tutorials a span {
	display: inline-block;
	padding: 0 0.5em 0 1.5em;	
}
#blog-guides a:hover span.description, #blog-tutorials a:hover {
	text-decoration: underline;
}
#blog-tutorials ul {
	list-style-type: none;
	list-style-image: none;
	border: 1px solid #ccc;
}
#blog-tutorials li + li > a {
	border-top: 1px solid #ccc;
}

/* course signups */
#course-questions h3 {
	text-align: center;
}
.course-signup {
	border: 1px solid #333;
	border-radius: 0.5em;
	padding: 0.5em 1em;
	background: #eee;
	margin: 1em 0;
}
.course-signup h3 {
	margin-top: 0;
	text-align: center;
}
.face {
	display: inline-block;
	width: 15%;
	float: right;
	margin-left: 1em;
	margin-bottom: 1em;
}
.face.photo {
	width: 25%;	
	margin-left: 0.5em;
	margin-bottom: 0.5em;
}
.photo {
	text-align: center;
}
.photo img {
	width: 100%;
	border-radius: 0.25em;
	border: 1px solid #999;
}
.face.photo img {
	border: 1px solid #060;
}
.photo.smartphone img {
	max-width: 325px;
}
.photo svg {
	width: 100% !important;
	height: 100% !important;
	border: 1px solid #999;
	border-radius: 0.25em;
}

/* vimeo embeds */
.embed-container {
	margin-bottom: 1em;
}

/* training */
.login-form {
	display: inline-block;
	max-width: 100%;
	width: 25em;
	padding: 1em;
	margin: 0 auto 2em auto;
	border-radius: 0.25em;
	border: 1px solid #ccc;
	background: #fafafa;
	text-align: left;
}
.login-form p {
	margin-bottom: 10px;
}
.login-form label {
	display: inline-block;
	min-width: 8em;
	text-align: right;
	margin-right: 0.5em;
}
.login-form .login-remember {
	margin-left: 8.25em;
}
.login-form .login-submit {
	margin-left: 8.75em;
}
.login-form input, .login-form select {
	font-size: 1.25em;
	border-radius: 0.25em;
	border: 1px solid #ccc;
	padding: 0.25em;
}
.login-form .submit-button {
	font-family: Mallory, Flama, "Helvetica Neue", Helvetica, Arial, sans-serif;
	padding: 0.25em 1em;
	font-size: 1em;
	font-weight: bold;
	border-radius: 0.25em;
	background: rgba(241,231,103,1);
	background: -moz-linear-gradient(top, rgba(241,231,103,1) 0%, rgba(254,182,69,1) 100%);
	background: -webkit-gradient(left top, left bottom, color-stop(0%, rgba(241,231,103,1)), color-stop(100%, rgba(254,182,69,1)));
	background: -webkit-linear-gradient(top, rgba(241,231,103,1) 0%, rgba(254,182,69,1) 100%);
	background: -o-linear-gradient(top, rgba(241,231,103,1) 0%, rgba(254,182,69,1) 100%);
	background: -ms-linear-gradient(top, rgba(241,231,103,1) 0%, rgba(254,182,69,1) 100%);
	background: linear-gradient(to bottom, rgba(241,231,103,1) 0%, rgba(254,182,69,1) 100%);
}
.login-form .submit-button:disabled {
	background: #ccc !important;
}
.login-form .submit-button:not([disabled]):hover {
	background: rgba(182,236,34,1);
	background: -moz-linear-gradient(top, rgba(182,236,34,1) 0%, rgba(115,195,40,1) 100%);
	background: -webkit-gradient(left top, left bottom, color-stop(0%, rgba(182,236,34,1)), color-stop(100%, rgba(115,195,40,1)));
	background: -webkit-linear-gradient(top, rgba(182,236,34,1) 0%, rgba(115,195,40,1) 100%);
	background: -o-linear-gradient(top, rgba(182,236,34,1) 0%, rgba(115,195,40,1) 100%);
	background: -ms-linear-gradient(top, rgba(182,236,34,1) 0%, rgba(115,195,40,1) 100%);
	background: linear-gradient(to bottom, rgba(182,236,34,1) 0%, rgba(115,195,40,1) 100%);
}
.reset-pw {
	font-size: 0.75em;
	text-align: center;
}
.subnav {
	font-size: 0.75em;
}
.logout {
	font-weight: bold;
}
.embed-container {
	position: relative; 
	padding-bottom: 56.25%;
	height: 0;
	overflow: hidden;
	max-width: 100%;
	margin: 1em auto 2em auto;
}
.embed-container iframe, .embed-container object, .embed-container embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

/* store */
#store h2 {
	text-align: left;
	margin-top: 0;
}
#store h3 {
	margin-bottom: 1em;
	padding-bottom: 0.5em;
	border-bottom: 1px solid #ddd;
	font-size: 2em;
	text-align: center;
}
#store .cta {
	text-align: left;
	margin-top: 0;
}
#store .cta a {
	text-align: center;
}
#store .price {
	font-weight: normal;
	font-size: 0.75em;
	margin-left: 0.5em;
}

/* clock */
.clock {
	text-align: center;
	font-size: 1.5em;
	margin: 0 auto 1em auto;
}
.clock h3 {
	margin-top: 0;
	font-size: 0.75em;
}
.clock > div {
	padding: 0.25em;
	border-radius: 3px;
	border: 1px solid #ddd;
	background: #f0f0f0;
	display: inline-block;
}
.clock div > span {
	padding: 0.5em;
	border-radius: 3px;
	border: 1px solid #ddd;
	background: #f8f8f8;
	display: inline-block;
}
.days {
	font-weight: bold;
}
.smalltext {
	padding-top: 5px;
	font-size: 0.75em;
}

/* comparison table */
.Rtable {
  display: flex;
  flex-wrap: wrap;
  font-family: Flama, "Helvetica Neue", Helvetica, sans-serif;
}
.Rtable-cell {
  box-sizing: border-box;
  flex-grow: 1;
  padding: 0.3em 0.6em;
  overflow: hidden;
  list-style: none;
}
.Rtable h3 {
	margin: 0;
}
.Rtable-description {
	width: 50%;
}
.Rtable-feature {
	width: 25%;
	
}
.table-header, .table-yup, .table-nope, .table-monthly {
	text-align: center;
	align-items: center;
}
.table-yup, .table-nope {
	font-family: "Helvetica Neue", Helvetica, sans-serif;
}
.table-yup {
	color: #090;
}
.table-yup:before {
	content: "✓";
}
.table-nope {
	color: #c00;
}
.table-nope:before {
	content: "✖";
}
.table-monthly {
	font-size: 0.7em;
	margin-top: 0.15em;
}

/* cognito forms */
.cog-form {
	padding: 2em 0 !important;
}
.cog-body * {
	font-size: 19px !important;
	color: #021616 !important;
	font-family: Flama, "Helvetica Neue", Helvetica, sans-serif !important;
}
.cog-body .cog-button--submit {
	margin: 0 auto !important;
	font-weight: bold !important;
}
.cog-body .cog-button__text {
	color: #fff !important;
}

@media only screen and (max-width: 479px) {
	body {
		font-size: 12px;
	}
	.offerings p {
		margin: 0;
	}
	.body-subscribe input {
		font-size: 0.75em !important;
	}
}
@media only screen and (max-width: 767px) {
	.main.container {
		margin-top: 7em; /* change to 5em after preorder */
	}
	#store h2 {
		margin: 0.5em auto;
		font-size: 2em;
		text-align: center;
	}
	#store .cta {
		text-align: center;
	}
	body {
		font-size: 16px;
	}
	.callout {
		padding-left: 5px;
		padding-right: 5px;
	}
	.dropdown button {
		font-size: 0.75em !important;
		padding-left: 0;
		padding-right: 0;
	}
	.dropdown.left-side .dropdown-content {
		margin-left: -4em;
	}
	.dropdown.right-side .dropdown-content {
		margin-left: -9em;
	}
	.mobile {
		display: block;
	}
	.spacer, .desktop, h1 span {
		display: none !important;
	}
	.body-subscribe input {
		font-size: 1em;
	}
	.face {
		margin-left: 0.5em;
		margin-bottom: 0.5em;
	}
	.nomobile {
		display: none !important;
	}
	.content p {
		hyphens: auto;
		-webkit-hyphens:auto;
		-moz-hyphens:auto;
		hyphenate-limit-last: always;
	}
	.content ul {
		margin-left: 1.5em;
	}
	.cta {
		padding: 1em 0 0.5em 0;
		text-align: center;
	}
	#blog-tutorials h3 {
		font-size: 1.5em;
	}
	#blog-guides span.description {
		font-size: 1em;
	}
}
@media only screen and (max-width: 959px) {
	.Rtable h3 {
		font-size: 0.9em;
	}
}
@media only screen and (min-width: 768px) {
	blockquote {
		margin-left: 0;
		padding-left: 0.5em;
		border-left: 4px solid #e0e0e0;
	}
	.course-signup blockquote {
		border-left: 4px solid #909090;
		font-size: 0.9em;
	}
	.home-testimonial blockquote {
		border-left: 0 !important;
		font-style: italic;
	}
	body {
		text-rendering: optimizeLegibility;
	}
	.nodesktop {
		display: none !important;
	}
}