/*!
Theme Name: Shinobi - Frame
Theme URI: https://www.robfenech.co.uk/
Author: Rob Fenech
Author URI: https://www.robfenech.co.uk/
Description: Description
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: shinobi
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned with others.

Shinobi is based on Underscores https://underscores.me/, (C) 2012-2017 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/

a {cursor:pointer;}

.fkl-pagination .disabled {opacity:.3;pointer-events:none;}
.fkl-pagination a {cursor:pointer;}
.member_box.loading, .member-single-inner.loading {opacity:.5;}

.fkl-filter-classes ul a.fkl-change-class:after {content:"Sessions";}

.fkl-modal {z-index:-1;
transition: opacity .3s;
-moz-transition: opacity .3s;
-webkit-transition: opacity .3s;
-o-transition: opacity .3s;
}
.fkl-modal.loading, .fkl-modal.loaded {z-index:250;}
.fkl-modal.init {opacity:1;}

.package-row__inner--cell {flex-grow:1;text-align:center;}

/* .fkl-class.fkl-full {color:red;}
.fkl-modal .fkl-full {color:red;font-size:.85rem;} */

.new-card.loading {opacity:.5;}

.fkl-timetable-filter {
    background: #ff0000;
    text-align: center;
    padding-bottom: 2rem;
    display: flex;
    align-items: center;
    justify-content: center;
}

.fkl-timetable-filter > a {
    display: block;
    margin: 0 0.5rem;
    border: 1px solid #ccc;
    border-radius: 2px;
    color: #fff;
    background: transparent;
    padding: 1rem;
    margin-bottom: 1rem;
}

.fkl-timetable-filter > a.toggled {
    background: #fff;
    color: #111;
}

.fkl-modal-inner {
  border: 3px solid #E01C23;
}
.fkl-modal-inner a.fkl-close {
  color: #E01C23;
}

.fkl-modal-inner h4 {
  background: #E01C23;
  display: table;
  margin: 0 0 40px 0;
  padding: 1.3rem;
  font-size: 3rem;
  color: white;
  text-transform: uppercase;
}

.fkl-modal-inner .fkl-class-intro > p {
  line-height: 24px;
  font-family: 'Archer', sans-serif;
  font-weight: 700;
  text-transform: uppercase;
  font-size: 16px;
}

.fkl-modal-inner .fkl-cal-td.fkl-class {
    padding: 1rem;
}

.fkl-modal-inner.fkl-3ds {width:90vw;max-width:54rem;padding:0;height:90vh;max-height:64rem;}

.spreedly-modal-overlay {position:fixed;}

.od_description {
  min-height: 200px;
}

#od-active-filters {
  display: flex;
  flex-wrap: wrap;
}
#od-active-filters a {
  display: block;
  text-decoration: underline;
  text-transform: uppercase;
  color: #E01C23;
  font-size: 1.8rem;
  font-weight: 700;
  margin-right: 2.2rem;
  margin-bottom: 2rem;
}
#od-active-filters a.clear_filters {
  text-decoration: underline;
  text-transform: uppercase;
  color: #000000;
  font-size: 1.8rem;
  font-weight: 700;
  margin-right: 0;
}

input[type=button], input[type=submit] {outline:none;}

.fkl-modal-row input, .fkl-modal-row a, .fkl-class input {background-size:1.5rem!important;background-position:center!important;background-repeat:no-repeat!important;}
.fkl-modal-row.fkl-fc-backup {margin:-1rem 0 3rem;font-size:1.5rem;color:#333;}
.fkl-modal-row.fkl-fc-backup .fkl-text-link {border-bottom:1px dotted #E01C23;}
.fkl-modal-row.fkl-fc-backup .fkl-text-link:hover {border-bottom-style:solid;}

input.loading, input.fkl-loading, a.fkl-loading, .fkl-class.loading input {pointer-events:none;opacity:.5;}
input.fkl-loading, a.fkl-loading:not(.fkl-text-link), .fkl-class.loading input, .fkl-modal.loading .fkl-modal-inner {background-image:url(assets/images/rolling.svg)!important;color:transparent!important;background-size:1.5rem!important;background-position:center!important;background-repeat:no-repeat!important;}
a.fkl-loading.fkl-text-link {pointer-events:none;opacity:.5;}

.fkl-modal .fkl-class-book, .fkl-modal .fkl-class-fave {display:none;}
.fkl-modal.loading .fkl-modal-inner {background-image:url(assets/images/rolling-red.svg)!important;pointer-events:none;}
.fkl-modal.loading .fkl-modal-inner > *, .fkl-modal.loading iframe.fkl-modal-inner {opacity:0;}

.fkl-filter-classes ul a.fkl-change-club:after {
  content:'Locations';
}
.fkl-filter-classes ul a.fkl-change-class:after {
  content:'Class Types';
}
.fkl-filter-classes ul a.fkl-change-mood:after {
  content:'Moods';
}
.fkl-filter-classes ul a.fkl-change-instructor:after {
  content:'Instructors';
}

.fkl-class-fave {
    display: none!important;
}

.fkl-cal-td.fkl-class {
  border-bottom: 1px solid #ffffff;
}

a.fkl-change-class + ul > li.pt {
    display: none;
}
.single_credit.hide {
  display: none!important;
}


.terms-modal.fkl-modal.fkl-no-remove.loading.init .fkl-modal-inner {
  opacity: 1;
}

.fkl-modal.init {
  z-index: 999;
}

.fkl-status.active.success {
    font-size: 1.3em;
    color: black;
    background: yellow;
    display: table;
    margin: 3rem auto;
    padding: 2rem;
}

body.reset .fkl-status.active.success {
    background: transparent;
    padding: 0;
    margin: 0 auto;
}

body.reset .fkl-status.active.success > span {
  display: block;
  font-size: 1.3em;
  color: black;
  background: yellow;
  display: table;
  margin: 3rem auto;
  padding: 2rem;
}


body.reset .fkl-status.active.success > a {
      display: block;
      background: #e01c23;
      padding: 1rem;
      color: white;
      font-weight: 400;
      text-transform: uppercase;
}
.account_form input[type=submit] {
    background: #e01c23;
    border: none;
    outline: none;
    padding: 1rem 2rem;
    text-transform: uppercase;
    color: white;
    font-weight: 700;
}


.booking-table--single.fkl-class > div + small {
    margin: 0px 0 0 -20px!important;
    background: red;
    padding: 1rem 2rem;
		color: white;
		font-size: 15px;
}

/* Hide clubs from timetable */
/* a.fkl-change-club.active + ul > li.hammersmith,
a.fkl-change-club.active + ul > li.farringdon,
a.fkl-change-club.active + ul > li.angel,
a.fkl-change-club.active + ul > li.fitzrovia,
a.fkl-change-club.active + ul > li.kings-cross,
a.fkl-change-club.active + ul > li.shoreditch,
a.fkl-change-club.active + ul > li.victoria {
    display: none;
}

a.fkl-change-club.active + ul > li.hammersmith,
a.fkl-change-club.active + ul > li.farringdon{
    display: none;
} */

/* a.fkl-change-club.active + ul > li.hammersmith {
    display: none;
} */

body.page-id-16 .fkl-class .fkl-class-time {
    width: 12%;
    max-width: 12%;
    text-align: center;
    padding-right: 0;
}

.form_column .phone-wrapper {position:relative;}
.form_column .phone-wrapper .modal-content {display:none;}
.form_column .phone-wrapper input.readonly {pointer-events:none;}
.phone-validate {position:absolute;right:1rem;top:50%;height:2rem;line-height:2rem;margin-top:-1rem;color:#fff;text-transform:uppercase;font-size:1.125rem;font-weight:bold;letter-spacing:.05em;}
.phone-validate:not(.valid) {background-color:#E01C23;border-radius:3px;padding:0 .5rem;}
.phone-validate:not(.valid):before {content:"Verify";}
.phone-validate.valid {background:url('assets/images/twilio_valid.svg') 0 0 no-repeat; background-size: 21px; width:2rem;border-radius:50%;pointer-events:none;}
.twilio-modal .twilio-error {display:none;margin:1rem 0 2rem;color:#E01C23;font-weight:600;font-size:1.25rem;}
a.twilio-submit {
    display: inline-flex;
    background: #e01c24;
    padding: 1rem;
    color: white;
    text-transform: uppercase;
}
.twilio-verify > input {
    padding: 0.8rem;
}

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

body .booking-table--single.fkl-class {
    padding: 0 2rem 2rem;
}

body .booking-table--single.fkl-class {
  padding: 0;
}
body .booking-table--single.fkl-class > .flex {
    flex-wrap: wrap;
}

body .booking-table--single.fkl-class > .flex .fkl-class-cancel {
    display: block; width: 100%;
}

footer#sitebase .footer {
  flex-wrap: wrap;
}

footer#sitebase .footer .footer__info {
  margin-top: 2rem;
  width: 100%;
}

body footer#sitebase .footer__info--socials {
  justify-content: center;
}

.footer__info--copy {
  text-align: center;
}

.demand_page__classes--wrapper .single_class--thumbnail .view_more p {
    display: flex;
    align-items: center;
    justify-content: center;
}

.demand_page__classes--wrapper .single_class--thumbnail .view_more p > span.arrow {
  background: url(assets/images/chevron_white.svg) 0 0 no-repeat;
  display: inline-block;
  width: 10px;
  background-size: 10px;
  height: 10px;
  margin: 1rem 0 1rem 1rem;
  transform: rotate(0deg);
  position: relative;
  top: 2px;
  left: -2px;
}

.demand_page__classes--wrapper .single_class--thumbnail .view_more.active p > span.arrow {
  transform: rotate(-180deg);
  top: -2px;
}

}

header#masthead .header_banner .content h4 p {
    margin: 0;
}

.fkl-modal-row .fkl-price > span:not(:empty):before {content:"£";}
.fkl-price .fkl-original.fkl-strike {text-decoration:line-through;color:red;}
.no-wallet-buy-now .buy-button a .fkl-price .fkl-original.fkl-strike {color:inherit;}

img.aligncenter {
    display: table;
    margin: auto;
}

.page.demand_page {
    overflow: visible;
}

.fkl-cal-td.fkl-class[data-service="STUDIO IN USE"],
.fkl-cal-td.fkl-class[data-service="INSTRUCTOR TRAINING"],
.fkl-cal-td.fkl-class[data-service="INSTRUCTOR SIGN OFFS"],
.fkl-cal-td.fkl-class[data-service*="PRIVATE PARTY"],
.fkl-cal-td.fkl-class[data-service*="PRIVATE SWEAT"],
.fkl-cal-td.fkl-class[data-service*="PRIVATE SCULPT"],
.fkl-cal-td.fkl-class[data-service*="PRIVATE YOGA"],
.fkl-cal-td.fkl-class[data-service*="PRIVATE PILATES"],
.fkl-cal-td.fkl-class[data-service*="ONLINE PRIVATE ZOOM"],
.fkl-cal-td.fkl-class[data-service*="ONLINE PT"] {
    display: none;
}

/* .fkl-cal-td.fkl-class[data-activityid="8"],
.fkl-cal-td.fkl-class[data-activityid="7"] {
    display: none;
} */

.fkl-interim-package-modal .fkl-status {text-align:left;}
.fkl-interim-package-modal .fkl-promo-apply {
	background: #e01c23;
    outline: none;
    border: none;
    padding: .75rem 1.25rem;
    color: white;
    text-transform: uppercase;
	font-size:1.25rem;
	margin-left:.5em;
}

.fkl-modal-row-inner .fkl-description {font-size: 11px;}

body.on-demand .pricing-purchase-next.flex {
    display: none;
}


input.fkl-promo-input {
    width: 100%;
    margin-bottom: 1rem;
    padding: 0.5rem;
}



/* .single_class.cat_11 {
    display: none;
}

.single_class.cat_12 {
    display: none;
} */

#od-filters > li > ul.fkl-sub li.HOW-TO.SERIES, #od-filters > li > ul.fkl-sub li.WORKOUT.WEEKS {
  display: none;
}


body.single-workoutweek .demand_page__classes--wrapper .single_class,
body.single-howto .demand_page__classes--wrapper .single_class{
    display: block!important;
}

.demand_page__featured .single_class--thumbnail .duration > p {
    text-transform: lowercase;
}

.workout_week--image .wrap {
    position: relative;
    height: auto;
    min-height: 300px;
}

@media screen and (max-width: 500px) {
	.workout_week + section.video_list .single_class {
    width: 100%;
}
	.demand_page__hero .watch-header > h1 { width: 100%; font-size: 2.8rem!important; }

	.demand_page__hero .watch-header > a, .demand_page__hero .watch-header > span { display: none; }
}

.join_page__form .fkl-error {color:red;margin:1rem 0;}

a.fkl-change-club.active + ul > li.online { display: none; }

.buying_wrapper + h6 {
    font-size: 2rem;
    line-height: 1.2;
    max-width: 300px;
    margin: 2rem auto 1rem;
}
@media screen and (min-width: 1440px) {
  section.prices_page__table_new .container--wide {
    max-width: 1440px;
}
}
a.fkl-change-club.active + ul > li.farringdon {
    display: none;
}

@media screen and (max-width:959px) {
	.hero_slider_module .large_content_slide, .hero_slider_module .small_content_slide { height: auto!important; }
}

@media screen and (min-width:768px) {
  .large_image_slide.single_slide.fit_contain {
    background-size: contain!important;
  }
  .mobile_image_only {
    display: none!important;
  }
}
@media screen and (max-width:768px) {
  .large_image_slide.single_slide.fit_contain {
    background-image:none!important;
  }
  .mobile_image_only {
    display:block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    z-index: -1;
    object-fit: contain;
    height: 500px;

  }
  .mobile_image_only img {
    display: block;
    object-fit: contain;
    height: 500px;
    width: 100%;
  }
}

.demand_page__filters { z-index: 999!important; }

.fkl-announcements-loadspace.hideMumhood > div[data-genre=MUMHOOD] {
  display:none!important;
}


body.page-template-page-billing-app header#masthead, body.page-template-page-billing-app footer#sitebase {display:none;}


.new_landing_hero_image {

}

.new_landing_hero_image a {
  width: 100%;
  height: auto;
  display: block;
  border: none;
  padding: 0!important;
}

.new_landing_hero_image a img {
  width: 100%;
  height: auto;
  display: block;
}
.new_landing_hero_image a img.mobile {
  display:none;
}

a.yellow-pill {
  padding: 0.8rem 3rem 0.6rem 3rem;
border-radius: 5rem;
text-align: center;
font-size: 2.2rem;
font-weight: 700;
-webkit-box-shadow: 5px 5px 0 black;
box-shadow: 5px 5px 0 black;
background-color: #FBEE2D;
color: #000;
-webkit-transition: 300ms ease all;
-o-transition: 300ms ease all;
transition: 300ms ease all;
}

a.yellow-pill:hover {
  background-color: #000;
color: #FBEE2D;
}

@media screen and (max-width:620px) {
  .new_landing_hero_image a img.mobile {
    display:block;
  }
  .new_landing_hero_image a img.desktop {
    display:none;
  }
}

a.fkl-change-club + ul > li.fitzrovia {
    display: none;
}

.blog_archive__posts .nav_wrapper a:only-child {
    margin-right: 0;
    margin-left: auto;
}

body.page-template-page-mumhood .fkl-class-time .fkl-class-time--date {
    display: inline-block;
}

section.classes_archive__wrapper > .flex.flexWrapper {
    gap: 1rem;
}

.classes_archive__wrapper > .flex.flexWrapper .single_class {
    width: calc(50% - 0.75rem);
	height: 300px;
}	

@media screen and (min-width: 768px) {
.classes_archive__wrapper > .flex.flexWrapper .single_class {
    width: calc(33.333% - 0.75rem);
	height: 300px;
}	
}

@media screen and (min-width: 1023px) {
.classes_archive__wrapper > .flex.flexWrapper .single_class {
    width: calc(25% - 0.75rem);
	height: 300px;
}	
}
