/* 
https://fonts.googleapis.com/css?family=Francois+One|Open+Sans:300,400,600,700
brand red: #ef4836 
*/

/*
==============================================
browser chrome over-rides
==============================================
*/

/* hides the spin-button for firefox & chrome */
input[type=number].no-spinner {
		-moz-appearance: textfield;
}
input[type=number].no-spinner::-webkit-inner-spin-button,
input[type=number].no-spinner::-webkit-outer-spin-button {
	-webkit-appearance: none;
	margin: 0;
}

/*
==============================================
fontawesome over-rides
==============================================
*/
.fa-li {
	top: 0.38em;
}

/*
==============================================
foundation over-rides
==============================================
*/
.margin-0 {
  margin: 0rem !important;
 }
.button.primary,
.button.primary:hover,
.button.primary:focus,
.button.success,
.button.success:hover,
.button.success:focus {
    color: #fefefe;
}

.button.black {
  background-color: #555;
  color: #fefefe;
}
.button.black:hover, .button.black:focus {
  background-color: #444444;
  color: #fefefe;
}
.button.hollow.black {
  border: 1px solid #555;
  color: #555;
}
.button.hollow.black:hover, .button.hollow.black:focus {
  border-color: #2b2b2b;
  color: #2b2b2b;
}
.button.disabled.black, .button[disabled].black {
  opacity: 0.25;
  cursor: not-allowed;
}
.button.disabled.black:hover, .button.disabled.black:focus, .button[disabled].black:hover, .button[disabled].black:focus {
  background-color: #555;
  color: #fefefe;
}
.button.hollow.black {
	background-color: transparent;
    border: 1px solid #555;
}

.badge.black {
  background: #555;
  color: #fefefe;
}
.button-group.black .button {
  background-color: #555;
  color: #fefefe;
}
.button-group.black .button:hover, .button-group.black .button:focus {
  background-color: #444444;
  color: #fefefe;
}
.callout.black {
  background-color: #e6e6e6;
  color: #0a0a0a;
}
.label.black {
  background: #555;
  color: #fefefe;
}
div.callout.titled.black h6:before {
  content: "\f05a";
}
div.callout.titled.black .close-button {
  color: #fefefe;
}

div.callout.titled.no-icon h6:before {
  content: "" !important;
}

button.hide,
.button.hide {
	display: none;
}
.nomargin {
	margin-bottom:0 !important;
}

a.accordion-title::before {
	color: #8a8a8a;
	content: "\f067";
	font-family: 'FontAwesome';
}
.is-active > .accordion-title::before {
	content: "\f068";
}
ul.accordion.custom li.accordion-item {
	border-bottom: 1px solid #fefefe;
}
ul.accordion.custom li.accordion-item:last-child {
	border-bottom: none;
}
ul.accordion.custom a.accordion-title {
	background-color: #e6e6e6;
	color: #444;
	font-family: "Open Sans","Helvetica Neue",Helvetica,Roboto,Arial,sans-serif;
	font-size:0.875rem;
	font-weight:400;
	position: relative;
}
ul.accordion.custom .accordion-title:hover {
	background-color: #cacaca;
	color: #000;
}
ul.accordion.custom .accordion-content {
	font-size:0.85rem;
}

h1, .h1,
h2, .h2,
h3, .h3,
h4, .h4,
h5, .h5,
h6, .h6 {
  font-family: "Open Sans", "Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;
  font-style: normal;
  font-weight: normal;
  color: inherit;
  text-rendering: optimizeLegibility;
}
h1 small, .h1 small,
h2 small, .h2 small,
h3 small, .h3 small,
h4 small, .h4 small,
h5 small, .h5 small,
h6 small, .h6 small {
  line-height: 0;
  color: #cacaca;
}

h1, .h1 {
  font-size: 1.5rem;
  line-height: 1.4;
  margin-top: 0;
  margin-bottom: 0.5rem;
}

h2, .h2 {
  font-size: 1.25rem;
  line-height: 1.4;
  margin-top: 0;
  margin-bottom: 0.5rem;
}

h3, .h3 {
  font-size: 1.1875rem;
  line-height: 1.4;
  margin-top: 0;
  margin-bottom: 0.5rem;
}

h4, .h4 {
  font-size: 1.125rem;
  line-height: 1.4;
  margin-top: 0;
  margin-bottom: 0.5rem;
}

h5, .h5 {
  font-size: 1.0625rem;
  line-height: 1.4;
  margin-top: 0;
  margin-bottom: 0.5rem;
}

h6, .h6 {
  font-size: 1rem;
  line-height: 1.4;
  margin-top: 0;
  margin-bottom: 0.5rem;
}

@media print, screen and (min-width: 40em) {
  h1, .h1 {
    font-size: 1.5rem;
  }
  h2, .h2 {
    font-size: 1.25rem;
  }

  h3, .h3 {
    font-size: 1.1875rem;
  }

  h4, .h4 {
    font-size: 1.125rem;
  }

  h5, .h5 {
    font-size: 1.0625rem;
  }

  h6, .h6 {
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 64em) {
  h1, .h1 {
    font-size: 1.5rem;
  }

  h2, .h2 {
    font-size: 1.25rem;
  }

  h3, .h3 {
    font-size: 1.1875rem;
  }

  h4, .h4 {
    font-size: 1.125rem;
  }

  h5, .h5 {
    font-size: 1.0625rem;
  }

  h6, .h6 {
    font-size: 1rem;
  }
}

/* custom - callout.titled heading bar to compliment Foundation's callouts */
div.callout.titled .close-button {
  margin-top: -0.125em;
}
div.callout.titled h6 {
  background: #bbb;
  border-color: #bbb;
  border-top-left-radius: inherit;
  border-top-right-radius: inherit;
  font-size: 1.125em;
  font-weight: 600;
  margin: -1rem -1rem 1rem -1rem;
  padding: 0.5rem;
  text-align: left;
}
div.callout.titled h6:before {
  content: "\f05a";
  font-family: FontAwesome;
  font-weight: normal;
  font-style: normal;
  display: inline-block;
  padding-right: 0.5rem;
}

div.callout.titled.success {
  border-color: #43ac6a;
}
div.callout.titled.success h6 {
  background: #43ac6a;
  color: #fff;
}
div.callout.titled.success h6:before {
  content: "\f058";
}
div.callout.titled.success .close-button {
  color: #fff;
}

div.callout.titled.secondary h6 {
  background: #e6e6e6;
  color: #0a0a0a;
}
div.callout.titled.secondary h6:before {
  content: "\f05a";
}

div.callout.titled.primary {
  border-color: #1FB6FF;
}
div.callout.titled.primary h6 {
  background: #1FB6FF;
  color: #fefefe;
}
div.callout.titled.primary h6:before {
  content: "\f05a";
}
div.callout.titled.primary .close-button {
  color: #fff;
}

div.callout.titled.warning {
  border-color: #f2b73a;
}
div.callout.titled.warning h6 {
  background: #f2b73a;
  color: #fff;
}
div.callout.titled.warning h6:before {
  content: "\f071";
}
div.callout.titled.warning .close-button {
  color: #fff;
}

div.callout.titled.alert {
  border-color: #f95234;
}
div.callout.titled.alert h6 {
  background: #f95234;
  color: #fff;
}
div.callout.titled.alert h6:before {
  content: "\f071";
}
div.callout.titled.alert .close-button {
  color: #fff;
}

div.callout.titled.black h6:before {
  content: "\f05a";
}
div.callout.titled.black .close-button {
  color: #fefefe;
}

div.callout.titled.no-icon h6:before {
  content: "" !important;
}

/*
==============================================
helper classes
==============================================
*/
.text-75 {
	font-size: 75%;
}
.text-85 {
	font-size: 85%;
}
.truncate {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    width: 100%;
}

img.img-left {
	float: left;
	padding: 0 2em 2em 0;
}
img.img-right {
	float: right;
	padding: 0 0 2em 2em;
}

.embed-container-gmaps { border:1px solid #ccc; position: relative; padding-bottom: 26.25%; height: 0; overflow: hidden; max-width: 100%; }
.embed-container-gmaps iframe, .embed-container object, .embed-container embed { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }

.embed-container { position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden; max-width: 100%; }
.embed-container iframe,
.embed-container object,
.embed-container embed {
	position: absolute; top: 0; left: 0; width: 100%; height: 100%;
}


/*
==============================================
website
==============================================
*/
html {
	overflow-y: scroll;
}
body {
	background-color: #fff;
	color: #444;
	font-family: "Open Sans", "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
	
	/* sticky footer */
	display: flex;
	flex-direction: column;
	height: 100vh; /* Avoid the IE 10-11 `min-height` bug. */

}

/* adjust some elements for Open Sans larger height */
select {
	font-size: 0.92rem;
}

hr {
	height:1px;
	background-color:#aaa;
}
h1, h2, h3, h4, h5, h6 {
  font-family: "Open Sans", "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-weight: 400;
}
h1.styled, h2.styled, h3.styled, h4.styled, h5.styled, h6.styled {
  font-family: "Francois One", "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
}

p,
li {
  font-size: 0.9rem;
}
/* .reveal p,
.reveal li {
	font-size: 1rem;
} */

b {
  font-weight: 600;
}
	
small.medium {
	font-size: 75%;
	line-height: 1.2;
}

/* sticky footer */
div.body-content {
	flex: 1 0 auto;
}

div.alert-box.success h1,
div.alert-box.success h2,
div.alert-box.success h3,
div.alert-box.success h4,
div.alert-box.success h5,
div.alert-box.success h6 {
	color:#fff;
}

label.radio.button {
	margin-top:0.125rem;
}
label.radio.button input {
	margin:0;
}

a.help {
    color: #4d4d4d;
    display: inline-block;
}
a.help:hover, a.help:focus {
    color: #2ba6cb;
}
a.help i.has-tip {
    border-bottom: 0 none;
}
span.tooltip {
	font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
}
section.wrapper {
	margin: 0 auto;
	max-width: 60rem;
}

div.hr {
  border-top: 1px solid #cacaca;
  color: #cacaca;
  margin: 2rem 0;
  position: relative;
}

div.hr::before {
  content: "\f111";
  font-family: FontAwesome;
  font-size: 1em;
  position: absolute;
  left: 48%;
  top: -0.785em;
}

/*
==============================================
tables
==============================================
*/
caption {
	font-weight: 600;
	font-size: 1rem;
	text-align: left;
}
tbody td {
	font-size: 0.9rem;
	padding-bottom: 1rem;
	padding-top: 1rem;
}
thead th {
	font-size: 0.8rem;
	font-weight: 600;
	opacity: 0.6;
	padding-bottom: 1rem;
	padding-top: 1rem;
	text-transform: uppercase;
}

/*
==============================================
headers
==============================================
*/
header.header-primary {
	background: #fff;
	border-bottom: 1px solid #ddd;
	/* border-top: 2px solid #49494b; */
	padding: 0.6rem 0 0.5rem 0;
}
header.header-primary img.logo {
	max-height: 2.25rem;
	padding-top: 0.5rem;
}

/*
==============================================
nav primary
==============================================
*/


/* /js/vendor/priority-nav/priority-nav-core.css */
.priority-nav {
  white-space: nowrap;
}

.priority-nav > ul {
  display: inline-block;
}

.priority-nav > ul > li {
  display: inline-block;
}

.priority-nav-has-dropdown .priority-nav__dropdown-toggle {
  position: relative;
}

.priority-nav__wrapper {
  position: relative;
}

.priority-nav__dropdown {
  position: absolute;
  visibility: hidden;
}

.priority-nav__dropdown.show {
  visibility: visible;
}

.priority-nav__dropdown-toggle {
  visibility: hidden;
  position: absolute;
}

.priority-nav-is-visible {
  visibility: visible;
}

.priority-nav-is-hidden {
  visibility: hidden;
}


div.nav-priority {
	color: #111;
	margin: 0 auto;
	position: relative;
	text-align: right;
	z-index: 3;
}
ul.nav-priority {
	display: inline-block;
	font-weight: 400;
	list-style: none;
	margin: 0;
	padding: 0.5rem 0;
}
ul.nav-priority li {
  display: inline-block;
  padding: 0;
  margin: 0 1em 0 0;
}
ul.nav-priority li a {
  border: 1px solid transparent;
  color: #444;
  padding: 0.5em;
  text-transform: uppercase;
}
ul.nav-priority li a:hover,
ul.nav-priority li a:focus {
  background: #666;
  color: #fefefe;
}

button.priority-nav__dropdown-toggle {
  background: none;
  border: 1px solid #ddd;
  color: inherit;
  cursor: pointer;
  font-size: 0.85em;
  line-height: 1.6;
  margin: 0 0 0 0.5rem;
  padding: 0.5em;
  text-transform: uppercase;
}
button.priority-nav__dropdown-toggle:hover,
button.priority-nav__dropdown-toggle:focus {
  background: #666;
  border: 1px solid #666;
  color: #fefefe;
}

button.priority-nav__dropdown-toggle:before {
  content: "\f0c9\00a0";
  font-family: FontAwesome;
}

ul.priority-nav__dropdown {
  background: #fff;
  border: 1px solid #ccc;
  display: none;
  font-size: 0.875rem;
  margin: 0;
  min-width: 120px;
  padding: 0;
  right: 0;
  text-align: left;
  top: 175%;
  white-space: nowrap;
  width: auto;
}
ul.priority-nav__dropdown:before {
  border-color: transparent transparent #ddd;
  border-image: none;
  border-style: inset inset solid;
  border-width: 6px;
  content: "";
  display: block;
  height: 0;
  right: 10px;
  position: absolute;
  top: -12px;
  width: 0;
}
ul.priority-nav__dropdown li {
  display: block;
}
ul.priority-nav__dropdown li:hover, ul.priority-nav__dropdown li:focus {
  background: #eee;
}
ul.priority-nav__dropdown li a {
  color: inherit;
  display: block;
  padding: 0.5rem;
}

ul.priority-nav__dropdown.show {
  display: block;
}

/*
==============================================
body-content
==============================================
*/
div.body-content {
	padding-bottom: 2rem;
	padding-top: 1rem;

	/* sticky footer */
	flex: 1 0 auto;
}

/*
==============================================
footer
==============================================
*/
/* https://css-tricks.com/couple-takes-sticky-footer/ */
/* https://codepen.io/chriscoyier/pen/RRbKrL */
footer.footer-primary {
	background-color: #49494B;
	color: rgba(255,255,255,0.8);
	padding: 1rem 1rem 2.5rem 1rem;
	
	/* sticky footer */
	flex-shrink: 0;
}
ul.footer-primary__links {
	font-size: 0.85rem;
	list-style: none;
	margin: 0 0 1.5rem	0;
	padding: 0;
}
footer.footer-primary ul .fa-li {
	top: 0.85rem;
}
ul.footer-primary__news.fa-ul,
ul.footer-primary__contact.fa-ul {
	font-size: 0.85rem;
}
ul.footer-primary__news.fa-ul,
ul.footer-primary__contact.fa-ul {
	margin-left: 1.25rem;
}
ul.footer-primary__news.fa-ul li,
ul.footer-primary__contact.fa-ul li {
	padding: 0.5rem 0;
}
ul.footer-primary__contact a {
	color: inherit;
}
ul.footer-primary__links a:hover,
ul.footer-primary__news a:hover,
ul.footer-primary__contact a:hover {
	color: #fff;
	text-decoration: underline;
}	
ul.footer-primary__links li {
	padding: 0.5rem 0;
}
ul.footer-primary__news a,
ul.footer-primary__links a {
	color: inherit;
}
div.footer-primary__copyright {
	color: rgba(255,255,255,0.4);
	font-size: 0.75rem;
	margin-top: 1rem;
	text-align: center;
}
div.footer-primary__copyright a {
	color: inherit;
	opacity: 0.7;
}
div.footer-primary__copyright a:hover {
	opacity: 1;
}
div.footer-primary__copyright img {
	display: inline-block;
	margin: 1rem auto 0.5rem auto;
	max-height: 3rem;
}
div.footer-primary__trust img {
	display: block;
	margin: 1rem auto 0.5rem auto;
	max-height: 5rem;
}

/*
==============================================
header-controls (truck/cart/user buttons)
==============================================
*/
div.header-controls a.button {
  font-weight: 500;
  margin-bottom: 0.125rem;
  margin-top: 0.125rem;
}
div.header-controls a.button.user {
  border-bottom-right-radius: 0;
  border-top-right-radius: 0;
}
div.header-controls a.button.arrow-only {
  border-left-color: rgba(255, 255, 255, 0.2);
  margin-left: -0.25rem;
}
/* div.header-controls a.truck::before, */
div.header-controls a.user::before,
div.header-controls a.arrow-only::before {
  content: "\f07a";
  font-family: 'FontAwesome';
  font-size: 1.33333em;
  font-style: normal;
  font-weight: 300;
  line-height: 0.75em;
  opacity: 0.8;
  padding-right: 0.5em;
  vertical-align: -15%;
}
div.header-controls a.button.user:before {
  content: "\f007";
}
/* div.header-controls a.button.truck:before {
  content: "\f0d1";
} */
div.header-controls a.button.arrow-only:before {
  content: "";
  padding-right: 0;
}

#header-truck-link {
	display: none;
}
#header-truck-link[data-trucklines='0'] {
	display: none;
}
#header-truck-link[data-trucklines-grt~='0'] {
	display: inline-block;
}
#header-truck-link::before {
	content: "\f0d1";
	font-family: 'FontAwesome';
	opacity: 0.8;
	padding-right: 0.5em;
}
#header-truck-link::after {
	content: attr(data-trucklines) " Products in Truck";
}
#header-truck-link[data-trucklines='1']::after {
	content: attr(data-trucklines) " Product in Truck";
}

#header-cart-account-dropdown {
  padding: 0;
}
#header-cart-account-dropdown::before {
  border: inset 6px;
  content: "";
  display: block;
  height: 0;
  width: 0;
  border-color: transparent transparent #fff transparent;
  border-bottom-style: solid;
  position: absolute;
  top: -12px;
  right: 10px;
  z-index: 89;
}
#header-cart-account-dropdown ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
#header-cart-account-dropdown li {
  font-size: 0.875rem;
  line-height: 1.125rem;
  margin: 0;
  text-align: left;
}
#header-cart-account-dropdown a {
  color: #0a0a0a;
  display: block;
  padding: 0.5rem;
}
#header-cart-account-dropdown a:hover,
#header-cart-account-dropdown a:focus {
  background: #eee;
}

/*
==============================================
scroll-to-top
==============================================
*/
#scroll-to-top {
	bottom: 0;
	display: none;
	font-size: 0.75rem;
	line-height: 1;
	padding: 0.5rem;
	position: fixed;
	right: 0;
	width: auto;
}
#scroll-to-top.visible {
	display: inline-block;
}
#scroll-to-top .fa-circle {
	color: #555;
	opacity: 0.8;
	transition: 0.3s;
}
#scroll-to-top .fa-stack-1x {
	top: -2px;
}
#scroll-to-top .fa-stack:hover .fa-circle {
	opacity: 1;
}

/*
==============================================
breadcrumbz
https://codepen.io/aarongustafson/pen/acpFq?q=breadcrumbs&limit=aarongustafson
==============================================
*/
ul.breadcrumbz {
	background: #e6e6e6;
	font-size: 0.8rem;
	list-style-type: none;
	margin: 0 0 1rem 0;
	padding: 0.5rem;
}
ul.breadcrumbz i.fa {
	font-size: 0.9rem;
}
.breadcrumbz__item {
	display: inline;
	font-weight: 300;
}
.breadcrumbz__item::after {
	bottom: 0;
	color: #aaa;
	content: "/";
	font-size: 0.85em;
	font-weight: 600;
	margin: 0 0.5em 0 0.75em;
	position: relative;
}
.breadcrumbz__item--last {
	font-weight: 400;
}
.breadcrumbz__item--last::after {
	display: none;
}


@media only screen and (max-width: 20em) {
	.breadcrumbz__item::after {
		display: none;
	}
	.breadcrumbz__item a,
	.breadcrumbz--with-here .breadcrumbz__item--here {
		left: -999em;
		position: absolute;
	}
	.breadcrumbz__item--last a,
	.breadcrumbz--with-here .breadcrumbz__item--penultimate a {
		display: block;
		left: 0;
		position: relative;
		text-indent: -999em;
	}
	.breadcrumbz__item--last a::before,
	.breadcrumbz--with-here .breadcrumbz__item--penultimate a::before {
		content: "\003c\00a0 Back";
		display: block;
		left: 0;
		position: absolute;
		text-indent: 0;
	}
}

/*
==============================================
range-specs
==============================================
*/
table.range-specs {
	border: 1px solid #eeaa01;
	color: #222;
	font-size: 0.8rem;			
	font-weight: 600;
}
table.range-specs tbody,
table.range-specs tfoot,
table.range-specs thead {
	border: none;
	background-color: initial;
}

table.range-specs thead th {
	background-color: #eeaa01;
	opacity: 1;
	line-height: 1.3;
	padding-bottom: 0.5rem;
	padding-top: 0.5rem;
	text-transform: none;
	text-align: center;
}
table.range-specs tbody tr:nth-child(1n) {
	background-color: #ffeec3;
}
table.range-specs tbody tr:nth-child(2n) {
	background-color: #fdf6e4;
}			
table.range-specs tbody tr td {
	border-right: 1px solid #eeaa01;
	font-size: 0.8rem;
	padding-bottom: 0.5rem;
	padding-top: 0.5rem;
	text-align: center;
}
table.range-specs .no-wrap {
	white-space: nowrap;
}
table.range-specs tbody tr td:first-child {
	background-color: #ffeec3;
}
table.range-specs tbody tr td.yellow-tongue {
	background-color: #ffd801;
}
table.range-specs tbody tr td.red-tongue {
	background-color: #ea413e;
	color: #fefefe;
}
table.range-specs tbody tr td.blue-tongue {
	background-color: #446cb4;
	color: #fefefe;
}
/*
==============================================
report-table
==============================================
*/
table.report-table {
  margin-top: 1rem;
  min-width: 12.5rem;
}
table.report-table caption {
  font-size: 1rem;
  font-weight: 600;
  padding: 0 0 0.5rem 0;
  text-align: left;
}
table.report-table thead tr th {
  font-size: 0.8rem;
  font-weight: 600;
  opacity: 0.8;
}
table.report-table thead tr th span.has-tip {
  font-weight: 600;
}
table.report-table tbody tr td {
  font-size: 0.8rem;
  white-space: nowrap;
}

	
/*
==============================================
misc
==============================================
*/

	
/*
==============================================
media queries
==============================================
*/
@media screen and (max-width: 39.9375em) {
	p, li {
		font-size: 1rem;
	}
	.embed-container-gmaps { 
		padding-bottom: 100%;
	}
	h1.big {
		font-size:2.5rem;
		line-height: 1.1;
		margin-left:0;
		margin-top:-1.5rem;
		text-align:center;
	}
	header.header-primary img.logo {
		display: block;
		margin: 0 auto 0.85rem auto;
		max-height: 2em;
	}
	div.nav-priority {
		text-align: center;
	}
	ul.nav-priority {
		font-size: 0.75em;
	}
	ul.nav-priority li {
		margin: 0 0.5rem 0 0;
	}
	ul.nav-priority li a {
		font-weight: 600;
	}
}
@media only screen and (max-width: 64em) { /* max-width 1024px, <= medium screens */
}
@media only screen and (min-width: 40.063em) { /* min-width 641px */
}	
@media only screen and (min-width: 40.063em) and (max-width: 64em) { /* min-width 641px and max-width 1024px */
	h1.big {
		font-size:3.5rem;
		line-height: 1.1;
		margin-left:0;
		margin-top:-1.5rem;
	}
}
@media only screen and (width: 768px) { /* iPad portrait � width: 768px */
}	
@media only screen and (min-width: 40.063em) { /* min-width 641px, > mobile screens */
}
@media only screen and (max-width: 64em) { /* max-width 1024px, <= medium screens */
}		
@media only screen and (min-width: 64.063em) { /* min-width 1025px, >= large screens */
}

/*
==============================================
blockUI
==============================================
*/
div.blockMsg {
	border:0;
	color: #444;
	cursor: wait;
	left: 30%;
	padding:0;
	text-align: center;
    top: 30%;
    width: 40%;
}
div.blockOverlay {
	background: #fff;
	opacity: 0.8;
}
@media only screen and (max-width:40em) {
	div.blockMsg {
		left: 10%;
		top: 20%;
		width: 80%;	
	}
}

.fa-spin-reverse {
	-webkit-animation: fa-spin-reverse 2s infinite linear;
	animation: fa-spin-reverse 2s infinite linear;
}
@-webkit-keyframes fa-spin-reverse {
	0% { -webkit-transform: rotate(359deg); }
	100% { -webkit-transform: rotate(0deg); }
}
@keyframes fa-spin-reverse {
	0% { transform: rotate(359deg); }
	100% { transform: rotate(0deg); }
}

/*
==============================================
notice bar
==============================================
*/
div.notice-bar {
	box-shadow:0 0 9px #333;
	min-height:3.5em;
	padding:1em 2.5em;
	position:fixed;
	text-align:center;
	visibility:hidden;
	width:100%;
	z-index:9999;
}
div.notice-bar.alert {
	background:#f04124;
	color:#fff;
	text-shadow:0 1px 1px #681b0f;
}
div.notice-bar.success {
	background:#43ac6a;
	color:#fff;
	text-shadow:0 1px 1px #368a55;
}
div.notice-bar div.message {
}
div.notice-bar a.close {
	color:#fff;
	font-size:2em;
	font-weight:700;
	position:absolute;
	right:1rem;
	top:0.125em;
}

/*
==============================================
animations
==============================================
*/
.blink {
	-webkit-animation: blink steps(1) 1s infinite;
	animation: blink steps(1) 1s infinite;
}
@keyframes blink {  
	0% { opacity: 1.0; }
	50% { opacity: 0.0; }
	100% { opacity: 1.0; }
}
@-webkit-keyframes blink {  
	0% { opacity: 1.0; }
	50% { opacity: 0.0; }
	100% { opacity: 1.0; }
}

.slideDown{
	animation-name: slideDown;
	-webkit-animation-name: slideDown;	

	animation-duration: 1s;	
	-webkit-animation-duration: 1s;

	animation-timing-function: ease;	
	-webkit-animation-timing-function: ease;	

	visibility: visible !important;						
}
@keyframes slideDown {
	0% {
		transform: translateY(-100%);
	}
	50%{
		transform: translateY(8%);
	}
	65%{
		transform: translateY(-4%);
	}
	80%{
		transform: translateY(4%);
	}
	95%{
		transform: translateY(-2%);
	}			
	100% {
		transform: translateY(0%);
	}		
}

@-webkit-keyframes slideDown {
	0% {
		-webkit-transform: translateY(-100%);
	}
	50%{
		-webkit-transform: translateY(8%);
	}
	65%{
		-webkit-transform: translateY(-4%);
	}
	80%{
		-webkit-transform: translateY(4%);
	}
	95%{
		-webkit-transform: translateY(-2%);
	}			
	100% {
		-webkit-transform: translateY(0%);
	}	
}

.slideOut {	
	animation-name: slideOut;
	-webkit-animation-name: slideOut;	

	animation-duration: 1s;	
	-webkit-animation-duration: 1s;

	animation-timing-function: ease;	
	-webkit-animation-timing-function: ease;	

	visibility: hidden !important;
	transition: visibility 1s ease;
}
@keyframes slideOut {
	0% {
		transform: translateY(0%);
	}
	100% {
		transform: translateY(-100%);
	}
}
@-webkit-keyframes slideOut {
	0% {
		transform: translateY(0%);
	}
	100% {
		transform: translateY(-100%);
	}
}