html {
	position: relative;
	min-height: 100%;
}

html, body {
	font-family: 'Open Sans', sans-serif;
	font-weight: 400;
	height: 100%;
}

main {
	padding-top: 8rem; /* for fixed navbar */
}

body > .wrapper {
	min-height: 100%;
	margin-bottom: -44.3rem; /* Depends on Footer height */
}

body > .wrapper:after {
	content: '';
	display: block;
	height: 44.3rem; /* Depends on Footer height */
}

.col-pad-15 {
	padding-top: 15px;
	padding-bottom: 15px;
}

p {
	margin-bottom: 1rem;
	line-height: 3rem;
}

ol {
	list-style-type: lower-roman;
}

a
, a:hover {
	text-decoration: none;
}

a.anchor {
	display: inline-block;
	padding-top: 7rem; /* Header size + margin */
	margin-top: -7rem;
}

.navbar {
	margin-bottom: 2rem;
}

.fill {
	position: absolute;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
}

@media(max-width: 767px) {

	.sm-center {
		text-align: center;
	}

}

@media(min-width: 992px) {

}

@media(min-width: 1200px) {

}

.pagination > li {
	float: left;
	display: block;
}
.pagination > li > .dropdown-menu {
	margin-top: 0;
	border-top-left-radius: 0;
	border-top-right-radius: 0;
}

.form-horizontal .has-feedback .form-control-feedback.label-feedback {
	width: auto;
	line-height: inherit;
}

.has-feedback select.form-control {
	padding-right: inherit;
}

.form-control-feedback.inline-feedback
, .help-block.inline-results {
	position: absolute;
	top: 0;
	right: 15px;
}

.help-block.inline-results.-no-label {
	margin-top: 26px;
}

.help-block.inline-results {
	margin-bottom: 0;
	margin-top: .1rem;
	padding: 6px 12px;
	left: 0;
}

.feedback-container {
	position: relative;
}

.has-feedback .-feedback {
	top: 0;
	right: 0;
}

.has-feedback select.form-control {
	padding-right: 0 !important;
	margin-right: 42.5px;
}

.radio-inline+.radio-inline
, .checkbox-inline+.checkbox-inline {
	margin-left: 0;
}

.radio-inline
, .checkbox-inline {
	margin-right: 10px;
}

.twitter-typeahead {
	width: 100%;
}
.typeahead-select {
	height: 34px !important;
	margin-top: -34px;
} /* Same as form-control in bootstrap */

.typeahead-container .form-control-feedback
, .feedback-container .form-control-feedback.-feedback {
	right: 0 !important;
}

.tt-dropdown-menu
, .tt-menu {
	cursor: default;
	width: 100%;
	margin-top: 12px;
	outline: 0;
	-webkit-transition: border-color ease-in-out .15s,box-shadow ease-in-out .15s;
	transition: border-color ease-in-out .15s,box-shadow ease-in-out .15s;
}

.tt-suggestions
, .tt-dataset {
	padding: 6px 0px;
}
.tt-suggestion {
	padding: 6px 12px;
}
.tt-suggestion p {
	margin: 0;
}

td.-menu
, td.-edit {
	width: 1%;
}
td.-allow .item-menu
, td.-deny .item-menu
, td.-relationship .item-menu {
	display: inline-block;
}

.item-menu > ul:before
, .item-menu > ul:after {
	content: ' ';
	display: table;
}
.item-menu > ul:after { clear: both; }
.item-menu > ul.-menu {
	float: left;
	margin: 0;
	padding: 0;
	list-style: none;
}
.item-menu > ul.-menu > li {
	float: left;
	position: relative;
	display: block;
}
.item-menu {
	width: 30px;
	margin: 0 auto;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-ms-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
}

.item-menu .-menu > li > button {
	border: none;
	font-size: 14px;
	margin: 0;
}

.item-menu .-items
, .dropdown-menu.-items {
	padding: 0;
}

.item-menu .-items > li
, .dropdown-menu.-items > li {
	padding: 6px 12px;
	cursor: pointer;
	text-transform: capitalize;
}

.tags-container .-name {
	text-transform: capitalize;
}

.tags-container .tag {
	display: inline-block;
	text-transform: capitalize;
	margin-left: 6px;
	border: .1rem solid;
	padding: 0px 6px;
}
.tags-container .-allow
, .tags-container .-deny {
	width: 35%;
}

@media screen {

	label {
		margin-top: 5px;
	}

}

.form-group > div > .btn:not(.btn-wide):not(.btn-l)
, .modal-footer > .btn:not(.btn-wide):not(.btn-l) {
	float: right;
	margin: 4px;
}

.btn-g .btn {
	margin-right: 1.5rem;
	margin-bottom: 1.5rem;
}

td > div.-sub {
	font-size: 0.75em;
}

.row .-search-container {
	margin-bottom: 15px;
}

.list .-header th[data-sort] {
	cursor: pointer;
}

.list .-header th.-s i {
	margin-left: 0.25em;
}

.list .-header th.-s sup {
	margin-left: -0.25em;
}

.list .-header th.-s.-i1 i {
	opacity: 0.75;
}

.list .-header th.-s.-i2 i {
	opacity: 0.5;
}

.list .-header th.-s.-i3 i {
	opacity: 0.25;
}

.list .-header th.-s:hover i {
	opacity: 1;
}

table.recipematerial tfoot {
	text-align: right;
}

.list.-items > .-item {
	position: relative;
	padding: 8px 15px;
	margin: 0 -15px;
}

.list.-items > .-item:first-child {
	padding-top: 0;
}

.list.-items > .-item > .-menu {
	position: absolute;
	top: 0.25em;
	right: 0.25em;
}

/* Global Style */
.btn.btn-wide {
	width: 100%;
}

.fa.-weak {
	opacity: 0.2;
}

a:hover .fa.-weak {
	opacity: 0.6;
}

#map_canvas {
	width: 100%;
	height: 420px;
}

@media screen and (max-width: 992px) {

	.small-hide {
		display: none;
	}

}

.text-upper {
	text-transform: uppercase;
}

ul.-plain
, ol.-plain {
	list-style: none;
	margin: 0;
	padding: 0;
}

ul.-bar > li
, ol.-bar > li {
	position: relative;
	display: inline-block;
}

.text-center > ul {
	display: inline-block;
	vertical-align: top;
}

address {
	margin: 0;
}

.goto-top {
	display: block;
	position: fixed;
	bottom: 0;
	right: 0;
	width: 4.4rem;
	height: 4.4rem;
	font-size: 1.4rem;
	text-align: center;
	transition: opacity .4s ease;
	opacity: 0;
	z-index: 999;
	margin-bottom: 3rem;
	margin-right: 1.6rem;
	border: none;
	padding: 0;
	border-radius: 50%;
	box-shadow: .6rem .6rem 0 rgba(103, 102, 102, 0.2);
}

[data-active].goto-top {
	opacity: .8;
}

[data-hidden] {
	display: none !important;
}

button.goto-top:focus {
	outline: 0;
}

/* Template Style */
h1
, h2
, h3
, h4
, h5
, h6 {
	font-family: 'Paytone One', serif;
	display: block;
	width: 100%;
	margin-top: 0;
	word-break: break-word;
	position: relative;
}

h1 {
	font-size: 5.4rem;
	line-height: 5.6rem;
	font-weight: 700;
	text-transform: uppercase;
	margin-bottom: 2rem;
}

h1 span{
	font-size: 4.2rem;
	line-height: 4.6rem;
	font-weight: 400;
	text-transform: none;
}

@media (min-width: 762px) {

	h1 {
		font-size: 6.2rem;
		line-height: 6.4rem;
	}

	h1 span{
		font-size: 3.4rem;
		line-height: 3.6rem;
	}

}

h2 {
	font-size: 5.2rem;
	letter-spacing: .05rem;
	text-transform: uppercase;
	text-align: center;
}

h3 {
	font-size: 3.6rem;
	line-height: 4.4rem;
	letter-spacing: .02rem;
	margin-bottom: 2rem;
}

h4 {
	font-size: 3.2rem;
	line-height: 3.4rem;
	letter-spacing: .04rem;
	margin-bottom: 3rem;
}

h5 {
	font-size: 2.4rem;
	letter-spacing: .03rem;
	margin: 0;
	margin-bottom: 2rem;
	text-transform: uppercase;
}

h6 {
	font-family: 'Open Sans', sans-serif;
	font-size: 1.8rem;
	line-height: 2.4rem;
	letter-spacing: 0.05rem;
	text-transform: uppercase;
	font-weight: 700;
	padding: .5rem 1rem;
	margin-bottom: 2rem;
}

.btn:hover
, .btn:active
, .btn:focus {
	-webkit-box-shadow: none;
	box-shadow: none;
}

.visible-mobile-s
, .visible-mobile-l
, .visible-mobile-s-block
, .visible-mobile-l-block
, .visible-mobile-s-inline
, .visible-mobile-l-inline
, .visible-mobile-s-inline-block
, .visible-mobile-l-inline-block {
	display: none !important;
}

@media (max-width: 374px) {

	.hidden-mobile-s {
		display: none !important;
	}

	.visible-mobile-s
	, .visible-mobile-s-block {
		display: block !important;
	}

	.visible-mobile-s-inline {
		display: inline !important;
	}

	.visible-mobile-s-inline-block {
		display: inline-block !important;
	}

	table.visible-mobile-s {
		display: table !important;
	}

	tr.visible-mobile-s {
		display: table-row !important;
	}

	td.visible-mobile-s
	, th.visible-mobile-s {
		display: table-cell !important;
	}

}

@media (min-width: 375px) and (max-width: 424px) {

	.hidden-mobile-l {
		display: none !important;
	}

	.visible-mobile-l
	, .visible-mobile-l-block {
		display: block !important;
	}

	.visible-mobile-l-inline {
		display: inline !important;
	}

	.visible-mobile-l-inline-block {
		display: inline-block !important;
	}

	table.visible-mobile-l {
		display: table !important;
	}

	tr.visible-mobile-l {
		display: table-row !important;
	}

	td.visible-mobile-l
	, th.visible-mobile-l {
		display: table-cell !important;
	}

}

header .logo {
	max-height: 6.4rem;
	height: auto;
	max-width: 100%;
	margin: 0 auto;
}

footer .logo {
	max-height: 9.6rem;
	height: auto;
	max-width: 100%;
	margin: 0 auto;
}

.navbar-nav > li > a {
	font-size: 14px;
	text-align: center;
	transition: all .2s ease-in-out;
	font-family: 'Open Sans', sans-serif;
	background: transparent;
	letter-spacing: .05rem;
	display: block;
	line-height: 6rem;
	font-weight: 600;
}


@media (min-width: 768px) {

	.navbar-nav > li > a {
		padding: 1rem 2.5rem;
	}

}

.navbar-brand {
	height: auto !important;
	padding: .8rem;
}

.navbar-custom .navbar-toggle {
	width: 4.4rem;
	height: 4.4rem;
	border-radius: 50%;
	border: none;
	padding: 0;
	margin-top: 1.8rem;
}

.row-space-3 {
	margin-top: 3rem;
}

.pad {
	padding: .5rem 1rem;
}

footer {
	padding: 5rem 1rem;
}

@media (min-width: 992px) {

	.row.-fill-height {
		display: table;
	}

	.row.-fill-height [class*="col-"] {
		display: table-cell;
		vertical-align: top;
		float: none;
	}

}

section {
	position: relative;
	padding: 2.5rem 0;
}

section.-no-pad {
	padding: 0;
}

section.-head {
	min-height: 35rem;
}

section.-head.-lg {
	min-height: 45rem;
}

@media (max-width: 767px) {

	.xs-justify {
		text-align: justify;
	}

}

.heading {
	margin-bottom: 10rem;
}

.plans {
	padding-top: 3rem;
	padding-bottom: 3rem;
}

.plan.selection > ul {
	margin: 1.5rem;
}

.plan-hero {
	position: relative;
	margin-top: 3rem;
	border-radius: 2rem;
	padding: 4rem;
	text-align: center;
	transition: all .2s ease-in-out;
}

.plan-hero:first-child {
	margin-top: 0;
}

@media (max-width: 761px) {

	.plan-hero {
		margin: 3rem;
	}

}

@media (min-width: 992px) {

	.plan-hero {
		margin: 0;
	}

	.plan-hero.-featured {
		margin-top: -3rem;
	}

}

.plan-item
, .card
, .card-alt {
	position: relative;
	width: 100%;
	min-height: 24rem;
	border-radius: 1rem;
	padding: 2rem;
	transition: all .2s ease-in-out;
}

.card-alt {
	border-radius: 1rem;
	padding: 4rem;
}

.card-alt h4, .card-alt h6, .card-alt p {
	margin: 0 0 1rem 0;
	padding: 0;
}

.plan-item .-name h5
, .card .table > thead th {
	font-family: Kalam, cursive;
	font-size: 1.8rem;
	font-weight: bold;
}

.plan-item .-price {
	position: absolute;
	float: right;
	top: 1rem;
	right: 2rem;
	font-size: 2.4rem;
	font-weight: 800;
}

.plan-item .-action {
	text-align: center;
}

@media (min-width: 1200px) {

	.plan-item .-action {
		position: absolute;
		float: right;
		bottom: 2rem;
		right: 2rem;
	}

}

.plan-hero .-name h5 {
	margin-top: -.5rem;
	margin-bottom: 1rem;
}

.plan-hero .-price {
	font-family: 'Paytone One', serif;
	font-size: 5rem;
	margin-top: .7rem;
	color: #2dbba4;
}

.plan-hero ul {
	margin-top: 2.5rem;
}

.plan-hero li {
	margin-bottom: 1.5rem;
	font-size: 1.6rem;
}

.plan-hero li > span {
	font-size: smaller;
}

.plan-item li {
	margin-bottom: 1.2rem;
	font-size: 1.4rem;
}

.plan-item span.excl {
	font-size: 1.4rem;
}

.text-smaller {
	font-size: smaller;
}

.pad-below {
	padding-bottom: 2.5rem;
}

.page-icon {
	text-align: center;
}

.page-icon > i {
	font-size: 16rem;
}

.page-icon > span {
	font-size: 8rem;
}

.btn-a
, .btn-c {
	position: relative;
	padding: 1.8rem 2.5rem;
	font-weight: 700;
	font-size: 1.4rem;
	font-family: Open Sans;
	text-align: center;
	transition: all .2s ease-in-out;
	background: none;
	border: none;
	outline: none;
	border-radius: .5rem;
	cursor: pointer;
	letter-spacing: .07rem;
	text-transform: uppercase;
}

.btn-a:before
, .btn-a:after
, .btn-c:before
, .btn-c:after {
	position: absolute;
	display: block;
	content: ' ';
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	border: .2rem solid;
	border-radius: 5px;
	transition: 0.2s ease-in-out;
}

.btn-a:hover:before
, .btn-a.-active:before
, .btn-c:hover:before
, .btn-c.-active:before {
	transform: translate(-.5rem, -.5rem);
}

.btn-a:hover:after
, .btn-a.-active:after
, .btn-c:hover:after
, .btn-c.-active:after {
	transform: translate(.5rem, .5rem);
}

footer a {
	font-weight: bold;
}

footer a:hover {
	font-weight: bold;
}

footer ul.-nav > li {
	line-height: 3rem;
}

.footer-social li {
	margin: .6rem;
}

.footer-social li > a > i {
	line-height: 4.2rem;
	width: 100%;
	height: 100%;
	border-radius: 50%;
	transform: translate(0, 0); /* Is fix for z-index issues */
}

/* Neighbourly icon */
.footer-social li > a > i.fa-neighbourly > svg {
	width: 65%;
	height: 65%;
	-webkit-transform: translateX(5%) translatey(15%);
	-moz-transform: translateX(5%) translatey(15%);
	transform: translateX(5%) translatey(15%);
}

.footer-social li > a > i:after {
	position: absolute;
	top: 0;
	left: 0;
	height: 100%;
	width: 100%;
	content: '';
	z-index: -1;
	transition: all 0.5s;
	transform: scale(1.1); /* Removes artifacts */
	border-radius: 50%;
}

.footer-social li > a:hover > i:after {
	transform: scale(0);
	opacity: 0
}

.footer-social li > a {
	line-height: 4.8rem;
	font-size: 2.4rem;
	width: 4.8rem;
	height: 4.8rem;
	border-radius: 4.8rem;
	display: block;
	text-align: center;
	transition: all .5s;
}

.full-width {
	width: 100%;
}

.row.nopad {
	padding: 0 1.5rem;
}

.row.nopad > div {
	padding: 0;
}

/* Alt Form - transitions should be targeted, NOT directly on the form */

form.-alt label {
	position: absolute;
	padding-top: 2px;
}

form.-alt .form-control {
	border-radius: 1rem;
	border: .1rem solid;
	box-shadow: none;
	line-height: 2.4rem;
	padding: 1.7rem 2rem;
	height: auto;
}

form.-alt .-required > .-message {
	display: none;
	font-size: 1.2rem;
	margin-top: .2rem;
}

form.-alt .-invalid > .-message {
	display: block;
}

form.-alt .-control > .-container {
	position: relative;
}

form.-alt .form-control {
	font-family: Kalam, cursive;
	font-size: 1.8rem;
	transition: all .5s;
}

form.-alt .-control > .-container.-has-icon > .form-control {
	padding-right: 5.8rem;
}

form.-alt .-control>.-container>.-icon {
	position: absolute;
	top: 0;
	right: 0;
	z-index: 2;
	display: block;
	padding: 1.7rem 2rem;
	font-size: 1.8rem;
	line-height: 2.4rem;
	text-align: center;
	pointer-events: none;
}

.skew {
  position: relative;
  z-index: 1;
	max-width: 256rem;
	min-height: 16rem;
	margin: 0 auto;
}

.skew.-above:before
, .skew.-below:after {
	background: inherit;
	content: '';
	display: block;
	height: 100%;
	left: 0;
	position: absolute;
	right: 0;
	z-index: -1;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	-webkit-transform-origin: 100%;
	transform-origin: 100%;
}

.skew.-alt.-above:before
, .skew.-alt.-below:after {
	-webkit-transform-origin: 0;
	transform-origin: 0;
}

.skew.-above:before {
	top: 0;
}

.skew.-below:after {
	bottom: 0;
}

.skew.-above:before
, .skew.-alt.-below:after {
    -webkit-transform: skewY(1.5deg);
    transform: skewY(1.5deg);
}

.skew.-alt.-above:before
, .skew.-below:after {
	-webkit-transform: skewY(-1.5deg);
	transform: skewY(-1.5deg);
}

table.-a .-plan {
	width: auto;
}

table.-a .-speed {
	width: 16rem;
}

table.-a .-price {
	width: 11rem;
}

.hr {
	display: block;
	clear: left;
	margin: 2rem auto 0 auto;
	padding: 0;
	width: 100%;
	max-width: 15rem;
	height: 0;
	text-align: center;
}

.hr:before {
	content: "\f0a3";
	font-family: 'Font Awesome\ 5 Pro';
	font-weight: bold; /* Makes it solid */
	position: relative;
	top: -1.75rem;
	font-size: 2.5rem;
	padding: 1rem;
}

.shift-up {
	margin-top: -3rem;
}