@charset "UTF-8";
/************************************************

Stylesheet: Main Stylesheet

*************************************************/
/*********************
GENERAL STYLES
*********************/

body,h1,h2,h3,h4,h5,h6, ul, ul li {font-family: 'Noto Sans', sans-serif; color:#888;}
h1,h2,h3,h4,h5,h6 {font-family: 'Montserrat', sans-serif;}
body.single-product h1 {padding-left: 24px;}
h2 {margin-bottom: 1.5rem; font-size:2em; color:#ed1c24;}
.cta h3 {color:#fff;}
a {color: #ed1c24;}
a:hover {color:#000;}
section.top,.top-bar, .top-bar ul {background: #ffffff;}
.top-bar-left .logo {max-width: 40%;}
@media only screen {
  .top-bar-left .logo {max-width: 60%; margin:0 auto;}
  .nav {
    margin-top: 0;
    position: relative;
    top: -40px;}
}
@media only screen and (min-width: 40em) {
  .tob-bar-left .logo {max-width: 40%; float: left; margin:0;}
}
@media only screen and (min-width: 64em) {
  .top-bar-left .logo {max-width: 60%; float:left;}
  .top-bar-right {
  margin-top: 20px;
  position: relative;
  top:0;}
}

p.large {font-size: 4em; color: #ffffff;}
p.sub {font-size:1em; color: #ffffff;}
.menu a {color:#6c6c6c; text-transform: uppercase; font-weight: bold; font-size: 0.9em;}
.menu .active>a {color:#ed1c24; background: none;}
.button.hollow {background: #ed1c24; border:none; color: #ffffff;}
.button.hollow:hover {background: #ffffff; color:#6c6c6c;}
.button.pill {border-radius: 50px;}
.button.pill a {color: #ffffff !important;}
.menu>li>a {padding: .2rem 1rem;}
.menu li a:hover {color:#ed1c24;}
.menu li.mega-pill:hover {color:#6c6c6c;}
.content-block {padding:50px 0 50px 0;}
.service-img-block {
  text-align: center;
}

.panel-grid-cell .widget-title {
  text-align: center;
  padding-bottom: 50px;
}

[type=color], [type=date], [type=datetime-local], [type=datetime], [type=email], [type=month], [type=number], [type=password], [type=search], [type=tel], [type=text], [type=time], [type=url], [type=week], textarea {color:#cacaca;}

footer.footer {background: #000000; margin-top: 0; padding: 50px 0 50px 0; color:#ffffff;}
footer.footerbottom {background: #ffffff;}
footer h4 {color: #999; font-size: 1em; font-weight: bold; text-transform: uppercase; margin-bottom: 30px;}
#content #inner-content {padding: 0 !important;}
ul {list-style-type:disc;}
ul li {display: list-item;}
footer .widget ul li {display:block;}
footer .widget ul li a {font-weight: normal; text-transform: none;}

footer.footer ul li a {padding:.4rem 0; font-size: 0.9em;}
footer p {font-size: 0.9em;}
aside#text-4 a {color: #ffffff;}

footer ul.social-footer {display: inline-block; margin-left:0;}
footer ul.social-footer li {display: inline-block; width: 40px;}
p.copyright {padding-top: 10px;}
.dropdown.menu.medium-horizontal>li.opens-left>.is-dropdown-submenu {left:0; right:0;}
ul.submenu li a {padding:.2rem 0 .2rem 0;}
.so-widget-sow-button-wire-63197d5bc34a .ow-button-base a:visited, .so-widget-sow-button-wire-63197d5bc34a .ow-button-base a:active, .so-widget-sow-button-wire-63197d5bc34a .ow-button-base a:hover {color:#ffffff !important;}
.so-widget-sow-button-wire-63197d5bc34a .ow-button-base a {
  color:#ffffff !important;
  background: #000000 !important; 
}
input.wpcf7-submit {background-color: #ed1c24;
    border: none;
    color: #fff;
    padding: 20px;
    border-radius: 40px;
    transition:background-color .25s ease-out,color .25s ease-out;}
input.wpcf7-submit:hover {background:#000;}
.so-widget-sow-button-wire-94c2810240cc .ow-button-base a {background: #000000 !important; border: none !important;}
#mega-menu-wrap-main-nav #mega-menu-main-nav > li.mega-menu-item > a.mega-menu-link {line-height: 37px !important;}
#panel-4-2-0-1 .textwidget, #panel-11-1-0-1 .textwidget {
  display: block;
  margin-bottom: 100px;
  float: left;
}

@media screen and (max-width: 39.9375em) {
  span.prompt {padding: 0 0 20px 0; display: inline-block;}
  .mailchimp-button, .fields {margin-bottom: 20px;}
  #inner-footer {text-align: center;}
  aside#nav_menu-2, aside#nav_menu-3 {margin-bottom: 20px;}
}


span.prompt {font-size: 1.45em;}

@media screen and (min-width: 40em) and (max-width: 63.9375em) {
  span.prompt {font-size: 1.3em; display: inline-block; padding: 0 0 20px 0;}
}

.so-widget-sow-price-table-atom-69a0e078a5ac .ow-pt-columns-atom .ow-pt-column .ow-pt-button a.ow-pt-link {border-radius:50px !important; font-family: 'Noto Sans', sans-serif;}

.so-widget-sow-price-table-atom-69a0e078a5ac .ow-pt-columns-atom .ow-pt-column .ow-pt-title .ow-pt-subtitle {font-size: 0.7em !important;}

.callout.secondary.light {
  background: #fff !important;
  box-shadow: 0 0 30px #f1f1f1;
  border: none;
}

.callout.secondary {
  border: none;
  border-bottom: solid 3px #ebebeb;
  background: #f1f1f1;
}
.caption {background: rgba(0,0,0,0.7);}
.caption p {font-size: 0.9em; color:#ffffff; padding:10px;}

.single-product .woocommerce-Price-amount {display: none;}
p.form-row .woocommerce-Price-amount {display: inline;}
.related.products, #comments, p.byline {display: none;}
.tabs {border: none !important;}
.woocommerce-tabs {display: none;}

/**** pricing tables ****/
.rpt_style_basic .rpt_plan .rpt_foot {font-size: 20px; font-weight: 800;}
.rpt_style_basic .rpt_plan .rpt_title {text-align: center !important; font-size: 21px;}
.rpt_style_basic .rpt_plan .rpt_head .rpt_price {line-height: 70px; font-size: 33px; background: -webkit-gradient(linear, left bottom, left top, color-stop(0, #de3737), color-stop(1, #e14949))}

.woocommerce #respond input#submit.alt, .woocommerce a.button.alt, .woocommerce button.button.alt, .woocommerce input.button.alt {background: #8dba09 !important;}
.woocommerce .quantity .qty {display: none;}
.product_meta {display: none;}
.woocommerce div.product form.cart {
	background: #f1f1f1;
	padding: 20px;
	border-radius: 10px;
}

div.product-addon-totals {
	border-top: 1px solid #b3b3b3;
	border-bottom: 1px solid #b3b3b3;
}
div.product-addon-totals .wc-pao-subtotal-line {
	border-top: 1px solid #b3b3b3;
}
.woocommerce.columns-4 {display: none;}

/********************
BOOKING FORMS
*********************/
[type=color], [type=date], [type=datetime-local], [type=datetime], [type=email], [type=month], [type=number], [type=password], [type=search], [type=tel], [type=text], [type=time], [type=url], [type=week], textarea {color:#000;}

input:focus::-webkit-input-placeholder {
text-align:right;
color:#fff;
}
input:focus:-moz-placeholder { /* Firefox 18- */
text-align:right;
color:#fff;
}
input:focus::-moz-placeholder { /* Firefox 19+ */
text-align:right;
color:#fff;
}
input:focus:-ms-input-placeholder {
text-align:right;
color:#fff;
}
.wpcf7-form textarea:focus::-webkit-input-placeholder {
text-align:right;
color:#fff;
}
.wpcf7-form textarea:focus:-moz-placeholder { /* Firefox 18- */
text-align:right;
color:#fff;
}
.wpcf7-form textarea:focus::-moz-placeholder { /* Firefox 19+ */
text-align:right;
color:#fff;
}
.wpcf7-form textarea:focus:-ms-input-placeholder {
text-align:right;
color:#fff;
}
/**********
MAILCHIMP FORM
*********************/

.mc4wp-form-theme input[type=email] {width: 260px; display: inline-block; margin-right:20px;}

@media screen and (min-width: 40em) and (max-width: 63.9375em) {
 
  .mc4wp-form-theme input[type=email] {width: 200px; display: inline-block;}

  }

.mailchimp-button, .fields {display:inline-block;}

span.wpcf7-not-valid-tip {
  color: #f00;
    font-size: 0.8em;
    display: block;
    background: rgba(237, 28, 36, 0.1);
    padding: 5px 10px;
}

[type=color], [type=date], [type=datetime-local], [type=datetime], [type=email], [type=month], [type=number], [type=password], [type=search], [type=tel], [type=text], [type=time], [type=url], [type=week], textarea {margin:0;}

.mc4wp-form-basic .mc4wp-success, .mc4wp-form-theme .mc4wp-success {color:#ffffff !important; padding-top: 30px !important;}

.mc4wp-form-theme-red button, .mc4wp-form-theme-red input[type=submit] {background: #000 !important; color:#ffffff !important; transition:background-color .25s ease-out,color .25s ease-out;}

.mc4wp-form-theme input[type=submit] {border-radius: 40px; padding: 12px 25px;}

/*********************
PRICING TABLES
*********************/

.so-widget-sow-price-table-atom-8ec8d9556c1f .ow-pt-columns-atom .ow-pt-column .ow-pt-title {
  border: none !important;
  border-radius: 0 !important;
  background: #000 !important;
}
.so-widget-sow-price-table-atom-69a0e078a5ac .ow-pt-columns-atom .ow-pt-column .ow-pt-details .ow-pt-price {
  font-size: 1.5em !important;
}
.so-widget-sow-price-table-atom-8ec8d9556c1f .ow-pt-columns-atom .ow-pt-column .ow-pt-button a.ow-pt-link {
  background: #ed1c24 !important;
  border: none !important;
  color: #fff !important;
  padding: 20px;
  border-radius: 40px !important;
  font-size: 1.2em !important;
  transition:background-color .25s ease-out,color .25s ease-out;
}
.so-widget-sow-price-table-atom-8ec8d9556c1f .ow-pt-columns-atom .ow-pt-column .ow-pt-button a:hover {background: #000 !important;}

.so-widget-sow-price-table-atom-69a0e078a5ac .ow-pt-columns-atom .ow-pt-column .ow-pt-button {
  background: none !important;
  border: none !important;
}

.so-widget-sow-price-table-atom-8ec8d9556c1f .ow-pt-columns-atom .ow-pt-column .ow-pt-title .ow-pt-subtitle {font-size: 0.7em !important;}
.so-widget-sow-price-table-atom-8ec8d9556c1f .ow-pt-columns-atom .ow-pt-column .ow-pt-details .ow-pt-price {font-size: 1.8em !important;}

@media only screen and (max-width: 640px) {
	.rpt_style_basic .rpt_plan .rpt_head .rpt_price {
		line-height: 70px !important;
		font-size: 30px !important;	
	}
	.rpt_style_basic .rpt_plan .rpt_title {
		font-size: 18px !important;
	}
}

/*********************
HOVER EFFECTS
**********************/

.grid {
  position: relative;
  margin: 0 auto;
  padding: 1em 0 4em;
  max-width: 1200px;
  list-style: none;
  text-align: center;
}

/* Common style */
.grid figure {
  position: relative;
  float: left;
  overflow: hidden;
  margin: 10px 1%;
  min-width: 320px;
  max-width: 600px;
  max-height: 360px;
  width: 48%;
  background: #333333;
  text-align: center;
  cursor: pointer;
}

.grid figure img {
  position: relative;
  display: block;
  min-height: 100%;
  max-width: 100%;
  opacity: 0.4;
}

.grid figure figcaption {
  padding: 2em;
  color: #fff;
  text-transform: uppercase;
  font-size: 1.25em;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

.grid figure figcaption::before,
.grid figure figcaption::after {
  pointer-events: none;
}

.grid figure figcaption,
.grid figure figcaption > a {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/* Anchor will cover the whole item by default */
/* For some effects it will show as a button */
.grid figure figcaption > a {
  z-index: 1000;
  text-indent: 200%;
  white-space: nowrap;
  font-size: 0;
  opacity: 0;
}

.grid figure h2 {
  font-size: 24px;
  word-spacing: -0.15em;
  font-weight: 300;
  color: #ffffff;
}

.grid figure h2 span {
  font-weight: 800;
}

.grid figure h2,
.grid figure p {
  margin: 0;
}

.grid figure p {
  letter-spacing: 1px;
  font-size: 68.5%;
}

figure.effect-sadie figcaption::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: -webkit-linear-gradient(top, rgba(0,0,0,0) 0%, rgba(0,0,0,0.8) 75%);
  background: linear-gradient(to bottom, rgba(0,0,0,0) 0%, rgba(0,0,0,0.8) 75%);
  content: '';
  opacity: 0;
  -webkit-transform: translate3d(0,50%,0);
  transform: translate3d(0,50%,0);
}

figure.effect-sadie h2 {
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  color: #FFFFFF;
  -webkit-transition: -webkit-transform 0.35s, color 0.35s;
  transition: transform 0.35s, color 0.35s;
  -webkit-transform: translate3d(0,-50%,0);
  transform: translate3d(0,-50%,0);
}

figure.effect-sadie figcaption::before,
figure.effect-sadie p {
  -webkit-transition: opacity 0.35s, -webkit-transform 0.35s;
  transition: opacity 0.35s, transform 0.35s;
}

figure.effect-sadie p {
  position: absolute;
  bottom: 0;
  left: 0;
  padding: 2em;
  width: 100%;
  opacity: 0;
  -webkit-transform: translate3d(0,10px,0);
  transform: translate3d(0,10px,0);
}

figure.effect-sadie:hover h2 {
  color: #fff;
  -webkit-transform: translate3d(0,-50%,0) translate3d(0,-40px,0);
  transform: translate3d(0,-50%,0) translate3d(0,-40px,0);
}

figure.effect-sadie:hover figcaption::before ,
figure.effect-sadie:hover p {
  opacity: 1;
  -webkit-transform: translate3d(0,0,0);
  transform: translate3d(0,0,0);
}

figure a.button {background: red;}
figure a.button:hover {background: transparent; border: 2px solid #fff;}

/*********************
LINK STYLES
*********************/
a:link, a:visited:link {
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0.3); }

/*********************
H1, H2, H3, H4, H5 P STYLES
*********************/
h1 a, .h1 a, h2 a, .h2 a, h3 a, .h3 a, h4 a, .h4 a, h5 a, .h5 a {
  text-decoration: none; }

/*********************
HEADER STYLES
*********************/
.header ul.off-canvas-list li {
  list-style: none; }

/*********************
NAVIGATION STYLES
*********************/
.top-bar .title-area {
  z-index: 1; }

.off-canvas-list ul {
  margin-left: 0; }
  .off-canvas-list ul li a {
    border-bottom: 0px; }
  .off-canvas-list ul .dropdown {
    margin-left: 20px; }

/*********************
POSTS & CONTENT STYLES
*********************/
#content #inner-content {
  padding: 1rem 0rem; }

.page-title .vcard {
  border: 0px;
  padding: 0px; }

.byline {
  color: #999; }

.entry-content img {
  max-width: 100%;
  height: auto; }

.entry-content .alignleft, .entry-content img.alignleft {
  margin-right: 1.5em;
  display: inline;
  float: left; }

.entry-content .alignright, .entry-content img.alignright {
  margin-left: 1.5em;
  display: inline;
  float: right; }

.entry-content .aligncenter, .entry-content img.aligncenter {
  margin-right: auto;
  margin-left: auto;
  display: block;
  clear: both; }

.entry-content video, .entry-content object {
  max-width: 100%;
  height: auto; }

.entry-content pre {
  background: #eee;
  border: 1px solid #cecece;
  padding: 10px; }

.wp-caption {
  max-width: 100%;
  background: #eee;
  padding: 5px; }
  .wp-caption img {
    max-width: 100%;
    margin-bottom: 0;
    width: 100%; }
  .wp-caption p.wp-caption-text {
    font-size: 0.85em;
    margin: 4px 0 7px;
    text-align: center; }

.post-password-form input[type="submit"] {
  display: inline-block;
  text-align: center;
  line-height: 1;
  cursor: pointer;
  -webkit-appearance: none;
  transition: all 0.25s ease-out;
  vertical-align: middle;
  border: 1px solid transparent;
  border-radius: 0;
  padding: 0.85em 1em;
  margin: 0 1rem 1rem 0;
  font-size: 0.9rem;
  background: #2199e8;
  color: #fff; }
  [data-whatinput='mouse'] .post-password-form input[type="submit"] {
    outline: 0; }
  .post-password-form input[type="submit"]:hover, .post-password-form input[type="submit"]:focus {
    background: #1583cc;
    color: #fff; }

/*********************
IMAGE GALLERY STYLES
*********************/
/*********************
PAGE NAVI STYLES
*********************/
.page-navigation {
  margin-top: 1rem; }

/*********************
COMMENT STYLES
*********************/
#comments .commentlist {
  margin-left: 0px; }

#respond ul {
  margin-left: 0px; }

.commentlist li {
  position: relative;
  clear: both;
  overflow: hidden;
  list-style-type: none;
  margin-bottom: 1.5em;
  padding: 0.7335em 10px; }
  .commentlist li:last-child {
    margin-bottom: 0; }
  .commentlist li ul.children {
    margin: 0; }

.commentlist li[class*=depth-] {
  margin-top: 1.1em; }

.commentlist li.depth-1 {
  margin-left: 0;
  margin-top: 0; }

.commentlist li:not(.depth-1) {
  margin-left: 10px;
  margin-top: 0;
  padding-bottom: 0; }

.commentlist .vcard {
  margin-left: 50px; }
  .commentlist .vcard cite.fn {
    font-weight: 700;
    font-style: normal; }
  .commentlist .vcard time {
    float: right; }
    .commentlist .vcard time a {
      color: #999;
      text-decoration: none; }
      .commentlist .vcard time a:hover {
        text-decoration: underline; }
  .commentlist .vcard img.avatar {
    position: absolute;
    left: 10px;
    padding: 2px;
    border: 1px solid #cecece;
    background: #fff; }

.commentlist .comment_content p {
  margin: 0.7335em 0 1.5em;
  font-size: 1em;
  line-height: 1.5em; }

.commentlist .comment-reply-link {
  float: right; }

/*********************
COMMENT FORM STYLES
*********************/
.respond-form {
  margin: 1.5em 10px;
  padding-bottom: 2.2em; }
  .respond-form form {
    margin: 0.75em 0; }
    .respond-form form li {
      list-style-type: none;
      clear: both;
      margin-bottom: 0.7335em; }
      .respond-form form li label,
      .respond-form form li small {
        display: none; }
    .respond-form form input[type=text],
    .respond-form form input[type=email],
    .respond-form form input[type=url],
    .respond-form form textarea {
      padding: 3px 6px;
      background: #efefef;
      border: 2px solid #cecece;
      line-height: 1.5em; }
      .respond-form form input[type=text]:focus,
      .respond-form form input[type=email]:focus,
      .respond-form form input[type=url]:focus,
      .respond-form form textarea:focus {
        background: #fff; }
      .respond-form form input[type=text]:invalid,
      .respond-form form input[type=email]:invalid,
      .respond-form form input[type=url]:invalid,
      .respond-form form textarea:invalid {
        outline: none;
        border-color: #fbc2c4;
        background-color: #f6e7eb;
        -ms-box-shadow: none;
        box-shadow: none; }
    .respond-form form input[type=text],
    .respond-form form input[type=email],
    .respond-form form input[type=url] {
      max-width: 400px;
      min-width: 250px; }
    .respond-form form textarea {
      resize: none;
      width: 97.3%;
      height: 150px; }

#comment-form-title {
  margin: 0 0 1.1em; }

#allowed_tags {
  margin: 1.5em 10px 0.7335em 0; }

.nocomments {
  margin: 0 20px 1.1em; }

/*********************
SIDEBARS & ASIDES
*********************/

/*********************
FOOTER STYLES
*********************/
.footer {
  clear: both;
  margin-top: 1em; }

/*********************
FOUNDATION STYLES
*********************/

/*********************
PLUGIN STYLES
*********************/
.gform_body ul {
  list-style: none outside none;
  margin: 0; }

/******************************************************************

Stylesheet: Retina Screens & Devices Stylesheet

When handling retina screens you need to make adjustments, especially
if you're not using font icons. Here you can add them in one neat
place.

******************************************************************/
/******************************************************************

Stylesheet: Print Stylesheet

This is the print stylesheet. There's probably not a lot
of reasons to edit this stylesheet. 

Remember to add things that won't make sense to print at 
the bottom. Things like nav, ads, and forms shouldbe set 
to display none.
******************************************************************/
@media print {
  * {
    background: transparent !important;
    color: black !important;
    text-shadow: none !important;
    -webkit-filter: none !important;
    filter: none !important;
    -ms-filter: none !important; }
  a, a:visited {
    color: #444 !important;
    text-decoration: underline; }
    a:after, a:visited:after {
      content: " (" attr(href) ")"; }
    a abbr[title]:after, a:visited abbr[title]:after {
      content: " (" attr(title) ")"; }
  .ir a:after,
  a[href^="javascript:"]:after,
  a[href^="#"]:after {
    content: ""; }
  pre, blockquote {
    border: 1px solid #999;
    page-break-inside: avoid; }
  thead {
    display: table-header-group; }
  tr, img {
    page-break-inside: avoid; }
  img {
    max-width: 100% !important; }
  @page {
    margin: 0.5cm; }
  p, h2, h3 {
    orphans: 3;
    widows: 3; }
  h2,
  h3 {
    page-break-after: avoid; }
  .sidebar,
  .page-navigation,
  .wp-prev-next,
  .respond-form,
  nav {
    display: none; } }


.mwb_wpr_apply_custom_points, .wps_wpr_apply_custom_points {
	display: flex !important;
}

.shop_table.cart .mwb_wpr_apply_custom_points #mwb_cart_points {
	background: #fff !important;
}

#mwb_cart_points_apply {
	width: 240px;
}

#mwb_cart_points_apply ~ p {
	font-weight: bold;
	color: #888;
	padding-left: 18px !important;
	padding-top: 8px !important;
}

.woocommerce table.cart td.actions .input-text, .woocommerce-page #content table.cart td.actions .input-text, .woocommerce-page table.cart td.actions .input-text {
	width: 150px;	
}


@media screen and (max-width: 768px) {
	.shop_table.cart .mwb_wpr_apply_custom_points #mwb_cart_points {
		width: 120px !important;
	}
	.mwb_wpr_apply_custom_points, .wps_wpr_apply_custom_points {
	display: block !important;
	}
	input#wps_cart_points {
		width: 100% !important;
	}
	.shop_table.cart .wps_wpr_apply_custom_points #wps_cart_points {
		max-width: 100% !important;
		margin-bottom: 6px !important;
	}
}

dl dt {
	margin-bottom: 0 !important;
}

.top-header .row {text-align: right;}
.woo-acc-links {
	padding-right: 20px;
}
.woo-acc-links a {
	font-size: 12px;
}

.woocommerce {
	margin-top: 30px;
	margin-bottom: 30px;
	padding-left: 20px;
	padding-right: 20px;
}
#wps_cart_points_apply ~ p {
	width: auto !important;
	padding-right: 0px;
	padding-top: 7px;
	padding-left: 10px;
}