.fa,.fas,.fab,.far {
	font-display: swap;
}
body{
	background-color:#ffffff;
}

body.no-scroll{
	overflow-y:hidden;
}

body,p{
	font-family: 'Poppins', sans-serif;
}

h1,h2,h3,h4,h5,h6{
	font-family: 'Montserrat', sans-serif;
	line-height:1.25em;
}

h1,h2,h3,h4,h5{
	color:#364652;
}

h1{
	font-size:1.8rem;
	margin-bottom:1.25rem;
}

h2{
	font-size:1.25rem;
}

h5{
	font-size:1.125rem;
	margin-bottom:1.25rem;
}

p,li{
	line-height:2em;
}

a,
a:visited,
a:active{
	color:#364652;
}

a:hover{
	color:#ec2e42;
}

.side-btn{
	margin-left:3px;
	margin-right:3px;
	display: inline-block;
	margin-bottom: 1em;
}

label{
	font-family: 'Poppins', sans-serif;
	font-size:0.875rem;
}

label > .required{
	color:#ec2e42;
}

input[type="text"],
input[type="email"],
input[type="number"],
input[type="url"],
input[type="password"],
select,
textarea{
	font-family: 'Poppins', sans-serif;
	font-size: 1.25rem;
	line-height: 1.4em;
	border:solid 2px #efeaeb;
	box-shadow:none;
	padding:0.5rem 1rem;
	height:3rem;
	border-radius:4px;
}

input[type="number"]::-webkit-outer-spin-button,
input[type="number"]::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}
input[type="number"] {
    -moz-appearance: textfield;
}

select{
	padding:0.5rem 2rem 0.5rem 1rem;
}


a.button,
.button{
	background-color:#ec2e42;
	color:#fff;
	font-size:0.875rem;
	font-weight:bold;
}

.button:hover,
.button:focus,
.button:active{
	background-color:#118acb;
}

.button.disabled{
	background-color: #354653;
}

.no-margin{
	margin-top:0 !important;
	margin-bottom:0 !important;
	margin-left:0 !important;
	margin-right:0 !important;
}

.no-padding{
	padding-top:0 !important;
	padding-bottom:0 !important;
	padding-left:0 !important;
	padding-right:0 !important;
}

.v-middle{
	vertical-align:middle;
}

.callout{
	border:0;
	width:100%;
	margin-bottom:1.5rem;
}

header:not(.price-option-header),
section#intro{
	background-color:#fff;
}

section#mobilemenu {
	background-color:#364652;
	min-height:calc(100vh);
	transform:translateY(-150px);
}

section#mobilemenu .tp-mobile-menu-container {
	width:75vw;
	margin:auto;
}

header {
	position: relative;
	z-index: 10;
}

header:not(.price-option-header){
	background-size:cover;
	margin-bottom:40px;
}

header > nav {
	position:relative;
}


header > .title {
	height:100px;
}

header#demo-setup-header > .title{
    height:auto;
}

#trendplate-logo{
	margin-left:40px;
}


header .menu li > a,
#mobile-menu .menu li > a{
	font-family: 'Poppins', sans-serif;
	font-size:0.875rem;
	font-weight: 700;
	color:#364652;
}

header .menu li > a i,
#mobile-menu .menu li > a i {
	font-weight: 400;
}

header .menu li.active > a {
	background-color:rgba(0,0,0,0);
	color:#ec2e42;
}

header .menu li > a:hover,
header .menu li > a:focus,
header .menu li > a:active,
header.dark .menu li > a:hover,
header.dark .menu li > a:focus,
header.dark .menu li > a:active{
	color:#ec2e42
}

header.dark a,
header.dark .menu li > a {
	color:#fff;
}

header.dark,
header.dark h1,
header.dark h2,
header.dark h3,
header.dark h4,
header.dark h5,
header.dark h6{
	color:#fff;
}

header .menu li.tp-demo-link{
	padding-left:25px;
	padding-right:25px;
}

header .menu li.tp-demo-link > a{
	color:#ec2e42;
	padding:0 20px;
	border:solid 2px #ec2e42;
	border-radius:25px;
	height:50px;
	line-height: 46px;
}

header .menu li.tp-demo-link > a:hover,
header .menu li.tp-demo-link.active > a{
    background-color:#ec2e42;
    color:#fff;
}

header#pricing-header,
header#enquire-header{
	background-position:center top;
	margin-bottom:0;
}

header#pricing-header{
	background-image:url('../img/pricing-header.jpg');
}

header#contact-header{
	background-image:url('../img/contact-header.jpg');
	background-position:center top;
}

header#enquire-header{
	background-image:url('../img/enquire-header.jpg');
}

header#calculator-header{
	background-image:url('../img/calculator-header.jpg');
}

header#blog-header{
	background-image:url('../img/blog-header.jpg');
	background-position:center top;
}

header#mobile-website-header {
	background-image:url('../img/mobile-menu-header.jpg');
}

header#online-ordering-header{
	background-image:url('../img/online-ordering-header.jpg');
}

header#demo-header{
    background-image:url('../img/demo-header.jpg');
}

header#collaborations-header{
	background-image:url('../img/collaborations-header.jpg');
}

section .intro-row{
	padding-top:40px;
	padding-bottom:30px;
}

section .title-row {
	margin-bottom: 30px;
}

section#casestudy-andrews{
	background-image:url('../img/background-case-study-andrews.jpg');
}

section#casestudy-mrandmrspizza{
	background-image:url('../img/background-case-study-mrandmrspizza.jpg');
}

section#casestudy-kuu{
	background-color:#a1cae4;
	color:#000;
}

section#casestudy-kuu h2{
	color:#000;
}

section.casestudy{
	background-color:#364652;
	background-size:cover;
	color:#fff;
	padding:20px 0;
}

section.casestudy h2{
	color:#fff;
}

.casestudy-header{
	margin-bottom:20px;
}

.casestudy-link-row{
	margin:1rem;
}

section.dark,
section#pricing{
	background-color:#354653;
	color:#fff;
}

section.dark h1,
section.dark h2,
section.dark h5,
section#pricing h2 {
	color:#fff;
}

section#pricing .tp-price {
	font-size:54px;
	margin-top: 1.25em;
	margin-bottom: 0;
	line-height: 1em;
}

section#pricing table.tp-pricing-table thead,
section#pricing table.tp-pricing-table tbody,
section#pricing table.tp-pricing-table tbody tr{
	border:0;
	background-color:rgba(255,255,255,0);
}

section#pricing table.tp-pricing-table thead th,
section#pricing table.tp-pricing-table tbody td{
	font-size:0.75rem;
	color:#fff;
}

section#pricing table.tp-pricing-table tbody tr{
	border-top: dotted 1px rgba(255,255,255,0.25);
}

section#pricing table.tp-pricing-table tbody tr:first-child{
	border-top:0;
}

section#pricing .price-option-conditions a{
	color:#fff;
}

section#pricing .price-option-conditions a:hover{
	color:#ec2e42;
}

section#pricing,
section#compare,
section#faq,
section#custom-solutions,
section#calculator,
section#transaction-table,
.tp-content-section{
	padding-bottom:80px;
}

#pricing .option-tabs,
#compare .option-tabs {
	margin-bottom:2rem;
}

#pricing .option-tabs li > a{
	color:#fff;
}

#pricing .option-tabs li > a.active,
#compare .option-tabs li > a.active{
	border-bottom:solid 2px #ec2e42;
}

#pricing article.price-option{
	border-radius:10px;
	-moz-border-radius:10px;
	-webkit-border-radius:10px;
	background-color:#fff;
	padding:1.5rem 1rem;
	color:#354653;
}

#pricing article.price-option{
	margin-bottom:1rem;
}

#pricing article.price-option .price-option-header,
#pricing article.price-option .price-option-price {
	margin-bottom:2rem;
}

#pricing .price-option-features{
	list-style:none;
	margin:0 0 2rem;
}

#pricing .price-option-features li {
	color:#000;
	margin-bottom:2em;
}

#pricing article.price-option .button{
	margin-bottom: 0;
}

.priceTable {
	border-radius:10px;
	-moz-border-radius:10px;
	-webkit-border-radius:10px;
	background-color:#fff;
	max-width: 400px;
	margin:auto;
	-webkit-box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.25);
	-moz-box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.25);
	box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.25);
	overflow:hidden;
}

.priceTableHeader {
	background-color:#354653;
	padding:20px;
}

.priceTable .tp-price {
	font-size:72px;
	margin:45px 0 0;
	color:#354653;
	line-height:1em;
	text-align:center;
}

.priceTable .priceFeatures {
	list-style:none;
	margin:0;
	padding:0;
	display:block;
	border-top:solid 1px #efeaeb;
	margin-top:45px;
}

.priceTable .priceFeatures li {
	border-bottom:solid 1px #efeaeb;
	padding:14px 20px;
	text-align: center;
}

.priceTable .priceFeatures li small{
	display:block;
}

.priceTable .priceTableButton {
	margin:0 1rem 1rem;
}

.priceTable .priceTableTerms {
	margin:1rem;
	font-size:0.75rem;
	line-height:1em;
}

.priceTableHeader h4 {
	margin:0;
	color:#fff;
	font-size:18px;
}

#mrandmrspizza-testimonial-logo {
	width:200px;
	margin:0 auto 25px;
}

section#examples .example {
	padding:75px;
	min-height: 200px;
}

section#examples .example img {
	width: auto;
	height:150px;
}

section#examples #example-andrews {
	background-color: #000;
}

section#examples #example-mrandmrspizza {
	background-color: #ea314d;
}

section#examples #example-kuu {
	background-color: #a1cae4;
}

section#compare,
section#faq,
section#calculator,
.tp-content-section.tp-content-section-border{
	border-bottom:solid 1px #354653;
}

section#compare .compare-plan-title{
	color:#354653;
	margin-bottom:2rem;
}

section#compare .compare-table{
	margin-bottom:2rem;
}

section#compare .compare-table .grid-x{
	padding-top:1.5rem;
	padding-bottom:1.5rem;
}

section#compare .compare-table .grid-x:nth-child(odd) {
	background-color:#efeaeb;
}

section#compare .compare-feature-title{
	line-height:2em;
}

section#faq .faq{
	margin-bottom:2rem;
}

#enquire-form > .grid-x{
	margin-bottom:1.5rem;
}

section#services,
section#interested{
	background-color:#efeaeb;
}

section#services,
section#interested,
#footer-subscribe {
	padding:20px 0;
}

section#services h2 {
	margin-bottom: 2rem;
}

body#trendplate-home  header {
	background-color: rgba(255,255,255,0);
}

body#trendplate-home section#interested{
	background-color:#364652;
	color:#fff;
}

body#trendplate-home section#interested h2{
	color:#fff;
}

section#blog-post,
section#contact{
	margin-bottom:100px;
}

form#trendplate-contact{
	margin-bottom:70px;
}

.contact-list{
	margin-top:1rem;
	margin-bottom:2rem;
}

.contact-list > li {
	margin-bottom:1rem;
}

footer{
	background-color:#efeaeb;
	font-size:0.75rem;
}

footer .menu .menu-text{
	font-weight:400;
}

footer .footer-social{
	margin:15px auto 30px;
}

footer > nav {
	background-color:#364652;
	color:#fff;
	padding:30px 0;
}

footer > nav li a,
footer > nav li a:visited {
	color: #fff;
}

.footer-copyright{
	display:inline-block;
	line-height:1.5rem;
	padding-left:5px;
	padding-right:5px;
}

.footer-copyright > img{
	vertical-align:middle;
	margin-top:-2px;
}

.footer-social li > a,
.footer-social li > a:focus,
.footer-social li > a:active {
	color:#fff;
}

.footer-social li > a:hover{
	color:#ec2e42;
}

input[type=checkbox].css-checkbox,
input[type=radio].css-checkbox {
  position:absolute;
  visibility:hidden;
  z-index:-1000;

  + label.css-label {
    margin-left:0;
  }
}

input[type=checkbox].css-checkbox + label.css-label,
input[type=checkbox].css-checkbox + label.css-label.clr,
input[type=radio].css-checkbox + label.css-label,
input[type=radio].css-checkbox + label.css-label.clr {
  padding-left:32px;
  height:22px;
  display:inline-block;
  background-repeat:no-repeat;
  background-position: 0 0;
  vertical-align:middle;
  cursor:pointer;

  line-height:rem-calc(22);
}

input[type=checkbox].css-checkbox:checked + label.css-label,
input[type=checkbox].css-checkbox + label.css-label.chk,
input[type=radio].css-checkbox:checked + label.css-label,
input[type=radio].css-checkbox + label.css-label.chk {
  background-position: 0 -22px;
}

label.css-checkbox-label {
  background-image:url('../img/checkbox.jpg');
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;

  &.error{
    background-position:-22px 0;
  }
}

label.css-radio-label {
  background-image:url('../img/radio.jpg');
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}


.tp-calculator-num{
	color:#364652;
	font-size:22px;
	line-height:1.1em;
	margin-bottom:1.4em;
}

#demo-intro-points{
	margin-bottom:2rem;
}

.demo-steps{
    font-size:0;
    position:relative;
    margin-left:0;
    margin-right: 0;
}

.demo-steps::before{
    content:"";
    position: absolute;
    top:12px;
    left:10%;
    right:10%;
    border-top:solid 1px #364652;
}


.demo-steps li.step-point{
    display:inline-block;
    width:20%;
    font-size:12px;
    line-height:1.4em;
    vertical-align: top;
}


.demo-steps li.step-point .step-point-dot {
    height: 24px;
    width:24px;
    border-radius: 12px;
    border: solid 1px #364652;
    background-color:#fff;
    margin: 0 auto 20px;
    display:inline-block;
    position: relative;
}

.demo-steps li.step-point.active .step-point-dot::after{
    content:"";
    width: 12px;
    height:12px;
    top:5px;
    left:5px;
    background-color: #ec2e42;
    border-radius: 8px;
    display:inline-block;
    position: absolute;
}

.demo-steps li.step-point strong,
.demo-steps li.step-point span{
    display: block;
}

.tp-legal{
	font-size:0.75rem;
	line-height: 1.25em;
}

@media screen and (max-width: 39.9375em) {
	#trendplate-logo{
		margin:30px auto 40px 1rem;
	}

	#trendplate-logo img {
		width:155px;
		height:38px;
	}

	#mobile-menu-trigger{
		position:absolute;
		top:35px;
		right:15px;
	}

	#mobile-menu{
		background-color:#efeaeb;
		position:fixed;
		top:0;
		left:0;
		width:100%;
		height:100%;
		z-index:100;
	}

	#mobile-menu .menu li.active a {
		background-color:rgba(255,255,255,0);
		color:#ec2e42;
	}

	#mobile-menu .close-button{
		z-index:10;
		color:#354653;
	}

	#mobile-menu-content{
		position:absolute;
		width:100%;
		top:50%;
		transform:translateY(-50%);
	}

	#mobile-menu-logo{
		margin:50px auto 30px;
	}

	#mobile-menu .menu{
		margin-bottom:40px;
	}

	#mobile-menu .copyright{
		font-size:0.625rem;
	}

	#mobile-menu .menu li.tp-demo-link > a{
		color:#ec2e42;
	}

	header#mobile-website-header .title,
	header#online-ordering-header .title{
		height:260px;
	}

	section#mobilemenu > .content-container {
		position: absolute;
		bottom: 0;
	}

	section#mobilemenu .tp-mobile-menu-container {
		height:40vh;
		overflow-y: hidden;
	}

	.casestudy-app-mobile,
	#phone-demo-mobile{
		transform:translateX(0.625rem);
	}

	#pricing .price-option-container,
	#compare .compare-plan-cell:not(.compare-plan-launch){
		display:none;
	}

	.tp-demo-image{
		margin-bottom:15px;
	}

	#demo-intro-app-downloads,
	#trendplate-business-signup,
	#trendplate-business-login,
	#tp-demo-login-form,
	#tp-demo-setup-form-container,
	.tp-demo-image-helper,
	#tp-demo-setup-form-container .tp-demo-continue-button{
		margin-bottom:2rem;
	}

	#tp-demo-setup-form-container input[type="text"],
	#tp-demo-setup-form-container input[type="email"],
	#tp-demo-setup-form-container input[type="number"],
	#tp-demo-setup-form-container input[type="url"],
	#tp-demo-setup-form-container input[type="password"],
	#tp-demo-setup-form-container select,
	#tp-demo-setup-form-container textarea {
		font-size:1rem;
	}

	#tp-demo-setup-steps{
		margin-top:2rem;
		margin-bottom:3rem;
	}

	#demo-setup,
	#demo-login {
		min-height:calc(100vh - 50px);
	}

	.tp-mobile-menu-privacy{
		display: block;
		font-size:10px;
	}

	.footer-copyright > img{
		margin-bottom:2rem;
	}
}

@media screen and (min-width: 40em) {

	#mobile-menu,
	#mobile-menu-trigger{
		display:none;
	}

	.button:not(.small){
		padding:1.1rem;
	}

	h1{
		font-size:2.25rem;
	}

	h2{
		font-size:1.875rem;
	}

	header:not(.price-option-header){
		margin-bottom:70px;
	}

	header > nav{
		height:110px;
		padding-top:20px;
	}

	header > .title {
		height:150px;
	}

	header#mobile-website-header > .title,
	header#online-ordering-header > .title{
		height:290px;
	}

	#trendplate-logo{
		margin-left:30px;
		display:inline-block;
		vertical-align: top;
	}

	header .menu.align-left{
		margin-left:30px;
	}

	header .menu{
		margin-right:20px;
	}

	header .menu li > a {
		padding-top:0;
		padding-bottom:0;
		line-height:50px;
	}

	section#mobilemenu {
		transform:translateY(-180px);
	}

	section#mobilemenu .tp-mobile-menu-container {
		width:400px;
	}

	section#intro{
		min-height:calc(100vh - 180px);
		position:relative;
	}

	section#mobilemenu .button,
	section#intro .button{
		padding:20px 65px;
	}

	section#mobilemenu > .content-container,
	section#intro > .content-container{
		position:absolute;
		transform:translateY(-50%);
		width:100%;
	}

	section#mobilemenu > .content-container {
		top:50%;
	}
	section#intro > .content-container{
		top:calc(50% - 55px);
	}

	#phone-demo-desktop > img {
		max-height:75vh;
	}

	section .intro-row{
		padding-top:80px;
		padding-bottom:60px;
	}

	section#pricing,
	section#calculator,
	section#transaction-table{
		padding-bottom:80px;
	}

	section#pricing .tp-price {
		font-size:72px;
	}

	section.casestudy{
		padding-top:50px;
		padding-bottom:0;
	}

	.casestudy-app-desktop > img{
		max-width:75% !important;
	}

	.casestudy-links{
		margin:2.5rem 0;
	}

	section#services,
	section#interested{
		padding:50px 0;
	}

  .demo-steps{
      margin-bottom: 80px;
  }

	footer .footer-social{
		margin:0;
	}

	footer .footer-social .menu {
		float:right;
	}

	#footer-subscribe{
		padding:50px 0;
	}

	#demo-intro-points,
	#trendplate-business-signup,
	#trendplate-business-login,
	#tp-demo-login-form,
	#tp-demo-setup-intro,
	#tp-demo-setup-form-container{
		margin-bottom:5rem;
	}

	#demo-signup {
		min-height:calc(100vh - 415px);
	}

	#demo-setup,
	#demo-login {
		min-height:calc(100vh - 330px);
	}

	.tp-demo-form-setup-row{
		margin:6rem 0;
	}

	.tp-demo-form-setup-row-helper{
		opacity:0.5;
	}

	#mrandmrspizza-testimonial-logo {
		margin-bottom: 0
	}

}
