
/* All custom CSS here */

.pricing-wrapper::before {
    content: "";
    display: block;
    clear: both;
}

.sm-tabs {
    display: flex;
    border: 0;
    margin-bottom: 45px;
}
.sm-tabs > li {
    display: block;
    width: 100%;
    text-align: center;
    position: relative;
}
.sm-tabs >li>a ,
.sm-tabs > li.active > a,
.sm-tabs > li.active > a:hover,
.sm-tabs > li.active > a:active,
.sm-tabs >li.active > a:focus{
    border: 0;
}

.sm-tabs >li>a  {
    display: block;
    background-color: #eee;
    border-radius: 0;
    position: relative;
    font-weight: 600;
    text-transform: uppercase;
}

.sm-tabs > li > a:hover,
.sm-tabs >li.active > a,
.sm-tabs >li.active > a:focus,
.sm-tabs >li.active> a:hover,
.sm-tabs >li.active > a:active {
    background-color: #e8292a;
    color: #fff;
}

.sm-tabs > li.active::before {
    content: "";
    width: 32px;
    height: 32px;
    background-color: #e8292a;
    position: absolute;
    left: 50%;
    transform: rotate(45deg) translateX(-50%) translateY(60%);
    transform-origin: center;
    
    bottom: 0px;
}



@media ( min-width: 1200px ) {
    .pricing-wrapper {
        max-width: 91%;
    }
}


/* Locations page */
.location-maps-wrapper {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-gap: 20px 30px;
}

@media ( max-width: 768px ) {
    .location-maps-wrapper  {
        grid-template-columns: 1fr;
    }
}
.location-name-title {
    font-size: 1.615rem;
    color: #e6292a;
    font-weight: 300;
    margin-bottom: 30px;
}


.map-container {
    min-height: 150px;
    background-color: #eee;
    margin-bottom: 20px;
    position: relative;
}
.map-container .studio-map {
    height: 150px;
}

.map-container .studio-name {
    position: absolute;
    top: 0;
    left: 0;
}

.map-container .studio-name  a {
    background: #e8292a;
    color: #fff;
    text-decoration: none;
    display: block;
    padding: 5px 20px;
    text-transform: uppercase;
    font-weight: 300;

}


/* 

Individual Location page

*/

.locations-breadcrumb {
    margin-top: -80px;
    position: relative;
    display: flex;
}

@media ( max-width: 980px ) {
    .locations-breadcrumb {
       margin-top: 0px;
       position: relative;
       display: flex;
    }
}

.locations-breadcrumb a.breadcrumb-link {
    color: #777777;
    position: relative;
    font-size: 16px;
    display: flex;
    align-items: center;
    margin-right: 5px;
}

.locations-breadcrumb a.breadcrumb-link::after {
    content: "";
    display: inline-block;
    width: 12px;
    height: 12px;
    background-image: url("data:image/svg+xml,%3Csvg width='9' height='12' viewBox='0 0 9 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1.42757 12L0.429199 11L5.97569 6L0.429199 1L1.42757 0L8.08336 6L1.42757 12Z' fill='%23646464'/%3E%3C/svg%3E%0A");
    background-size: contain;
    background-repeat: no-repeat;
    margin-left: 10px;
    margin-right: 0px;
}
.locations-breadcrumb a.breadcrumb-link.active {
    color: #E7292A;
}
.locations-breadcrumb a.breadcrumb-link.active::after {
    color: red;
    display: none;
}



.studio-location .contact-row {
    position: relative;
    margin-bottom: 45px;
}

.location-page-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    
}

.location-page-header  .schedule-col a {
    display: block;
    background-color: #E7292A;
    color: #fff;
    font-size: 1.5em;
    padding: 0.36em 1em;
    line-height: 1;
    text-transform: uppercase;
    
}
.location-page-header h3 {
    font-size: 2.25em;
    margin: 0.5em 0;
    margin-right: 1.5em;
    font-weight: 400;
    text-transform: uppercase;
    color: #E7292A;
}



@media ( min-width: 980px ) {
    .studio-location .contact-row {
        max-width: 75%;
    }
}

@media ( max-width: 979px ) {
    .studio-location  {
        padding-left: 15px;
        padding-right: 15px;
    }
}


.studio-location .location-page-subheader {}


.studio-location .location-page-subheader .detail-item {
    display: flex;
    margin-bottom: 0.25em;
    padding: 0.25em 0;
    font-size: 16px;
    color: #979797;
}
.location-page-subheader .detail-item .icon {
    display: block;
    margin-right: 15px;
}

.address-text {
    display: inline;
    border-bottom: 1px solid #979797;
}


/* Contact form */


.studio-selection select {
    width: 100%;
    font-size: inherit;
    width: 100%;
    height: 2.25em;
    border: 1px solid;
    border-color: #a6a6a6;
    border-radius: 2px;
    -webkit-transition: -webkit-border-color 1s ease-out;
    -moz-transition: -moz-border-color 1s ease-out;
    -ms-transition: border-color 1s ease-out;
    -webkit-transition: border-color 1s ease-out;
    -moz-transition: border-color 1s ease-out;
    -o-transition: border-color 1s ease-out;
    transition: border-color 1s ease-out;
    font-family: Gotham, "Helvetica Neue", Helvetica, Arial, sans;
    outline: none;
    text-transform: uppercase;
}



/* Location page gallery */
.location-main-content .about-carousel {
    width: 100% !important;
}



/* LOCATIONS PAGE */

.locations-subheader p {
    font-size: 0.875em;
    color: #858585;
    padding: 1em;
    margin-left: 0;
}

.location-detail-content {}

.location-detail-content h3 {
    margin: 1.5em 0 !important;
    margin-bottom: 0.5em !important;
    text-transform: uppercase;
    font-weight: normal;
    font-size: 1.1em;
    line-height: 1.2em;
    color: #ed433e;
    margin: 0;
}


/* Pricing page */
.locations-tab-content .pricing-container {
    padding: 15px 15px;
}

/* Fixing modal button style */
#classes #confirm-modal .modal-footer .btn, 
#classes #confirm-modal .modal-footer .btn+.btn{
    margin: 0;
}


/* Fix cognito forms button click issue */
@media ( max-width: 747px ) {
    .content-contact .contact-row.cognito-form-row:before, 
    .content-contact .contact-row.cognito-form-row:after {
        display: table;
        clear: both;
    }
    
    .content-contact .contact-row.cognito-form-row .contact-column {
        position: relative;
    }
    
    .content-contact .contact-row.cognito-form-row .contact-column .contact-message-block {
        top: 0;
        padding: 20px 0;
    }
}



/* Waitlist modal */
.waitlist-modal-overlay {
    position: fixed;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    background: #fff;
    background-color: rgba(255, 255, 255, 0.8);
    z-index: -1;
    opacity: 0;
    -ms-transition: opacity 0.4s ease-out, z-index 1s;
    -webkit-transition: opacity 0.4s ease-out, z-index 1s;
    -moz-transition: opacity 0.4s ease-out, z-index 1s;
    -o-transition: opacity 0.4s ease-out, z-index 1s;
    transition: opacity 0.4s ease-out, z-index 1s;
    display: flex;
    align-items: center;
    justify-content: center;
    
}

.waitlist-modal-overlay.active  {
    opacity: 1;
    z-index: 999999999;
    display: flex;
    align-items: center;
    justify-content: center;
}

.waitlist-modal-overlay > .waitlist-modal {
    width: 90%;
    margin: 0 auto;
    max-width: 520px;
    position: absolute;

    background: #ec433d;
    -ms-transition: height 0.1s ease-in-out, width 0.1s ease-in-out;
    -webkit-transition: height 0.1s ease-in-out, width 0.1s ease-in-out;
    -moz-transition: height 0.1s ease-in-out, width 0.1s ease-in-out;
    -o-transition: height 0.1s ease-in-out, width 0.1s ease-in-out;
    transition: height 0.1s ease-in-out, width 0.1s ease-in-out;
    color: #fff;
    align-self: center;
}

.waitlist-modal-overlay .waitlist-modal-close { 
    width: 0.6em;
    height: 0.6em;
    font-size: 3em;
    color: #eae9e9;
    top: 0.3em;
    right: 0.2em;
    text-align: right;
    position: absolute;
    display: block;
    z-index: 10;
}
.waitlist-modal {
    padding: 30px;
}
.waitlist-action-btns {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    padding-top: 30px;
}
.waitlist-action-btns a {
    margin: 0 10px;
}
.waitlist-action-btns a.waitlist-cancel {
    color: #fff;
    background: transparent;
}

.waitlist-modal .confirm-heading {
    font-weight: 700;
    color: #fff;
    text-transform: uppercase;
    font-size: 1.3em;
}


@media ( max-width: 768px ) {
    .waitlist-action-btns {
        flex-direction: column-reverse;
    }
}


/* 

Signup page styling 
*/
@media ( max-width: 768px ) {
    #new .page-header   > h1{
        margin-left: 0;
    }
    
    #new .page-header .signupform-copy-text{
        margin-left: 0;
    }

    #new #checkoutbilling .controls, form[name="customerForm"] .controls {
        margin-left: 0;
        width: 100%;
        padding-left: 0;
    }
    #new form[name="customerForm"] .controls > input:not([type="checkbox"]), 
    #new #checkoutbilling .controls > input:not([type="checkbox"]) {
        width: 100%;
    }
}


/*
* BF Sale item
*/
li.bf-sale-item.bf-sale-item {
    display: none !important;
}

li.bf-sale-item.bf-sale-item {
    font-size: 1em;
}
li.bf-sale-item.bf-sale-item a{
    font-weight: 600;
    color: #e7292a;
    font-size: 1.54em;
}

li.bf-sale-item.bf-sale-item a:hover {
    color: #000;
}

.menu-expand-pane .menu-navigation ul  li.bf-sale-item a {
    color: #e7292a;
}
.menu-expand-pane .menu-navigation ul  li.bf-sale-item a:hover {
    color: #000;
}