* { margin: 0; padding: 0; }

/*var(--main-color);
var(--lighter-color);
var(--darker-color);*/

html,body { height: 100%; }
body { background: #fff; font: 14px/1.4 'Roboto Condensed', 'Helvetica', 'Arial'; -webkit-font-smoothing:antialiased; -webkit-text-size-adjust: none; }

title { text-transform: capitalize; }

a { text-decoration: none; }
a,
button,
a.btn { transition: background-color 0.3s, color 0.3s; cursor: pointer; }
input[type="submit"] { -webkit-appearance: none; }

h1, h2, h3, h4, h5, h6 { line-height: 1.3; font-family: 'Roboto', 'Helvetica', 'Arial'; }

h1 { font-size: 30px; }
h2 { font-size: 28px; }
h3 { font-size: 26px; }
h4 { font-size: 24px; }
h5 { font-size: 22px; }
h6 { font-size: 20px; }

.info-box:after,
.inner-radio:after,
.section-authorize:after,
.shell:after,
.clearfix:after,
.step .radio-field .more-info .info-action:after,
.tab-pane .trow:after,
.paymentmethods-list:after,
.paymentmethod-item .item-actions:after,
.schedule-wrapper .section-head:after,
.tab-pane .thead:after { visibility: hidden; display: block; font-size: 0; content: " "; clear: both; height: 0; }
.shell { max-width: 1400px; margin: 0 auto; padding: 0 20px; box-sizing: border-box; }

.membership-wrapper { position: relative; min-height: 100%; font: 14px/1.3 'Roboto Condensed', 'Helvetica', 'Arial'; }
.membership-wrapper .header { position: fixed; top: 0; left: 0; width: 100%; z-index: 99; padding: 5px 0 0; background: #fff; line-height: 50px; box-shadow: 0 2px 5px rgba(0,0,0,0.5); }
.membership-wrapper .header .shell { position: relative; }
body .mobile-el { display: none!important; }

.logo { float: left; }
.logo img { display: block; max-height: 50px; width: auto; }

.header ul { list-style-type: none; margin: 0; }
.header ul li { display: inline-block; vertical-align: middle; }

.nav { float: left; font-size: 18px; line-height: 1.3; padding: 6px 0 0 0; margin-left: 30px; min-height: 49px; }
.nav ul { }
.nav > ul > li { position: relative; margin-left: 25px; }
.nav > ul > li:before { position: absolute; bottom: 0; left: 0; width: 100%; height: 3px; content: ''; background: #41bad8; transform: scale(0); transition: all 0.3s; }
.nav ul li.active:before { transform: scale(1); }
.nav ul li:first-child { margin-left: 0; }
.nav > ul > li > a { position: relative; display: block; vertical-align: middle; padding: 13px 10px 13px 50px; color: #151515; text-decoration: none; text-transform: uppercase; border-radius: 2px 2px 0 0; transition: background-color 0.2s, color 0.2s; }
.nav > ul > li > a:before { position: absolute; top: 50%; left: 10px; content: ''; transform: translateY(-50%); }
.nav > ul > li > a.icon-profile:before { width: 32px; height: 32px; background: url(../images/cp-icon-profile.png) no-repeat 0 0; background-size: 32px 64px; }
.nav > ul > li > a.icon-shcedule:before { width: 36px; height: 36px; background: url(../images/cp-icon-schedule.png) no-repeat 0 0; background-size: 36px 73px; }
.nav > ul > li > a.icon-myshcedule:before { width: 35px; height: 40px; background: url(../images/cp-icon-myschedule.png) no-repeat 0 0; background-size: 35px 80px; }
.nav > ul > li > a.icon-subscription:before { width: 35px; height: 39px; background: url(../images/cp-icon-subscriptions.png) no-repeat 0 0; background-size: 35px 80px; }
.nav > ul > li > a.icon-language:before { width: 31px; height: 31px; background: url(../images/cp-icon-language.png) no-repeat 0 0; background-size: 31px 63px; }
.nav > ul > li > a:hover,
.nav > ul > li:hover > a { background: #41bad8; color: #fff; }
.nav > ul > li > a:hover:before,
.nav > ul > li:hover > a:before { background-position: 0 bottom; }

.nav ul li ul { position: absolute; top: 100%; left: 0; min-width: 100%; background: #fff; box-shadow: 0 1px 1px rgba(0,0,0,0.2); border-radius: 0 0 2px 2px; opacity: 0; visibility: hidden; transform: translateY(-10px); transition: all 0.3s; }
.nav ul li:hover ul { opacity: 1; visibility: visible; transform: translateY(0); }
.nav ul li ul li { display: block; margin: 0; padding: 0; border-bottom: 1px solid #ccc; }
.nav ul li ul li:last-child { border-bottom: 0; }
.nav ul li ul li a { display: block; padding: 8px 7px; font-size: 14px; color: #333; }
.nav ul li ul li a:hover { color: #fff; background: #41bad8; }

.nav > ul > li.lang-link { position: absolute; right: 20px; top: 50%; transform: translateY(-50%); margin-top: 3px; }

.v li:after { content: '/'; display: inline-block; vertical-align: middle; margin-left: 4px; color: #fff; }
.v li:last-child:after { content: none; }

/*.lang-nav { float: right; }
.lang-nav li { text-transform: uppercase; }
.lang-nav li:after { content: '|'; display: inline-block; vertical-align: middle; margin: -2px 4px 0; color: #fff; }
.lang-nav li:last-child:after { content: none; }
.lang-nav li a { color: #fff; }
.lang-nav li a:hover { color: #41bad8; }*/
/*html[lang="en"] .lang-nav li a[data-lang="en"],
html[lang="bg"] .lang-nav li a[data-lang="bg"] { color: var(--lighter-color); }*/

.menu-trigger {  }
.menu-trigger { position: absolute; top:50%; right: 5px; display: none; margin-top: -21.5px; width: 40px; }
.menu-trigger:after, 
.menu-trigger:before, 
.menu-trigger span { background-color: #41bad8; border-radius: 3px; content: ''; display: block; height: 5px; margin: 7px 0; transition: all .2s ease-in-out; }
.show-menu .menu-trigger:before { transform: translateY(12px) rotate(135deg); }
.show-menu .menu-trigger:after { transform: translateY(-12px) rotate(-135deg); }
.show-menu .menu-trigger span { transform: scale(0); }

.logout { position: relative; float: right; color: #fbfbfb; margin-left: 20px; min-width: 80px; }
.logout a { color: #fff; }
.logout .dd { position: absolute; top: 100%; right: 0; line-height: 1.3; padding-top: 10px; opacity: 0; visibility: hidden; transition: opacity 0.3s, visibility 0.3s; }
.logout.active .dd { opacity: 1; visibility: visible; }
.logout .dd a { display: block; padding: 10px; background: rgba(64, 74, 76, 0.80); border-bottom: 1px solid #fff; color: #fff; }
.logout .dd a:hover { background: #3799b1; }

.membership-wrapper .content { padding: 100px 0; min-height: 100%; box-sizing: border-box; }
.membership-wrapper .header.ng-hide + .content { padding-top: 20px; }

.section-authorize { position: relative; background: #fff; color: #444; max-width: 700px; margin: 0 auto; padding: 0; border: 1px solid #dddddd; }
.section-authorize:after { }
.section-authorize.single { max-width: 350px; }
.section-authorize h4 { display: block; box-sizing: border-box; padding: 10px; font-size: 18px; line-height: 1.4; background: #3799b1; color: #fff; text-transform: uppercase; text-align: center; }
.section-authorize .head-row h4 { float: left; width: 50%; display: block; box-sizing: border-box; padding: 10px; font-size: 16px; line-height: 1.4; background: #3799b1; color: #fff; text-transform: uppercase; text-align: center; transition: background-color 0.3s; cursor: pointer; }
.section-authorize .head-row h4:hover,
.section-authorize .head-row h4.active { background: #20829a }
.section-authorize .head-row h4:first-child { border-right: 1px solid #dddddd; }

/*.section-authorize .section-col.register form { border-right: 1px solid #dddddd; }
.section-authorize .section-col.register h4 { border-right: 1px solid #fff; }*/
.section-authorize .section-col.login { width: 50%; box-sizing: border-box; padding: 0; margin: 0 auto; }
.section-authorize .section-col.login .checkbox-group input { position: relative; top: 1px; }
/*.success-msg  */
.section-authorize.single .section-col { width: 100%; display: block; margin: 0; }
.section-authorize .form-group { display: block; margin-bottom: 15px; position: relative; }
.section-authorize .section-col.register .form-fields .form-group { width: 49%; float: left; margin-left: 2%; }
.section-authorize .section-col.register .form-fields .form-group:nth-child(2n+1) { margin-left: 0; }
.section-authorize .section-col.register .form-row-last { float: left; padding-top: 18px; width: 100%; }
.section-authorize .form-group label { display: block; float: none; margin: 0 0 2px;}
.section-authorize .form-group label i { color: red;}
.section-authorize .checkbox-group label { display: inline-block; margin: 0 5px 0 0; }
.section-authorize .form-group .form-control { display: block; float: none; width: 100%; padding: 5px 10px; height: 30px; box-sizing: border-box; background: #fbfbfb; border: 1px solid #dddddd; transition: background-color 0.3s; font-size: 12px; line-height: 18px; font-style: normal; }
.section-authorize .form-group select.form-control { height: 30px; box-sizing: border-box; padding: 0; }
/*.section-authorize .form-group .intl-tel-input { height: 27px; }
.section-authorize .form-group .intl-tel-input .selected-flag { height: 27px; }*/
.section-authorize .form-group .form-control:focus { background: #f3f2f2; }
.section-authorize .form-actions { text-align: center; padding: 20px 0 0 0; }
.section-authorize .form-actions a,
.section-authorize .form-actions input { display: inline-block; vertical-align: middle; padding: 7px 10px; margin: 0 10px; border: 0; background: #3799b1; color: #fff; cursor: pointer; transition: background 0.3s; font-size: 14px; font-weight: 700; line-height: 1.4; font-family: Arial; cursor: pointer; }
.section-authorize input.hidden { opacity: 0; visibility: hidden; position: absolute; }
.section-authorize .form-actions a.disabled,
.section-authorize .form-actions input.disabled { opacity: 0.5; cursor: none; pointer-events: none; }
.section-authorize .validation-box { text-align: center; padding-top: 0; }
.section-authorize .validation-box + .form-actions { padding-top: 5px; }



.step-actions,
.section-authorize .form-actions { position: relative; }

.step-actions .loader-wrap,
.section-authorize .form-actions .loader-wrap { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); opacity: 0; visibility: hidden; }

.step-actions .actions,
.section-authorize .form-actions .actions { transition: opacity 0.3s; }

.step-actions.loading .loader-wrap,
.section-authorize .form-actions.loading .loader-wrap { opacity: 1; visibility: visible; }

.step-actions.loading .actions,
.section-authorize .form-actions.loading .actions { opacity: 0.1; pointer-events: none; }

.section-authorize .form-group .radios-row { padding: 6px 0; }
.section-authorize .form-group .radios-row .radio-field { display: inline-block; margin-right: 20px; }
.section-authorize .form-group .radios-row label { display: inline-block; margin: 0; }
.section-authorize .form-group .radios-row input { position: relative; top: 2px; }
.section-authorize .form-group .date-field { position: relative; }
.section-authorize .form-group .date-field input { display: block; width: 100%; padding: 5px 30px 5px 10px; height: 30px; box-sizing: border-box; box-sizing: border-box; background: #fbfbfb; border: 1px solid #dddddd; transition: background-color 0.3s; font-size: 12px; line-height: 18px; font-style: normal; }
.section-authorize .form-group .date-field i { position: absolute; top: 50%; right: 5px; transform: translateY(-50%); }
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
   .section-authorize .form-group .date-field { margin-bottom: 5px; }
}

.section-authorize .success-msg { padding: 20px 0 0; color: #3799b1; font-size: 16px; text-align: center; }

.section-authorize .form-actions a:hover,
.section-authorize .form-actions input:hover { background: #04404e; }

.section-authorize form { padding: 20px; }

.section-authorize .section-valid { position: relative; text-align: center; padding: 20px; color: #fff; background: #ab4120; }
.section-authorize .section-valid.success { background: #20ab5e; }
.section-authorize .section-valid ul { display: inline-block; margin: 0; padding: 0; text-align: left; }

.resetSuccess { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: #fff; z-index: 999; text-align: center; }
.resetSuccess h4 { margin-bottom: 80px; }
.resetSuccess a { padding: 15px 30px; border-radius: 2px; background: #30a728; color: #fff; font-weight: 700; font-size: 16px; }

.section-addtext { max-width: 700px; margin: 0 auto; box-sizing: border-box; padding: 20px; font-size: 14px; line-height: 1.7; }

.membership-item { position: relative; display: inline-block; vertical-align: top; width: 32%; box-sizing: border-box; margin: 0 -4px 20px 2%; border-radius: 5px; color: #fff; background: #3799b1; border: 1px solid #fff; box-shadow: 1px 1px 4px rgba(0,0,0,0.3); text-shadow: 1px 1px 1px rgba(0,0,0,0.3); transition: background-color 0.3s; }
.membership-item:first-child:last-child { display: block; margin: 0 auto; max-width: 500px; width: auto; }
.membership-item:first-child:last-child .inner { padding-bottom: 20px; }

.membership-item:before { position: absolute; top: 0; left: 0; width: 100%; height: 100%; content: ''; background: url(../images/card-icon.png) no-repeat center center; opacity: 0.2; transition: opacity 0.3s; }
.membership-item:hover:before { opacity: 0.07; }
.membership-item:hover { background-color: #0ca6c5; }
.membership-item .inner { position: relative; padding: 10px 15px 50px; min-height: 235px; }
.membership-item:nth-child(3n+1) { margin-left: 0; }
.membership-item .title { padding: 5px 0; margin-bottom: 10px; font-size: 22px; line-height: 1.3; text-transform: uppercase; color: #fff; border-bottom: 1px solid rgba(214, 214, 214, 0.3); text-shadow: 1px 1px 1px rgba(0,0,0,0.2); }
.membership-item ul { list-style-type: none; margin: 0; padding: 0; }
.membership-item li { display: block; padding: 2px 0; text-align: justify; font-size: 0; line-height: 0; }
.membership-item li:after { width: 100%; display: inline-block; content: ''; }
.membership-item li span,
.membership-item li strong { display: inline-block; font-size: 18px; line-height: 1.3; }
.membership-item li.price strong { color: #da2511; font-size: 22px; }

.membership-item .payment-label { padding: 20px 0 5px; font-size: 20px; line-height: 1.3; text-transform: uppercase;
 text-align: center; }

.payment-form { padding: 10px 0 50px 0; }
.payment-form .field-wrap { display: inline-block; width: 100%; padding-bottom: 10px; }
.payment-form .ccz-row .field-wrap { padding-bottom: 0; }
.field-wrap label { display: block; }
.field-wrap.usedCard { padding-bottom: 0px; }
.field-wrap input,
.field-wrap select,
.field-wrap .inputField { display: block; width: 100%; height: 30px; padding: 5px 10px; box-sizing: border-box; font-size: 16px; line-height: 20px; background: rgba(255,255,255,0.5); color: #000; border: 0; }

.payment-form .field-wrap.size-large { width: 74%; margin-right: -4px; }
.payment-form .field-wrap.size-small { width: 49%; margin-right: -4px; margin-left: 2%; }
.payment-form .field-wrap.size-small-bic { width: 24%; margin-right: -4px; margin-left: 2%; }
.payment-form .field-wrap.size-medium { width: 48%; margin-right: -4px; margin-left: 0; }
.payment-form .field-wrap.size-small:first-child,
.payment-form .field-wrap.size-medium:first-child { margin-left: 0; }

.payment-form.cb .field-wrap.size-small-bic { margin-left: 0; margin-right: 2%; }
.payment-form.cb .field-wrap select.field-select { display: inline-block; width: 48%; margin-left: 4%; margin-right: -4px; vertical-align: middle; }
.payment-form.cb .field-wrap select#cc-exp-month { margin-left: 0; }

.membership-item .member-actions { position: absolute; bottom: 0; left: 15px; right: 15px; padding: 10px 0; text-align: right; border-top: 1px solid rgba(214, 214, 214, 0.3); }
.membership-item .btn { display: inline-block; float: none; padding: 5px 25px 4px; background: #ab4120; border-radius: 3px; color: #fff; text-transform: uppercase; font-size: 16px; line-height: 1.3; transition: background-color 0.3s, color 0.3s;  text-decoration: none; font-family: 'Roboto Condensed'; text-shadow: none; }
.membership-item .btn:hover { background: #fff; color: #ab4120; }

.ccz-row,
.field-row-with-zip { position: relative; padding-right: 75px; }
.ccz-row .field-half,
.field-row-with-zip .field-half { display: inline-block; vertical-align: top; width: 49%; margin-left: 2%; margin-right: -4px; }
.ccz-row .field-half:first-child,
.field-row-with-zip .field-half:first-child { margin-left: 0; }

.ccz-row .field-zip,
.field-row-with-zip .field-zip { position: absolute; top: 50%; right: 0; width: 70px; transform: translateY(-50%); }
.ccz-row .field-zip input,
.field-row-with-zip .field-zip input { padding: 5px; }

.membership-wrapper .footer { position: absolute; bottom: 0; left: 0; width: 100%; box-sizing: border-box; padding: 5px 20px 20px; }
.membership-wrapper .footer .powered { float: right; color: #333; line-height: 43px; }
.membership-wrapper .footer .powered img { max-height: 30px; }
.membership-wrapper .footer .powered img,
.membership-wrapper .footer .powered small { display: inline-block; vertical-align: middle; }
.membership-wrapper .footer .powered small { margin-top: 5px; font-size: 12px; }
.footer-actions { float: left; display: none; }
.show-forgetme .footer-actions { display: block; }
.footer-actions h6 { display: block; font-weight: 400; font-size: 16px; text-transform: uppercase; line-height: 1.3; }
.footer-actions a { position: relative; display: inline-block; padding: 3px 8px 1px; margin-right: 5px; font-size: 14px; line-height: 1.4; border-radius: 2px; box-shadow: 0 1px 1px rgba(0,0,0,0.3); background: #cecece; text-align: center; color: #404a4c; text-transform: uppercase; box-sizing: border-box; }
.footer-actions a:hover { background: #404a4c; color: #fff; }
.footer-actions a.disabled { opacity: 0.5; }
.footer-actions a.disabled:hover { background: #cecece; color: #404a4c; }
.footer .popup-actions,
.footer .popup-alert .popup-body p.warning-msg { text-align: center; }

.popup-wrapper .response-msg,
.popup-wrapper.responded .def-msg { display: none; }
.popup-wrapper.responded .response-msg { display: block; }
.popup-wrapper.responded .popup-actions .agree { display: none; }

.dashboard {}
.dashboard .sections-visits { margin-top: 200px; }

.col { display: inline-block; vertical-align: top; box-sizing: border-box; margin-right: -4px; }
.dashboard .title,
.sections-visits .title,
.section-head { margin-bottom: 10px; text-transform: uppercase; text-align: center; border-bottom: 5px solid #3799b1; font-weight: 400; }
.section-head h2 { font-weight: 400; }
.section-head,
.dashboard .title,
.sections-visits .title { text-align: left; }
.col-half { width: 48%; margin-left: 4%; }
.col-half:nth-child(2n+1) { margin-left: 0; }

.info-box { margin-bottom: 10px; font-size: 16px; line-height: 1.4; text-align: center; }
.info-box img { display: block; width: 150px; height: auto; margin: 0 auto 10px; }
.info-box ul { list-style-type: none; margin: 0; }
.info-box ul li { padding: 10px 0 2px; box-shadow: 0 1px 1px -1px rgba(0,0,0,0.2); }
.info-box ul li a { color: #3799b1; }
.info-box ul li small { font-size: 12px; font-weight: 700; }
.info-box ul li.deposit i { display: inline-block; vertical-align: middle; content: ''; width: 25px; height: 25px; margin-left: 5px; margin-top: -8px; background: url(../images/deposit.png) no-repeat 0 0; background-size: 25px 25px; }
.info-box ul li.deposit strong { font-size: 16px; }
.info-box .small-box { display: inline-block; vertical-align: middle; width: 20px; height: 20px; margin-right: 10px; line-height: 20px; text-align: center; border: 1px solid rgba(55, 153, 177, 0.48); color: rgba(55, 153, 177, 0.48); }

.membership-box { position: relative; padding: 10px; margin-bottom: 10px; border-radius: 5px; background: rgba(55, 153, 177, 0.48); font-size: 16px; line-height: 1.4; }
.membership-box:before { position: absolute; bottom: 0; left: 0; content: ''; width: 100%; height: 100%; background: url(../images/card-icon.png) no-repeat center bottom; opacity: 0.2; background-size: 150px auto; }
.membership-box h4 { text-transform: uppercase; font-weight: 400; }
.membership-box p { padding: 5px 0; margin-bottom: 10px; box-shadow: 0 1px 1px -1px #fff; }
.membership-box p > span { margin-right: 10px; }
.membership-box p small { font-weight: 700; }
.membership-box .box-actions { text-align: right; }
.membership-box .btn { display: inline-block; padding: 7px 30px; line-height: 1.2; border-radius: 3px; color: #fff; background: rgba(36, 197, 26, 0.5); border-radius: 3px; text-transform: uppercase; }
.membership-box .btn:hover { background: rgba(36, 197, 26, 1); text-shadow: 1px 1px 1px rgba(0,0,0,0.5); }

.membership-box .btn.red { background: #e73737; color: #fff; }
.membership-box .btn.red:hover { background: #bf0404; color: #fff; }

.membership-box .box-content { display: none; padding-top: 10px; }
.membership-box .active .box-content { display: block; }
.membership-box .box-title { position: relative; margin-bottom: 10px; }
.membership-box .box-body,
.membership-box .box-actions { position: relative; }

.qrcode-box { border: 5px solid #000; width: 250px; margin: 0 auto; border-radius: 5px; padding: 10px; }
.qrcode-box span { display: block; font-weight: 700; font-size: 24px; line-height: 1.3; text-transform: uppercase; }

.membership-box,
.calendar-filter .field input { background: #404a4c; color: #fff; }
.membership-actions { margin-bottom: 10px; }
.membership-actions a,
.paymentmethods-actions a { display: block; padding: 15px 5px; border-radius: 2px; box-shadow: 0 1px 1px rgba(0,0,0,0.3); background: #3799b1; text-align: center; color: #fff; text-transform: uppercase; /*font-weight: bold;*/ font-size: 18px; }
.membership-actions a { display: inline-block; vertical-align: middle; width: 49%; margin: 0 -4px 5px 2%; box-sizing: border-box; }
.membership-actions a:nth-child(2n+1) { margin-left: 0; }
.membership-actions a:hover,
.paymentmethods-actions a:hover { background: #20829a; }
.membership-actions a:only-child,
.paymentmethods-actions a { width: 100%; display: block; margin: 0; }

.membership-tabs { display: flex; justify-content: space-between; margin-bottom: 10px; }
.membership-tab-link { position: relative; display: inline-block; width: 49%; text-align: center; }
.membership-tab-link input { position: absolute; opacity: 0; visibility: hidden; }
.membership-tab-link label { display: block; padding: 8px 5px 5px 5px; text-transform: uppercase; border-bottom: 2px solid #3799b1; cursor: pointer; transition: background 0.3s, color 0.3s; }
.membership-tab-link input:hover,
.membership-tab-link input:checked + label { background: #3799b1; color: #fff; }

/*.membership-box .box-title:after,
.membership-box .box-title:before { position: absolute; top: 50%; right: 5px; content: ''; background: #fff; transform: translateY(-50%); }
.membership-box .box-title:after { width: 13px; height: 2px; }
.membership-box .box-title:before { height: 13px; width: 2px; right: 10px; transition: opacity 0.3s, transform 0.3s; }
.membership-box .active .box-title:before { transform: translateY(-50%) rotate(-90deg); opacity: 0; }
*/

.sections-visits { width: 48%; }
.sections-visits p { padding-bottom: 10px; }
.sections-visits table { width: 100%; text-align: center; box-shadow: 0 1px 1px rgba(0,0,0,0.3); }
.sections-visits table th { font-size: 16px; border-bottom: 1px solid #3799b1; font-weight: 400; }
.sections-visits table td { padding: 5px 10px; }

/*.datefromto { display: inline-block; vertical-align: middle; }*/

.membership-wrapper .row { margin-bottom: 40px; }

.tabs {}
.tabs ul.nav-tabs { display: block; margin: 0; padding: 0; float: none; }
.tabs ul.nav-tabs li { display: inline-block; vertical-align: middle; float: none; }
.tabs ul.nav-tabs li a { display: block; padding: 8px 10px; border-radius: 2px 2px 0 0; background: #3799b1; color: #fff; }
.tabs ul.nav-tabs li a:hover { color: #fff; background: #20829a; }
.tabs ul.nav-tabs li.active a { background: #20829a; }

.tab-pane { display: none; }
.tab-pane.active { display: block; }

.tab-pane table { width: 100%; border-collapse: collapse; border: 1px solid #ccc; border-bottom: 0; }
/*.tab-pane table { width: 100%; border-collapse: collapse; border: 1px solid #ccc; border-bottom: 0; }*/
.tab-pane table th,
.tab-pane table td { padding: 4px 10px; text-align: center; border: 1px solid #ccc; }
.tab-pane table th:first-child,
.tab-pane table td:first-child { text-align: left; }
.tab-pane table th { font-weight: 700; }
.tab-pane table td { }
.tab-pane table th { background: #badce4; color: #333;  }

.tab-slide { display: none; }
.tab-pane .thead .tcol { font-weight: bold; background: #badce4; color: #333; }
.tab-pane .trow,
.tab-pane .thead { position: relative; overflow: hidden; }
.tab-pane .tcol { position: relative; width: 25%; box-sizing: border-box; float: left; padding: 4px 10px; text-align: center; border-top: 1px solid #ccc; border-right: 1px solid #ccc; }
.tab-pane .tcol:before { position: absolute; top: 0; left: -1px; width: 1px; height: 100px; content: ''; background: #ccc; }
.tab-pane .tcol:last-child:before { left: auto; right: -1px; }
.tab-pane .tcol:nth-child(2) { width: 50%; }
.tab-pane .tcol:first-child { text-align: left; border-left: 1px solid #ccc; }
.tab-pane .trow:last-child .tcol { border-bottom: 1px solid #ccc; }
.tbody .trow:last-child .tcol:last-child { border-bottom: 1px solid #ccc; }

.tab-content .tab-pane-memberships .tcol { width: 20%; }
.tab-content .tab-pane-memberships .tcol:nth-child(3) { width: 40%; }
.tab-content .tab-pane-memberships .tcol:last-child { width: 10%; }

.paginaion-wrap { padding: 10px 0; text-align: center; }
.paginaion-wrap ul { list-style-type: none; padding: 0; margin: 0; }
.paginaion-wrap ul li { display: inline-block; vertical-align: middle; margin: 0 2px; }
.paginaion-wrap ul li a { display: inline-block; padding: 2px 7px; color: #fff; border-radius: 2px; font-family: Arial; }

.calendar-filter { margin-bottom: 20px; }
.calendar-filter .col { margin-right: 10px; }
.calendar-filter label { display: block; }
.calendar-filter .field { display: block; position: relative; }
.calendar-filter .field input { display: block; padding: 8px 30px 8px 10px; width: 200px; border-radius: 3px; background: #404a4c; box-shadow: 0 2px 3px rgba(0,0,0,0.2); border: 0; color: #fff; outline: none; }
.calendar-filter .field-mobile input { padding-right: 5px; }

.calendar-filter .field input::-webkit-input-placeholder { color: #fff; }
.calendar-filter .field input::-moz-placeholder { color: #fff; }
.calendar-filter .field input:-ms-input-placeholder { color: #fff; }
.calendar-filter .field input:-moz-placeholder { color: #fff; }
.calendar-filter .col .button { margin-top: 18px; display: inline-block; padding: 7px 15px 5px; font-size: 14px; line-height: 19px; text-transform: uppercase; font-weight: 700; letter-spacing: 2px; background: #3799b1; color: #fff; transition: background-color 0.3s, color 0.3s; border-radius: 3px; text-shadow: 1px 1px 1px rgba(0,0,0,0.2); box-shadow: 0 2px 3px rgba(0,0,0,0.2); }
.calendar-filter .col .button:hover { background: #20829a; color: #fff; }

.calendar-filter .field i { position: absolute; top: 50%; left: 210px; font-size: 18px; color: #fff; transform: translateY(-50%); }

.ui-widget-header { background: #badce4; }
.ui-state-highlight, .ui-widget-content .ui-state-highlight, .ui-widget-header .ui-state-highlight { background: #20829a; color: #fff; border-color: #badce4; }
.ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default, .ui-button, html .ui-button.ui-state-disabled:hover, html .ui-button.ui-state-disabled:active { background: #badce4; color: #333; }
.ui-state-active, .ui-widget-content .ui-state-active, .ui-widget-header .ui-state-active, a.ui-button:active, .ui-button:active, .ui-button.ui-state-active:hover { background: #3799b1; border-color: #badce4; color: #fff; }
.ui-state-hover, .ui-widget-content .ui-state-hover, .ui-widget-header .ui-state-hover, .ui-state-focus, .ui-widget-content .ui-state-focus, .ui-widget-header .ui-state-focus, .ui-button:hover, .ui-button:focus { background: #3799b1; color: #fff; }


.rating { border: none; float: left; }
.rating > input { display: none; } 
.rating > label:before { margin: 5px; font-size: 1.25em; font-family: FontAwesome; display: inline-block; content: "\f005"; }
.rating > .half:before { content: "\f089"; position: absolute; }
.rating > label { color: #b1afaf; float: right; }
/***** CSS Magic to Highlight Stars on Hover *****/
.rating > input:checked ~ label, /* show gold star when clicked */
.rating:not(:checked) > label:hover, /* hover current star */
.rating:not(:checked) > label:hover ~ label { color: #FFD700;  } /* hover previous stars in list */
.rating > input:checked + label:hover, /* hover current star when changing rating */
.rating > input:checked ~ label:hover,
.rating > label:hover ~ input:checked ~ label, /* lighten current selection */
.rating > input:checked ~ label:hover ~ label { color: #FFED85;  } 

.rateit { float: right; cursor: pointer; }
.popup-wrapper { display: none; }
.popup-wrapper h2 { color: #333; }
.popup-wrapper.show { display: block; position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0,0,0,0.5); }
.popup-wrapper .popup { position: absolute; top: 50%; left: 50%; box-sizing: border-box; max-width: 500px; width: 90%; padding: 10px; transform: translate(-50%, -50%); background: rgba(255,255,255,0.9); box-shadow: 0 2px 5px rgba(0,0,0,0.4); border-radius: 5px; opacity: 1; visibility: visible; margin: 0; }
.popup-wrapper .popup.popup-event { max-width: 600px; padding: 0; max-height: 80%; }
.popup-wrapper .popup.popup-event.no-photo { max-width: 500px; }
.popup-wrapper .popup.popup-event .inner-popup-wrapper { position: relative; padding: 10px 10px 20px 225px; }
.popup-wrapper .popup.popup-event.no-photo .inner-popup-wrapper { padding-left: 0; }
.popup-wrapper .popup .close { position: absolute; top: 5px; right: 5px; }
.popup-wrapper .popup h2 { font-weight: 400; }
.popup-wrapper .popup textarea { width: 100%; height: 100px; resize: none; padding: 10px; border: 0; box-shadow: 0 0 2px rgba(0,0,0,0.2); box-sizing: border-box; }
.popup-wrapper .popup .form-actions { text-align: right; }
.popup-wrapper.waiting-popup .popup .form-actions { text-align: center; }
.popup-wrapper .popup .button { padding: 5px 10px; background: #badce4; color: #fff; font-size: 12px; text-transform: uppercase; border-radius: 2px; transition: background-color 0.3s; border: 0; cursor: pointer; }
.popup-wrapper .popup .button-join { position: relative; width: 100px; text-align: center; margin-right: 20px; display: inline-block; vertical-align: middle; }
.popup-wrapper .popup .button-join .button { display: block; padding: 9px 10px 8px; }
.popup-wrapper .popup .button-join .button.stripe-button { position: absolute; top: 0; left: 0; right: 0; bottom: 0; transform: translateX(0); z-index: 2; display: none; }
.popup-wrapper .popup .button-join .button.stripe-button.show { display: block; }
.popup-wrapper .popup .button:hover { background: #3799b1; }


.csharp-holder { position: relative; overflow: hidden; }
.csharp-holder a,
.section-authorize .form-actions .csharp-holder a { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: transparent; color: transparent; }
.csharp-holder a,
.section-authorize .form-actions .csharp-holder a:hover { background: transparent; color: transparent; }

.csharp-holder:hover,
.section-authorize .form-actions .csharp-holder:hover { color: #20829a; }

.steps-section { position: relative;/* padding-right: 350px;*/ }

.steps-section .section-aside { position: absolute; right: 0; top: 0; width: 300px; }
.steps-section .section-aside .box { position: fixed; width: 300px; background: #f3f3f3; color: #333; font-size: 18px; line-height: 1.3; padding: 20px 15px; box-shadow: 0 1px 1px rgba(0,0,0,0.5); box-sizing: border-box; }
.steps-section .section-aside .box:before { position: absolute; top: 0; right: 0; width: 100%; height: 100%; content: ''; background: url(../images/card-icon.png) no-repeat center center; }
.steps-section .section-aside .box .box-info { position: relative; margin-bottom: 30px; }
.steps-section .section-aside .box .box-actions { position: relative; }
.steps-section .section-aside .box p { margin-bottom: 10px; }

.steps-head { position: relative; margin-bottom: 20px; background: #3799b1; color: #fff; font-size: 18px; box-shadow: 0 1px 1px 0 rgba(0,0,0,0.1); transition: background-color 0.3s; }
.steps-head .step { display: inline-block; vertical-align: middle; width: 33.3334%; margin-right: -4px; text-align: center; box-sizing: border-box; padding: 10px 20px; border-left: 1px solid #fff; transition: background-color 0.3s; }
.steps-head .step.active { background: #20829a; }
.steps-head .step.single { font-size: 18px; line-height: 1.5; text-transform: uppercase; text-align: left; display: block; width: 100%; margin: 0; }

.steps-wrapper { box-shadow: 0 1px 1px 1px rgba(0,0,0,0.2); }
.step-area select { display: inline-block; vertical-align: middle; width: 100%; padding: 10px 10px; border: 0; box-shadow: 0 1px 1px rgba(0,0,0,0.3); font-size: 14px; line-height: 1.3; background: #f3f3f3; }
.step-area .form-field { margin-bottom: 20px; }
.terms { text-align: right; }
.terms a { color: #3799b1; }
.terms input { position: relative; top: 2px; }

.validation-box { padding-top: 10px; text-align: right; color: #dc1616; }

.steps-body { box-shadow: 0 2px 2px -1px rgba(0,0,0,0.5); }
.steps-body .inner { padding: 20px 20px 0; }
.steps-body h3 { margin-bottom: 15px; text-align: center; font-size: 22px; line-height: 1.3; text-transform: uppercase; font-weight: 400; color: #3799b1; }
.steps-body h4 { margin-bottom: 10px; font-size: 18px; }
.steps-body label { font-weight: bold; display: block; margin-bottom: 5px; }
.steps-body .step-actions { padding: 20px; text-align: right; }
.steps-body .step-actions .alert-row { color: red; padding-bottom: 4px; }

.popup-actions .btn,
.steps-body .step-actions .btn,
.steps-body .step-actions button { display: inline-block; vertical-align: middle; width: 48%; margin-right: -2px; padding: 10px; box-sizing: border-box; text-align: center; text-transform: uppercase; font-weight: 700; /*border-radius: 2px;*/ box-shadow: 0 1px 1px rgba(0,0,0,0.2); border: 0; font-family: 'Roboto Condensed'; 
transition: background-color 0.3s; }
.popup-actions .btn + .btn,
.steps-body .step-actions .btn + .btn,
.steps-body .step-actions .btn + button,
.steps-body .step-actions button + .btn,
.steps-body .step-actions button + button { width: 48%; margin-left: 4%; }
.popup-actions .btn.back,
.steps-body .step-actions .btn.back,
.steps-body .step-actions button.back { background: #cccccc; color: #333; }
.popup-actions .btn.back:hover,
.steps-body .step-actions .btn.back:hover,
.steps-body .step-actions button.back:hover { background: #b9b8b8; }
.steps-body .step-actions .btn.next,
.steps-body .step-actions button.next { background: #3799b1; color: #fff; }
.steps-body .step-actions .btn.next:hover,
.steps-body .step-actions button.next:hover { background: #20829a; }
.popup-actions .btn.pay,
.steps-body .step-actions .btn.pay,
.steps-body .step-actions button.pay { background: rgb(48, 167, 40); color: #fff; cursor: pointer; }
.popup-actions .btn.pay:hover,
.steps-body .step-actions .btn.pay:hover,
.steps-body .step-actions button.pay:hover { background: rgba(36, 197, 26, 1); }
.popup-actions .btn.disabled,
.steps-body .step-actions .btn.disabled,
.steps-body .step-actions button.disabled { opacity: 0.5;  }

.popup-actions .btn.disabled,
.steps-body .step-actions .btn.disabled,
.steps-body .step-actions button.disabled { cursor: not-allowed; opacity: 0.9; pointer-events: none; }
.popup-actions .btn.disabled,
.steps-body .step-actions .btn.pay.disabled,
.steps-body .step-actions button.pay.disabled { opacity: 0.5; }

.popup-actions .btn.disabled,
.step-checkout .steps-body .step-actions .btn.disabled,
.step-checkout .steps-body .step-actions button.disabled { opacity: 1; background: rgba(88, 134, 85, 0.8); }

.step-checkout .step-actions .btn.pay.disabled,
.step-checkout .step-actions button.pay.disabled { opacity: 1; background: rgba(88, 134, 85, 0.8);  }

.step .membersip-card { position: relative; margin-bottom: 15px; background: #f3f3f3; transition: background-color 0.3s; box-shadow: 0 1px 1px rgba(0,0,0,0.5); }
.step .membersip-card .icon { position: absolute; top: 0; right: 0; z-index: 1; width: 100%; height: 100%; content: ''; background: url(../images/card-icon.png) no-repeat right 0; opacity: 0.6; transition: opacity 0.3s; }
.step .membersip-card:hover .icon { opacity: 0.3; }
.step .membersip-card:hover { background-color: #3799b1; }
.step .membersip-card input.radio-input { position: absolute; opacity: 0; visibility: hidden; }
.step .membersip-card label.radio-label { position: relative; z-index: 2; display: block; padding: 10px; margin: 0; cursor: pointer; font-weight: 400; font-size: 22px; line-height: 1.3; text-transform: uppercase; border-bottom: 1px solid rgba(214, 214, 214, 0.3); text-shadow: 1px 1px 1px rgba(0,0,0,0.2); color: #3799b1; transition: color 0.3s; }
.step .membersip-card label:hover { color: #fff; }
.step .membersip-card .more-info { position: relative; z-index: 2; display: none; padding: 14px 10px; font-size: 14px; line-height: 1.4; color: #fff; }
.step .membersip-card .more-info:before { position: absolute; top: -50px; right: 0; width: 100%; height: 100%; content: ''; background: url(../images/card-icon.png) no-repeat right 0; opacity: 0.6; transition: opacity 0.3s; }
.step .membersip-card .more-info .desc { position: relative; margin-bottom: 20px; }
.step .membersip-card .more-info .desc-content { margin-bottom: 10px; }
.step .membersip-card .more-info .desc-checkbox input,
.step .membersip-card .more-info .desc-checkbox label { display: inline-block; vertical-align: middle; margin: 0; }
.step .membersip-card .more-info .desc p { margin-bottom: 10px; }
.step .membersip-card .more-info li { margin-bottom: 5px; }
.step .membersip-card .more-info ul { list-style-position: outside; margin: 0 0 20px 20px; }
.step .membersip-card .more-info li { margin-bottom: 5px; }
.step .membersip-card input.radio-input:checked + label { color: #fff; background: #3799b1; }
.step .membersip-card input.radio-input:checked + label + .more-info { display: block; background: #3799b1; }
.step .membersip-card input.radio-input:checked + label + .more-info:before { opacity: 0.4; }
.step .membersip-card input.radio-input:checked + label + .more-info + .icon { opacity: 0; }
.step .membersip-card .more-info .info-action { padding-top: 10px; box-shadow: 0 -1px 1px -1px rgba(255,255,255,0.5); }
.step .membersip-card .more-info .info-action .form-field { position: relative; float: left; }
.step .membersip-card .more-info .info-action .form-field input { width: 300px; padding: 8px 10px; box-sizing: border-box; border: 0; box-shadow: 1px 1px 1px rgba(0,0,0,0.4); }
.step .membersip-card .more-info .info-action .form-field i { position: absolute; right: 10px; bottom: 10px; color: #3799b1; }
.step .membersip-card .more-info .info-action button { float: right; padding: 10px 20px; margin-top: 24px; font-size: 12px; line-height: 1.3; background: #c30000; border: 0; color: #fff; text-transform: uppercase; font-weight: 700; box-shadow: 1px 1px 1px rgba(0,0,0,0.5); background: rgb(48, 167, 40); }
.step .membersip-card .more-info .info-action button.disabled { opacity: 0.5; pointer-events: none; }
.step .membersip-card .more-info .info-action button:hover { background: rgba(36, 197, 26, 1); }


.membership-item ul { list-style-type: none; margin: 0; padding: 0; }
.membership-item li { display: block; padding: 2px 0; text-align: justify; font-size: 0; line-height: 0; }
.membership-item li:after { width: 100%; display: inline-block; content: ''; }
.membership-item li span,
.membership-item li strong { display: inline-block; font-size: 18px; line-height: 1.3; }
.membership-item li.price strong { color: #da2511; font-size: 22px; }

.checkout-wrapper { width: 600px; max-width: 80%; margin: 50px auto; padding: 20px; text-align: center; font-size: 18px; line-height: 1.5; }
.checkout-wrapper h2 { margin-bottom: 30px; }
.error-purchase h2 { color: #ff0000ad; }
.success-purchase h2 { color: #008000a3; }
.checkout-wrapper a { color: #333; }
.checkout-wrapper a:hover { text-decoration: underline; }
.checkout-wrapper.success-purchase { border-radius: 5px; box-shadow: 0 2px 5px rgba(0,0,0,0.2); background: rgba(0,128,0,0.1); }

.order-info { margin-bottom: 30px; }
.order-info table.checkout-table { width: 100%; text-align: left; border-collapse: collapse; border-bottom: 1px solid #EBEBEB; }
.order-info table.checkout-table th { padding: 5px 10px; border-top: 1px solid #EBEBEB; border-bottom: 1px solid #EBEBEB; text-transform: uppercase; color: #c3bfbf; font-size: 14px; line-height: 1.3; font-weight: 400; }
.order-info table.checkout-table td { padding: 15px 10px; color: #333; font-size: 16px; line-height: 1.3; }
.order-info table.checkout-table .form-field input { border: 0; width: 80px; }
.order-info table.checkout-table .col-price { width: 140px; text-align: right; }
.order-info table.checkout-table td.col-price { color: red; font-size: 18px; }
.order-info table.checkout-table td.col-price .tooltip { display: inline-block; vertical-align: middle; margin-left: 4px; }
.order-info table.checkout-table td.col-price span { display: inline-block; vertical-align: middle; }
.order-info table.checkout-table td.col-price .price-txt { display: block; font-size: 12px; padding-top: 5px; color: #c3bfbf; }

.promocode { padding: 15px 0; border-bottom: 1px solid #EBEBEB; text-align: right; }
.promocode input.field { display: inline-block; vertical-align: top; width: 375px; margin-right: 10px; height: 20px; font-size: 14px; line-height: 20px; padding: 7.5px 10px; border: 0; background: #EBEBEB; color: #333; }
.promocode button { display: inline-block; vertical-align: top; height: 35px; min-width: 150px; padding: 0 10px; border: 0; text-align: center; font-weight: 700; text-transform: uppercase; color: #fff; background: #3799b1; transition: background-color 0.3s; }
.promocode button:hover { background: #20829a; }
.alert-promocode { color: #dc1616; padding-bottom: 5px; }

.order-payment { margin-bottom: 30px; padding: 10px; background: #F7F7F7; border-radius: 3px; box-shadow: 0 0 2px rgba(0,0,0,0.2); }
.order-payment h4 { display: block; padding-bottom: 5px; border-bottom: 1px solid #EBEBEB; text-transform: uppercase; color: #3799b1; font-weight: 400; text-align: right; }

.total-info { width: 580px; margin: 0 0 0 auto; font-size: 18px; text-transform: uppercase; }
.total-info table { width: 100%; border-collapse: collapse; margin-bottom: 10px; }
.total-info td { padding: 20px; border-bottom: 1px solid #EBEBEB; }
.total-info td:first-child { color: #c3bfbf; font-weight: 400; }
.total-info td:last-child { text-align: right; color: #333; }
.total-info tr.total-row td { background: #F7F7F7; }
.total-info tr.total-row td:first-child { color: #333; font-weight: 700; }
.total-info .btn { display: block; width: 200px; margin: 0 0 0 auto; border: 0; height: 40px; box-sizing: border-box; padding: 10px; font-size: 12px; line-height: 20px; color: #fff; background: #c30000; text-transform: uppercase;
 font-weight: 700; }
.total-info .btn:hover { background: #8c0202; }

.payment-label { margin-bottom: 15px; text-align: center; font-size: 18px; }
.payment-method {}

.payment-method .sections { margin-bottom: 5px; }
.payment-method .sections .section { max-width: 500px; border: 1px solid #EBEBEB; margin-bottom: 10px; border-radius: 2px; margin: 0 0 0 auto; }
.payment-method .sections .section:last-child { margin-bottom: 0; }
.payment-method .sections .section:hover,
.payment-method .sections .section.active { border-color: #3799b1; }

.payment-method .sections .section-title { background: rgb(255,255,255); border-radius: 2px; transition: background-color 0.3s; }
.payment-method .sections .section-title input { position: absolute; opacity: 0; visibility: hidden; }
.payment-method .sections .section-title label {  position: relative; display: block; padding: 15px 20px; opacity: 0.8; font-size: 0; line-height: 0; text-indent: -999px; transition: opacity 0.3s ease-in-out, transform 0.3s ease-in-out, background 1s; cursor: pointer; margin: 0; }
.payment-method .sections .section-title input:checked + label,
.payment-method .sections .section-title:hover label { opacity: 1; transform: scale(1); }
.payment-method .sections .section-title label:before { position: absolute; top: 50%; left: 15px; box-sizing: border-box; content: ''; width: 18px; height: 18px; margin-top: -9px; border-radius: 50%; background: #fff; border: 1px solid #3799b1; transition: background-color 0.3s; }
.payment-method .sections .section-title:hover label:before,
.payment-method .sections .section-title input:checked + label:before { background: #3799b1; }
.payment-method .sections .section-title label.epay-logo { display: block; background: url(../images/epay-logo.png) no-repeat 45px center; height: 29px; background-size: 100px 29px; }
.payment-method .sections .section-title label.paysafe-logo { display: block; background: url(../images/paysafe-logo.png) no-repeat 45px center; height: 40px; background-size: 106px 40px; }
.payment-method .sections .section-title label.fibank-logo { display: block; background: url(../images/fibank-short-logo.png) no-repeat 45px center; height: 25px; background-size: 110px 25px; }
.payment-method .sections .section-title label.stripe-logo { display: block; background: url(../Frontend/OnlineBooking/src/images/accepted_c22e0.png) no-repeat 45px center; height: 25px; background-size: 207px 43px; }
.payment-method .sections .section-title label.commbank-logo { display: block; background: url(../Frontend/OnlineBooking/src/images/accepted-au.png) no-repeat 45px center; height: 25px; background-size: 157px 43px; }
.payment-method .sections .section-body { position: relative; padding: 15px 20px; background: rgba(0,0,0,0.1); border-radius: 3px; max-width: 500px; }
.payment-method .sections .section-body:before { position: absolute; top: -10px; left: 25px; display: block; width: 0; height: 0; content: ''; border-left: 8px solid transparent; border-right: 8px solid transparent; border-bottom: 10px solid rgba(0,0,0,0.1); }
.payment-method .sections .hidden-radio { opacity: 0; visibility: hidden; position: absolute; }

.hidden-btns { position: absolute; opacity: 0; }
.payment-method .option {  }
.payment-method .option-info { position: relative; padding: 15px 20px; background: rgba(0,0,0,0.1); border-radius: 3px; }
.payment-method .option-info:before { position: absolute; top: -10px; left: 25px; display: block; width: 0; height: 0; content: ''; border-left: 8px solid transparent; border-right: 8px solid transparent; border-bottom: 10px solid rgba(0,0,0,0.1); }

.payment-method .field-wrap input, 
.payment-method .field-wrap select, 
.payment-method .field-wrap .inputField { background: #f3f3f3; box-shadow: 0 1px 1px rgba(0,0,0,0.2); padding: 10px; height: 40px; }
.section-fibank .payment-form { padding-bottom: 0; }
.section-fibank .payment-form .field-wrap.usedCard { padding-bottom: 0; margin-bottom: 0; }

.payment-forms { }
.inner-radio { margin-bottom: 5px; }
.payment-form { margin-top: 10px; padding: 0px 0 10px 20px; border-left: 5px solid rgba(0,0,0,0.05); }
.payment-form:first-child { padding-bottom: 0; }
.payment-form .ccz-row .field-zip,
.payment-form .field-row-with-zip .field-zip { margin-bottom: 0; top: auto; transform: translateY(0); }

.box-actions,
.payment-method .member-actions { text-align: right; }
.steps-section .section-aside .btn,
.payment-method .member-actions .btn { display: inline-block; vertical-align: middle; padding: 10px 20px; font-size: 14px; text-transform: uppercase; font-weight: 700; background: #c30000; color: #fff; border: 0; box-shadow: 1px 1px 1px rgba(0,0,0,0.3); }
.steps-section .section-aside .btn { padding: 8px 20px; }
.steps-section .section-aside .btn:hover,
.payment-method .member-actions .btn:hover { background: #8c0202; }

.radio-payment { position: relative; display: block; padding: 10px 20px; }
.radio-payment input { position: absolute; opacity: 1; visibility: hidden; }
.radio-payment label { position: relative; display: block; opacity: 0.6; font-size: 0; line-height: 0; text-indent: -999px; transition: opacity 0.3s ease-in-out, transform 0.3s ease-in-out, background 1s;cursor: pointer; }

.radio-payment label:hover,
.radio-payment:hover label,
.radio-payment input:checked + label { opacity: 1; transform: scale(1); }

.radio-button { position: relative; display: inline-block; vertical-align: middle; margin-right: 20px; }
.radio-button input { position: absolute; opacity: 0; visibility: hidden; }
.radio-button label { position: relative; display: block; padding-left: 25px; font-size: 20px; font-weight: 400; cursor: pointer; margin-bottom: 0px; }
.radio-button label:before { position: absolute; top: 5px; left: 0; background: #fff; width: 14px; height: 14px; border-radius: 50%; content: ''; transition: background-color 0.3s; box-shadow: 1px 1px 1px rgba(0,0,0,0.3); border: 1px solid #3799b1; }
.radio-button label:after { position: absolute; top: 10px; left: 5px; background: #f3f3f3; width: 6px; height: 6px; border-radius: 50%; content: ''; }
.radio-button input:checked + label:after { background: #3799b1; }
.radio-button label img { height: 26px; width: auto; margin: 0; display: block; }
.cancel-purchase { text-align: center; }
.form-group-checkbox input { top: 2px; position: relative; }
.form-group-checkbox a { color: #3799b1; text-decoration: underline; }

.invalid-card { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0,0,0,0.6); z-index: 99; display: none; }
.invalid-card.show { display: block; }
.invalid-card .popup { position: absolute; top: 50%; left: 50%; width: 300px; margin-left: -150px; transform: translateY(-50%); background: rgba(255,255,255,0.8); padding: 20px 10px; box-sizing: border-box; border-radius: 4px; box-shadow: 0 1px 2px rgba(0,0,0,0.5); text-align: center; font-size: 22px; line-height: 1.4; }
.invalid-card .popup p { margin-bottom: 20px; }
.invalid-card .popup .btn { display: inline-block; vertical-align: middle; width: 48%; margin-right: -2px; padding: 10px; box-sizing: border-box; text-align: center; text-transform: uppercase; font-weight: 700;  box-shadow: 0 1px 1px rgba(0,0,0,0.2); border: 0; font-family: 'Roboto Condensed'; transition: background-color 0.3s;  background: #cccccc; color: #333; font-size: 14px; }
.invalid-card .popup .btn:hover { background: #b9b8b8; }

.StripeElement { background-color: white; padding: 10px 12px; border-radius: 4px; border: 1px solid transparent; box-shadow: 0 1px 3px 0 #e6ebf1; -webkit-transition: box-shadow 150ms ease; transition: box-shadow 150ms ease; }
.StripeElement--focus { box-shadow: 0 1px 3px 0 #cfd7df; }
.StripeElement--invalid { border-color: #fa755a; }
.StripeElement--webkit-autofill { background-color: #fefde5 !important; }
#payment-method-stripe .hidden { opacity: 0; visibility: hidden; position: absolute; }

.loader,
.loader:before,
.loader:after { border-radius: 0; width: 12px; height: 12px; -webkit-animation-fill-mode: both; animation-fill-mode: both; -webkit-animation: load7 1.8s infinite ease-in-out; animation: load7 1.8s infinite ease-in-out; border-radius: 50%; }
.loader { color: #3799b1; font-size: 10px; margin: 0 auto 30px; position: relative; text-indent: -9999em; -webkit-transform: translateZ(0); -ms-transform: translateZ(0); transform: translateZ(0); -webkit-animation-delay: -0.16s; animation-delay: -0.16s; }
.loader:before,
.loader:after { content: ''; position: absolute; top: 0; }
.loader:before { left: -20px; -webkit-animation-delay: -0.32s; animation-delay: -0.32s; }
.loader:after { left: 20px; }
@-webkit-keyframes load7 {
  	0%,
  	80%,
  	100% { box-shadow: 0 18px 0 -1.3em; }
	40% { box-shadow: 0 18px 0 0; }
}
@keyframes load7 {
 	0%,
	80%,
	100% { box-shadow: 0 18px 0 -1.3em; }
	40% { box-shadow: 0 18px 0 0; }
}

.tab-pane .tcol .mobile-title { display: none; }

.paymentmethod-item { display: block; box-sizing: border-box; padding: 20px; margin-bottom: 10px; box-shadow: 0 1px 1px rgba(0,0,0,0.2); border-radius: 2px; background: rgba(0,0,0,0.1); }
.paymentmethod-item { float: left; width: 49%; margin: 0 0 10px 2%; }
.paymentmethod-item:nth-child(2n+1) { margin-left: 0; }

.paymentmethod-item h2 { margin-bottom: 10px; font-size: 24px; line-height: 1.3; color: #3799b1; }
.paymentmethod-item h3 { margin-bottom: 5px; font-size: 24px; line-height: 1.3; color: #333; text-transform: uppercase; font-weight: 400; }
.paymentmethod-item .payment-info { margin-bottom: 15px; }
.paymentmethod-item .payment-info strong { display: inline-block; vertical-align: middle; font-weight: 700; margin-right: 10px; color: #333; }
.paymentmethod-item .payment-info span { display: inline-block; vertical-align: middle; padding: 5px 10px; width: 130px; color: #333; border: 1px solid #ccc; box-shadow: 0 1px 1px rgba(0,0,0,0.1); background: #fff; border-radius: 3px; }
.paymentmethod-item .item-actions a { float: left; padding: 11px 20px 10px; border-radius: 2px; background: #3799b1; color: #fff; font-size: 14px; line-height: 1.3; text-transform: uppercase; }
.paymentmethod-item .item-actions a:hover { background: #20829a; }
.paymentmethod-item .item-actions a.button-remove { float: right; background: #ff0000a6; }
.paymentmethod-item .item-actions a.button-remove.disabled { pointer-events: none; opacity: 0.5; }
.paymentmethod-item .item-actions a.button-remove:hover { background: #e80000eb; }
.paymentmethods-actions a { width: 49%; box-sizing: border-box; margin: 0 0 0 auto; }

.paymentmethod-item .item-actions span { display: none; float: left; padding: 11px 20px 10px; border-radius: 2px; background: rgba(36, 197, 26, 1); color: #fff; font-size: 14px; line-height: 1.3; text-transform: uppercase; }
.paymentmethod-item.default .item-actions span { display: block; }
.paymentmethod-item.default .item-actions .button-makedefault { display: none; }

.popup-wrapper .popup.popup-paymentmethod { padding: 15px; }
.popup-paymentmethod h4 { margin-bottom: 20px; }
.popup-paymentmethod .radio-button label { font-size: 16px; line-height: 28px; }
.popup-paymentmethod .sections { margin-bottom: 20px; }
.popup-paymentmethod .popup-actions { padding-top: 20px;  }
.popup-paymentmethod .order-payment { margin-bottom: 0; }
.popup-paymentmethod .validation-box { padding-top: 0; }

.popup-alert .popup-body { padding: 20px 20px 40px; font-size: 28px; text-align: center; }
.popup-alert .popup-body p.warning-msg { padding-top: 20px; text-align: left; font-weight: bold; font-size: 18px; font-weight: 700; color: #ff0000a6; }
.popup-alert .btn.agree { background: rgba(36, 197, 26, 1); color: #fff; }
.popup-alert .btn.agree:hover { background:  }

.tooltip { position: relative; display: inline-block; vertical-align: middle; }
.tooltip i { color: #3799b1; font-size: 22px; cursor: pointer; }
.tooltip:hover i { color: #20829a; }
.tooltip-body { position: absolute; top: 100%; right: 0; width: 200px; padding: 5px; border-radius: 2px; background: rgba(0,0,0,0.5); color: #fff; text-align: left; opacity: 0; visibility: hidden; transition: opacity 0.3; }
.tooltip:hover .tooltip-body { opacity: 1; visibility: visible; }
.mobile .tooltip:hover .tooltip-body { opacity: 0; visibility: hidden; }
.mobile .tooltip.show .tooltip-body { opacity: 1; visibility: visible; }



.cancel-subscription { margin-bottom: 10px; }
.cancel-subscription a { color: #000; font-size: 16px; }
.cancel-subscription a:hover { color: #cb0606; }
.cancel-subscription a:before { content: ''; display: inline-block; vertical-align: middle; width: 18px; height: 24px; margin-right: 6px; margin-top: -3px; background: url(../images/pdf-ico.png) no-repeat 0 0; background-size: 18px 24px; }

.membershipbuy-wrapper.loading .steps-section { opacity: 0.3; pointer-events: none; }
.membershipbuy-wrapper .loader-wrap.loading-section { position: absolute; top: 300px; left: 50%; transform: translateX(-50%); opacity: 0; visibility: hidden; }
.membershipbuy-wrapper.loading .loader-wrap.loading-section { opacity: 1; visibility: visible; }
.schedule-wrapper .filter-section .dd-body { height: 300px; overflow-y: scroll; }
.schedule-wrapper .filter-section .dd-body { overflow: -moz-scrollbars-none; }
.schedule-wrapper .filter-section .dd-body { -ms-overflow-style: none; }
.schedule-wrapper .filter-section .dd-body::-webkit-scrollbar { width: 0 !important }
/*.schedule-wrapper { box-shadow: 0 1px 1px 1px rgba(0,0,0,0.3); }*/

.schedule-zone,
.section-head h2 { display: inline-block; vertical-align: middle; }
.section-head h2 { margin-right: 20px; }
.schedule-zone { float: right; }
.schedule-zone h4,
.schedule-zone select { display: inline-block; vertical-align: middle; }
.schedule-zone select:focus { outline: none; }

.schedule-zone h4 { font-weight: 400; font-size: 18px; }
.schedule-zone select { margin: 0 0 0 10px; width: 300px; height: 40px; border-radius: 2px; border-color: transparent; box-shadow: 1px 1px 2px 0 rgba(0,0,0,0.5); font-family: 'Roboto Condensed', 'Helvetica', 'Arial'; font-size: 20px; text-transform: uppercase; padding-left: 10px; background: rgba(0,0,0,0.15); }
.schedule-godfather-wrapper .popup-wrapper .popup .form-actions .close { position: relative; top: auto; right: auto; display: inline-block; vertical-align: middle; background: grey; padding: 8px 5px; font-size: 14px; line-height: 1.2; color: #fff; }
.schedule-godfather-wrapper .popup-wrapper .popup .form-actions input { vertical-align: middle; margin-right: 10px; }
.schedule-godfather-wrapper .popup-wrapper .popup .form-actions input,
.schedule-godfather-wrapper .popup-wrapper .popup .form-actions .close { width: 90px; text-align: center; border-radius: 2px; }
#shcedule-popup .popup-head span.title { font-size: 24px; }

.schedule-wrapper .section-head { padding-bottom: 15px; }
.schedule-wrapper.loading .section-body { opacity: 0.4; pointer-events: none; }

.schedule-wrapper .filter-section { position: relative; padding-right: 0; }
.schedule-wrapper .filter-section .filter-section-with-actions { position: relative; }
.schedule-wrapper .filter-section .date-col input::-webkit-input-placeholder { color: #fff; }
.schedule-wrapper .filter-section .date-col input::-moz-placeholder { color: #fff; }
.schedule-wrapper .filter-section .date-col input:-ms-input-placeholder { color: #fff; }
.schedule-wrapper .filter-section .date-col input:-moz-placeholder { color: #fff; }

.schedule-wrapper .radio-field label,
.schedule-wrapper .filter-section .dd-head,
.schedule-wrapper .filter-section .actions .button,
.schedule-wrapper .filter-section .date-col input { background: #3799b1; color: #fff; }

.section-head h2 strong,
.schedule-body .schedule-list .item-day div { color: #3799b1; }
.schedule-body .schedule-list .item:hover { background: #3799b1 }

.schedule-wrapper .radio-field label:hover,
.schedule-wrapper .filter-section .dd-body,
.schedule-wrapper .filter-section .dd-head:hover, 
.schedule-wrapper .filter-section .dd.show .dd-head,
.schedule-wrapper .radio-field input:checked + label,
.schedule-wrapper .filter-section .actions .button:hover,
.schedule-wrapper .filter-section .date-col input:focus { background: #20829a; }

.schedule-wrapper .filter-section .date-col i,
.schedule-wrapper .filter-section .dd-head i,
.schedule-wrapper .filter-section .dd .dd-body .dd-field label { color: #fff; }
.empty-list h5 { font-weight: 400; color: #424242; }

#placeOrder .step-actions .actions { position: relative; }
.popup-paymentmethod .step-actions .stripe-button,
#placeOrder .step-actions .stripe-button,
.popup-paymentmethod .step-actions .paysafe-button,
#placeOrder .step-actions .paysafe-button { position: absolute; top: 0; right: 0; width: 48%; height: 36px; z-index: 999; display: none; }
#placeOrder .step-actions .stripe-button.show,
.popup-paymentmethod .step-actions .stripe-button.show,
#placeOrder .step-actions .paysafe-button.show,
.popup-paymentmethod .step-actions .paysafe-button.show { display: block; }
#placeOrder .step-actions .stripe-button.disabled,
.popup-paymentmethod .step-actions .stripe-button.disabled,
#placeOrder .step-actions .paysafe-button.disabled,
.popup-paymentmethod .step-actions .paysafe-button.disabled { pointer-events: none; }

.schedule-list.hide .list-item { display: none; }
.schedule-list.hide .list-item.show { display: block; }

.popup-wrapper .popup.show { transform: translate(-50%, -50%); margin-left: 0; }
#shcedule-not-popup .popup.show { transform: scale(1) translateY(-50%); }


.popup-wrapper.shcedule-popup .popup .form-actions { text-align: center; }
.popup-wrapper.shcedule-popup .popup .form-actions input { display: inline-block; padding: 7px 15px; font-size: 14px; line-height: 1.3; color: #fff; text-transform: uppercase; border-radius: 2px; background: #3799b1; cursor: pointer; transition: background-color 0.3s; font-weight: 700; }

.schedule-wrapper-list .schedule-body .schedule-list .item .cancel { position: absolute; top: 50%; right: 10px; transform: translateY(-50%); transition: none; line-height: 20px; }
.schedule-wrapper-list .schedule-body .schedule-list .item .cancel i { font-size: 16px; margin-left: 5px; line-height: 20px; }
.schedule-wrapper-list .schedule-body .schedule-list .item .cancel i,
.schedule-wrapper-list .schedule-body .schedule-list .item .cancel span { display: inline-block; vertical-align: middle; }

.shcedule-popup-yousure .popup-body h4 { padding: 0 30px; font-weight: 400; line-height: 1; font-size: 22px; margin-bottom: 10px; }
.shcedule-popup-yousure .popup-body a { display: inline-block; vertical-align: middle; padding: 5px 10px; font-size: 14px; font-weight: 700; text-transform: uppercase; line-height: 1.3; background: #e94124; color: #fff; box-shadow: 0 0 1px rgba(0,0,0,0.5); border-radius: 2px; border: 0; }

.shcedule-popup-yousure .popup-body.show-error a { opacity: 0.5; pointer-events: none; }
.shcedule-popup-yousure .popup-body .error { display: block; font-weight: 700; color: #e94124; text-align: center; padding-top: 10px; display: none; }
.shcedule-popup-yousure .popup-body .success { display: none; text-align: center; font-weight: 700; color: #3799b1; }

.shcedule-popup-yousure .popup-body.show-error .error { display: block; }
.shcedule-popup-yousure .popup-body.show-success p,
.shcedule-popup-yousure .popup-body.show-success a,
.shcedule-popup-yousure .popup-body.show-success .error { display: none; }
.shcedule-popup-yousure .popup-body.show-success .success { display: block; }

.subscription-item { display: inline-block; vertical-align: middle; width: 32%; margin: 0 0 20px 2%; text-align: center; box-sizing: border-box; padding: 10px; background: rgba(0,0,0,0.15); box-shadow: 1px 1px 2px 0 rgba(0,0,0,0.5); border-radius: 2px; }
.subscription-item:nth-child(3n+1) { margin-left: 0; }

.subscription-wrapper { text-align: center; }
.subscription-wrapper .section-head { margin-bottom: 40px; }
.subscription-wrapper .services-zone { margin-bottom: 60px; text-align: center; }
.subscription-wrapper .services-zone h2 { margin-bottom: 10px; }
.subscription-wrapper .services-zone select { margin: 0 auto; width: 500px; max-width: 100%; height: 40px; padding: 5px; font-size: 20px; line-height: 1.4; box-shadow:  0 0 2px rgba(0,0,0,0.5); border: 0; }

.mySubscription-box { width: 500px; max-width: 100%; margin: 0 auto; box-sizing: border-box; padding: 20px; background: #fff; background: rgba(255,255,255,0.15); box-shadow: 0 1px 3px 1px rgba(0,0,0,0.5); border-radius: 2px; }
.mySubscription-box h2 { margin-bottom: 20px; font-weight: 400; }
.mySubscription-box h2 strong { display: block; }

.spinner-wrap { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: rgba(255,255,255,0.8); z-index: 999; transition: opacity 0.3s, visibility 0.3s; }
.spinner { position: relative; width: 70px; margin: 0 auto; top: 50%; transform: translateY(-50%); }
.spinner > div { width: 18px; height: 18px; background-color: gray; border-radius: 100%; display: inline-block; -webkit-animation: sk-bouncedelay 1.4s infinite ease-in-out both; animation: sk-bouncedelay 1.4s infinite ease-in-out both; }
.spinner .bounce1 { -webkit-animation-delay: -0.32s; animation-delay: -0.32s; }
.spinner .bounce2 { -webkit-animation-delay: -0.16s; animation-delay: -0.16s; }
body.loaded .spinner-wrap { opacity: 0; visibility: hidden; }
.noevents-label { font-weight: 400; }
.noevents-label a { color: #ccc; }

#card-errors { color: red; padding-top: 5px; }
.shcedule-popup .form-actions.loading .spinner-wrap { opacity: 1; visibility: visible; background: transparent; }
.section-authorize form h6 { margin-bottom: 10px; text-align: center; font-size: 16px; }
.section-authorize form h6 a { color: #7b7272; }
.tabs .tab { display: none; }
.tabs .tab.active { display: block; }

@-webkit-keyframes sk-bouncedelay {
    0%, 80%, 100% { -webkit-transform: scale(0) }
    40% { -webkit-transform: scale(1.0) }
}

@keyframes sk-bouncedelay {
    0%, 80%, 100% {  -webkit-transform: scale(0); transform: scale(0); } 
    40% { -webkit-transform: scale(1.0); transform: scale(1.0); }
}

.onepage-wrapper { max-width: 1024px; margin: 0 auto; }
.onepage-wrapper .section { box-shadow: 0 2px 3px 1px rgba(0,0,0,0.2); border-radius: 0 0 2px 2px; margin-bottom: 30px; }
.onepage-wrapper .section-head { padding: 10px 10px 5px; }
.onepage-wrapper .section-head h5 { font-weight: 400; }
.onepage-wrapper .section-body { padding: 10px 20px; }
.onepage-wrapper .section-form .section-body { padding: 10px; }

.onepage-wrapper .section-membership .desc { position: relative; margin-bottom: 20px; }
.onepage-wrapper .section-membership .desc-content { margin-bottom: 10px; }
.onepage-wrapper .section-membership .desc-checkbox input,
.onepage-wrapper .section-membership .desc-checkbox label { display: inline-block; vertical-align: middle; margin: 0; }
.onepage-wrapper .section-membership .desc-checkbox input { position: relative; margin: -2px 5px 0 0; }

.onepage-wrapper .form-tabs { position: relative; overflow: hidden; margin-bottom: 20px; padding: 0 10px; }
.onepage-wrapper .form-tabs .form-tab { float: left; width: 50%; }
.onepage-wrapper .form-tabs .form-tab input { position: absolute; opacity: 0; visibility: hidden; }
.onepage-wrapper .form-tabs .form-tab label { display: block; padding: 10px; text-align: center; color: #3799b1; border: 1px solid #3799b1; font-weight: bold; text-transform: uppercase; transition: background-color 0.3s, color 0.3s; cursor: pointer; }
.onepage-wrapper .form-tabs .form-tab label:hover,
.onepage-wrapper .form-tabs .form-tab input:checked + label { background: #3799b1; color: #fff; }

.onepage-wrapper .membership-form-row { position: relative; padding-right: 320px; padding-top: 18px; }
.onepage-wrapper .membership-form-row .form-field { margin-bottom: 10px; }
.onepage-wrapper .membership-form-row .hidden { opacity: 0; visibility: hidden; position: absolute; }
.onepage-wrapper .membership-form-row .form-side { position: absolute; top: 0; right: 0; max-width: 320px; }
.onepage-wrapper .membership-form-row .price { font-size: 22px; color: red; display: inline-block; vertical-align: middle; margin: 9px 0 0 10px; }
.onepage-wrapper .membership-form-row .price span { display: none; }
.onepage-wrapper .membership-form-row .desc { font-size: 18px; }
.onepage-wrapper .promocode { position: relative; padding: 0 160px 0 0; border: 0; }
.onepage-wrapper .promocode button { position: absolute; top: 0; right: 0; padding: 0 10px; width: 150px; text-align: center; font-size: 10px; }
.onepage-wrapper .promocode input.field { width: 100%; box-sizing: border-box; height: 35px; }
.onepage-wrapper .alert-promocode { padding: 10px 0 0 0; }
.onepage-wrapper .checkout-cart table .price span { color: #333; }
.onepage-wrapper .checkout-cart table .price small { color: rgb(48, 167, 40); }

.onepage-wrapper .form-error { padding: 5px 0; text-align: right; color: #e03358; }

/*.onepage-wrapper .membership-form-row.lock-row { padding-right: 60px; }*/
/*.onepage-wrapper .membership-form-row.lock-row .field-datepicker { pointer-events: none; }*/
.onepage-wrapper .membership-form-row.lock-row select { pointer-events: none; }
/*.onepage-wrapper .membership-form-row.lock-row .price { line-height: 40px; }*/
.onepage-wrapper .section.lock { pointer-events: none; opacity: 0.6; }

.onepage-wrapper select.form-control { padding: 4px 10px; }
.onepage-wrapper .form-field.field-datepicker { position: relative; width: 200px; display: inline-block; vertical-align: middle; }
.onepage-wrapper .form-field.field-datepicker i { position: absolute; top: 50%; right: 10px; transform: translateY(-50%); padding-top: 18px; }
.onepage-wrapper .form-field.field-datepicker label { font-weight: 700; }

.onepage-wrapper .form-field { margin-bottom: 20px; }
.onepage-wrapper .form-fields .form-field { position: relative; float: left; width: 50%; margin: 0 0 20px; padding: 0 10px; box-sizing: border-box; }
.onepage-wrapper .form-fields .form-field label { display: block; }
.onepage-wrapper .form-control { display: block; width: 100%; padding: 9px 10px; height: 40px; box-sizing: border-box; background: #fbfbfb; border: 1px solid #dddddd; transition: background-color 0.3s; font-size: 18px; line-height: 22px; font-style: normal; }
.onepage-wrapper .field-datepicker .no-date-text { position: absolute; bottom: 0; left: 0; z-index: 99; display: block; width: 100%; padding: 9px 10px; height: 40px; box-sizing: border-box; background: #fbfbfb; border: 1px solid #dddddd;  font-size: 18px; line-height: 22px; font-style: normal; }
.onepage-wrapper textarea.form-control { height: 100px; resize: none; }
.onepage-wrapper .form-control.ng-invalid.ng-touched { border-color: red; background: rgba(255,0,0,0.1); }
.onepage-wrapper .form-fields .form-field .hidden { opacity: 0; visibility: hidden; position: absolute; }
.onepage-wrapper .form-fields .form-field .validation-errors { position: absolute; top: 100%; left: 10px; color: red; padding-top: 5px; }
.onepage-wrapper .iti { width: 100%; }

.onepage-wrapper .checkout-cart { float: left; width: 49%; padding: 0; box-shadow: 0 1px 3px 0 rgba(0,0,0,0.5); }
.onepage-wrapper .checkout-cart.fullwidth { width: 100%; float: none; }
.onepage-wrapper .checkout-cart table { width: 100%; border: 0; border-collapse: collapse; }
.onepage-wrapper .checkout-cart table td { text-align: right; font-weight: 700; font-size: 20px; padding: 15px 10px; border: 0; border-bottom: 1px solid #e4e4e4; }
.onepage-wrapper .checkout-cart table td:first-child { text-align: left; font-weight: 400; font-size: 15px; border-right: 1px solid #e4e4e4; text-transform: uppercase; padding: 15px 5px; }
.onepage-wrapper .checkout-cart table td small.red { font-weight: normal; color: red; cursor: pointer; }
.onepage-wrapper .checkout-cart table .price { color: red; font-size: 28px; }
.onepage-wrapper .checkout-cart table tr:last-child td { border: 0; background: #e4e4e4; }
.onepage-wrapper .checkout-cart table tr:last-child td:first-child { color: #333; font-weight: 700; }
#payment-free { opacity: 0; visibility: hidden; position: absolute; }

.onepage-wrapper .payment-method { float: right; width: 49%; }
.onepage-wrapper .payment-method .sections .section { max-width: 100%; box-sizing: border-box; }
.onepage-wrapper .inner-section-wrap { margin-bottom: 20px; }
.onepage-wrapper .terms { margin-bottom: 20px; text-align: left; }

.onepage-wrapper .actions { position: relative; text-align: right; width: 49%; margin: 0 0 0 auto; }
.onepage-wrapper .actions .btn { width: 100%; padding: 10px; box-sizing: border-box; text-align: center; text-transform: uppercase; font-weight: 700; box-shadow: 0 1px 1px rgba(0,0,0,0.2); border: 0; font-family: 'Roboto Condensed'; transition: background-color 0.3s; cursor: pointer; background: rgb(48, 167, 40); color: #fff; font-size: 16px; }
.onepage-wrapper .actions .btn:hover { background: rgba(36, 197, 26, 1); }
.onepage-wrapper .actions .btn.disabled,
.onepage-wrapper .actions .stripe-button.disabled,
.onepage-wrapper .actions .commbank-button.disabled,
.onepage-wrapper .actions .commbank-buttonhp.disabled { opacity: 0.5; pointer-events: none; }
.onepage-wrapper .actions .stripe-button,
.onepage-wrapper .actions .commbank-button,
.onepage-wrapper .actions .commbank-buttonhp { position: absolute; top: 0; right: 0; width: 100%; height: 39px; z-index: 999; display: none; }
.onepage-wrapper .actions .stripe-button.show,
.onepage-wrapper .actions .commbank-button.show,
.onepage-wrapper .actions .commbank-buttonhp.show { display: block; }

.onepage-wrapper .section-form .actions { padding-bottom: 20px; width: 100%; }
.onepage-wrapper .section-form .actions a { display: inline-block; vertical-align: middle; width: auto; min-width: 150px; }
.onepage-wrapper .section-form .actions p { display: inline-block; vertical-align: middle; text-align: center; margin-right: 10px; font-size: 15px; }

.onepage-wrapper .loader-wrap { display: none; }
.onepage-wrapper.loading .loader-wrap { display: block; }
.onepage-wrapper.loading .actions,
.onepage-wrapper.loading .form-control { pointer-events: none; opacity: 0.5; }

/*.swal2-popup { width: 400px; }*/
.swal2-title { font-size: 18px; }
.swal2-icon::before { font-size: 2.75em; }
.swal2-actions { margin-top: 0.6em; }
.swal2-styled.swal2-confirm,
.swal2-styled.swal2-cancel { font-size: 1.0em; padding: 0.425em 1.5em; }

.lang-nav {
  position: relative;
  display: inline-block;
  vertical-align: middle;
}

.lang-nav > a { line-height: 49px; }
.lang-nav ul {
  position: absolute;
  top: 100%;
  left: 0;
  background: #fff;
}
.lang-nav ul li {
  display: block;
}
.lang-nav ul li a {
  padding: 5px 10px;
}
.lang-nav a {
  display: block;
  text-transform: uppercase;
  color: #000;
  padding: 0 10px;
  white-space: nowrap;
  user-select: none;
}
.lang-nav a i.flag {
  display: inline-block;
  vertical-align: middle;
  width: 30px;
  height: 30px;
  border: 0;
  border-radius: 50%;
  box-shadow: 0 0 1px rgba(0, 0, 0, 0.5);
}
.lang-nav a i.flag.bg {
  background: url("../../../../Images/flags/flag-bg.jpg") no-repeat center center;
  background-size: cover;
}
.lang-nav a i.flag.en {
  background: url("../../../../Images/flags/flag-en.jpg") no-repeat center center;
  background-size: cover;
}
.lang-nav a i.flag.pl {
  background: url("../../../../Images/flags/flag-pl.jpg") no-repeat center center;
  background-size: cover;
}
.lang-nav a i.flag.es {
  background: url("../../../../Images/flags/flag-es.jpg") no-repeat center center;
  background-size: cover;
}
.lang-nav a i.flag.esc {
  background: url("../../../../Images/flags/flag-esc.jpg") no-repeat center center;
  background-size: cover;
}
.lang-nav a i.flag.pt {
	background: url("../../../../Images/flags/flag-pt.jpg") no-repeat -5px center;
	background-size: cover;
}

@media (min-width: 767px) {
	.logout:hover .dd { opacity: 1; visibility: visible; }
}

@media (max-width: 1300px) { 
	.membership-actions a { display: block; width: 100%; margin: 0 0 5px; }

	.paymentmethod-item { padding: 10px; }
	.paymentmethod-item h2 { font-size: 20px; }
	.paymentmethod-item h3 { font-size: 18px; }
	.paymentmethod-item .item-actions a { padding-left: 10px; padding-right: 10px; font-size: 12px; text-transform: capitalize; }
	.nav > ul > li { margin-left: 15px; }

	.membership-wrapper .footer { padding: 5px 0 20px; }
}

@media (max-width: 1024px) {

	.dashboard .title { font-size: 22px; }
	.nav { font-size: 14px; padding-top: 11px; }
	.nav > ul > li { margin-left: 10px; }
	.nav > ul > li > a { padding-left: 30px; padding-right: 5px; }
	.nav > ul > li > a:before { left: 8px; }
	.nav > ul > li > a.icon-profile:before { width: 16px; height: 16px; background: url(../images/cp-icon-profile.png) no-repeat 0 0; background-size: 16px 32px; }
	.nav > ul > li > a.icon-shcedule:before { width: 18px; height: 18px; background: url(../images/cp-icon-schedule.png) no-repeat 0 0; background-size: 18px 36.5px; }
	.nav > ul > li > a.icon-myshcedule:before { width: 17.5px; height: 20px; background: url(../images/cp-icon-myschedule.png) no-repeat 0 0; background-size: 17.5px 40px; }
	.nav > ul > li > a.icon-subscription:before { width: 17.5px; height: 19.5px; background: url(../images/cp-icon-subscriptions.png) no-repeat 0 0; background-size: 17.5px 40px; }
	.nav > ul > li > a.icon-language:before { width: 15.5px; height: 15.5px; background: url(../images/cp-icon-language.png) no-repeat 0 0; background-size: 15.5px 31.5px; }
	.nav > ul > li > a:hover:before,
	.nav > ul > li:hover > a:before { background-position: 0 bottom; }
	.nav > ul > li.lang-link { margin-top: 5px; }
	.nav { min-height: 44px; }
}


@media (max-width: 767px) {
	.membership-wrapper .header { padding: 0; }
	.membership-wrapper .header .shell { padding: 5px; }
	.shell { padding: 0 5px; }
	.section-authorize { border: 0; }
	.section-authorize .head-row h4,
	.section-authorize .head-row h4 { font-size: 12px; }
	.section-authorize .section-col,
	.section-authorize .section-col.login { width: 100%; float: none; display: block; margin-bottom: 20px; border: 1px solid #dddddd; box-sizing: border-box; }
	.membership-wrapper .content { padding: 70px 0 50px; }
	.section-authorize .form-actions a, .section-authorize .form-actions input { margin: 0 2px; }

	.content .shell { padding: 0 15px; }
	.row-main .col { display: block; width: auto; float: none; margin: 0 0 20px; }


	.steps-head .step { font-size: 16px; padding: 10px; }
	
	.promocode input.field { width: 200px; }
	.promocode button { font-size: 12px; }
	.payment-method .option-info { padding: 15px 10px; }
	.radio-button label { font-size: 16px; padding-left: 18px; line-height: 18px; }
	.radio-button label:before { top: 50%; width: 13px; height: 13px; margin-top: -8.5px; }
	.radio-button label:after { top: 50%; width: 5px; height: 5px; margin-top: -3px; }

	.paymentmethod-item { width: 100%; margin: 0 0 10px; }
	.paymentmethod-item { padding: 20px; }
	.paymentmethod-item .item-actions a { padding-left: 10px; padding-right: 10px; font-size: 12px; text-transform: uppercase; }
	.paymentmethods-actions a { width: 100%; padding: 10px; }

	.payment-method .sections .section  { width: 100%; }

	.section-authorize .section-col.register .form-row-last  .form-group { float: none; display: block; margin: 0 auto 10px; }
	.section-authorize .section-col.register .form-fields .form-row-last .form-group:nth-child(2n+1) { margin: 0 auto 10px; }
	.footer-actions h6 { font-size: 12px; }
	.footer-actions a { font-size: 12px; }

	.schedule-zone { display: block; float: none; padding-top: 10px; }
	.membership-wrapper .footer { padding: 5px 10px 0; }

	.menu-trigger { display: block; }
	.membership-wrapper .header { line-height: 1.3; }
	.mobile-menu { position: fixed; top: 60px; bottom: 0; left: 0; width: 100%; padding: 10px; box-sizing: border-box; background: #fff; box-shadow: 0 2px 5px rgba(0,0,0,0.6); }
	.mobile-menu { transform: translateX(100%); transition: transform 0.3s cubic-bezier(0, 0, 0.3, 1); }
	.show-menu .mobile-menu { transform: translateX(0); transition: transform 0.3s cubic-bezier(0, 0, 0.3, 1); }
	.mobile-menu .nav { display: block; float: none; margin: 0; padding: 0; }
	.mobile-menu .nav { padding: 0; }
	.nav { font-size: 16px; }
	.nav > ul > li { border-bottom: 1px solid #ccc; }
	.nav > ul > li:last-child { border-bottom: 0; }
	.nav > ul > li > a { padding: 17px 5px 17px 30px; border-radius: 0; }
	.mobile-menu .nav li { display: block; margin: 0; }
	.nav ul li.has-submenu:hover ul { opacity: 1; visibility: visible; transform: translateY(0px); }
	.nav ul li ul { position: relative; display: none; transform: translateY(0px); top: auto; left: auto; min-width: 10px; opacity: 1; visibility: visible; padding: 0 25px; width: auto; box-shadow: none; border-radius: 0; }
	.nav ul li.open-submenu ul { display: block; }
	.nav > ul > li > a:hover:before,
	.nav > ul > li:hover > a:before { background-position: 0 bottom; }
	.nav > ul > li > a.icon-language:before { margin-top: -2px; }
	.nav > ul > li.has-submenu > a:after { display: inline-block; vertical-align: middle; width: 0; height: 0; content: ''; margin-left: 10px; margin-top: -2px; border-left: 4px solid transparent; border-right: 4px solid transparent; border-top: 8px solid #151515; transition: all 0.4s; }
	.nav > ul > li.has-submenu.open-submenu > a:after { transform: rotate(-90deg); border-top: 8px solid #fff; }
	.nav > ul > li.lang-link { position: relative; right: auto; top: auto; transform: translateY(0); margin-top: 0px; }
	.nav { min-height: 1px; }
	#shcedule-popup .popup { margin: 0; }
	#shcedule-popup .popup.popup-event { transform: translateY(-50%); width: 90%; max-width: 100%; }
	h2,
	.section-head h2,
	.subscription-wrapper .services-zone h2 { font-size: 24px; }
	h4 { font-size: 20px; }
	.schedule-wrapper .section-head { padding-bottom: 5px; }

	.schedule-wrapper .filter-section .filter-section-with-actions { padding-right: 0; }

	.section-authorize .head-row h4 { width: 100%; float: none; }
	.section-authorize .head-row h4:first-child { border: 0; }

	.section-authorize .section-col.register .form-fields .form-group.form-group-checkbox { width: 100%; }
	body .mobile-el { display: block!important; }
	body .desktop-el { display: none!important; }

	.info-box img { border-radius: 50%; }
	.info-box { font-size: 18px; }
	.info-box ul li small { font-size: 14px; }
	.nav ul li ul li a:hover { color: #41bad8; background: transparent; }

	.calendar-filter .col { display: block; }
	.calendar-filter .field-mobile input { width: 100%; }
	.schedule-zone h4 { font-size: 16px; }

	.filter-section-with-actions { text-align: right; }
	.popup-wrapper .popup .button.button-join,
	.schedule-godfather-wrapper .popup-wrapper .popup .form-actions .close { width: 80px; }
	
	.onepage-wrapper .form-tabs .form-tab label { font-size: 12px; padding: 10px 5px; }
	.onepage-wrapper .payment-method,
	.onepage-wrapper .form-fields .form-field { float: none; display: block; width: 100%; }
	.onepage-wrapper .checkout-cart { float: none; display: block; width: 100%; margin-bottom: 20px; }

	.onepage-wrapper .membership-form-row { padding-right: 0; }
	.onepage-wrapper .membership-form-row .form-side { position: relative; top: auto; right: auto; max-width: 100%; display: flex; justify-content: space-between; }
	.onepage-wrapper .membership-form-row .price { line-height: 60px; margin-left: 0; }

	.onepage-wrapper .checkout-cart table td { padding: 5px 10px; }

/*	.onepage-wrapper .membership-form-row.lock-row { padding-right: 0; }
	.onepage-wrapper .membership-form-row.lock-row .form-side { display: block; }
	.onepage-wrapper .membership-form-row.lock-row .price { display: flex; justify-content: space-between; margin-bottom: 0; }
	.onepage-wrapper .membership-form-row.lock-row .price span { display: inline-block; color: #333; }
	.onepage-wrapper .membership-form-row.lock-row .price strong { display: inline-block; }*/
	.onepage-wrapper .actions { width: 100%; margin: 0; }

	.lang-nav { display: block; }
	.nav ul li .lang-nav ul { display: block; padding: 0; border-top: 1px solid #ccc; }
	.nav ul li .lang-nav ul li a { padding: 8px 10px; }
	.nav ul li .lang-nav ul li:last-child { border-bottom: 1px solid #ccc; }
}
@media (max-width: 520px) {
	.logo img { position: relative; top: 0; height: 43px; }
	.nav,
	.logout { margin-left: 5px; }
	
	.calendar-filter .col { margin-bottom: 10px; }
	
	.logout,
	.lang-nav { font-size: 12px; }
	.lang-nav li:after { margin-left: 2px; margin-right: 0px; }

	.mobile-menu { top: 53px; }

/*	.section-authorize .head-row h4 { font-size: 12px; font-weight: 400; padding-left: 0; padding-right: 0; }*/

	.tab-pane table th { font-size: 10px; }
	.membership-actions a { font-size: 15px; }

	.step .membersip-card .more-info .info-action .form-field input { width: 100%; }

	.steps-head .step { display: block; width: auto; margin: 0; border: 0; border-bottom: 1px solid #fff; }
	.steps-head .step:last-child { border: 0; }

	.steps-body .step-actions { padding: 10px; }
	.step-area .form-field { margin-bottom: 10px; }
	.steps-body .inner { padding: 10px 10px 0; }

	.payment-form { padding-left: 5px; border-left-width: 3px; padding-bottom: 0; }
	
	.ccz-row,
	.field-row-with-zip { padding-right: 0; }
	.ccz-row .field-half,
	.field-row-with-zip .field-half { width: 100%; margin-right: 0; margin-left: 0; }
	.payment-form .ccz-row .field-wrap { margin-bottom: 10px; }
	.payment-form .ccz-row .field-wrap:last-child { margin-bottom: 0; }
	.payment-form .ccz-row .field-zip,
	.payment-form .field-row-with-zip .field-zip { position: relative; top: auto; left: auto; width: 100%; }
	.payment-form .field-wrap.size-large,
	.payment-form .field-wrap.size-small { margin-bottom: 0; }

	.section-authorize .section-col.register .form-fields .form-group { display: block; width: 100%; margin: 0 0 10px; }

	.section-authorize .form-actions a, .section-authorize .form-actions input { padding: 7px 8px; }

	.tab-pane .tcol { width: 100%; float: none; border-left: 1px solid #ccc; text-align: left; color: #333; }
	.tab-pane .tcol:nth-child(2) { width: 100%; }


	.tab-pane .trow { background: #cae3e8; }
	.tab-pane .trow:nth-child(even) { background: #e6eef1; }
	.tab-pane .trow:last-child .tcol { border-bottom: 0; }
	.tab-pane .trow:last-child .tcol:last-child { border-bottom: 1px solid #ccc; }
	
	.tab-pane .thead { display: none; }
	.tab-pane .tcol .mobile-title { display: inline-block; font-weight: 700; padding-right: 3px; border-right: 1px solid #ccc; margin-right: 5px; width: 65px; }
	.tab-content .tab-pane-memberships .tcol .mobile-title,
	.tab-content .tab-pane-memberships .tcol:nth-child(2) .mobile-title { width: 35px; }
	.tab-content .tab-pane-memberships .tcol:last-child .mobile-title { width: 70px; }

	.tab-pane .trow { background: #f5f5f5; }
	.tab-pane .trow:nth-child(even) { background: #e1e5e8; }
	
	.tab-content .tab-pane-memberships .tcol,
	.tab-content .tab-pane-memberships .tcol:nth-child(2) { width: 50%; float: left; }
	.tab-content .tab-pane-memberships .tcol:nth-child(3) { width: 70%; border-bottom: 1px solid #ccc; }
	.tab-content .tab-pane-memberships .tcol:last-child { width: 30%; }
	.tab-content .tab-pane-memberships .tcol:last-child,
	.tab-content .tab-pane-memberships .tcol:nth-child(2) { border-left: 0; }

	.payment-method .sections .section-body { padding: 10px 10px 15px; }

	.membershipbuy-wrapper { margin: -37px -15px 0; }
	.mobile-body .membershipbuy-wrapper { margin: -20px -15px 0; }
	.info-box img { width: 120px; }
	.dashboard .title,
	.section-head { font-size: 20px; }
	.order-info table.checkout-table th { font-size: 12px; }
	.order-info table.checkout-table td { font-size: 14px; }

	.radio-button label { font-size: 14px; line-height: 18px; }
	.payment-method .sections .section-body { padding-bottom: 10px; }

	.paymentmethod-item { padding:10px; }
	.paymentmethod-item .item-actions a { text-transform: capitalize; padding-left: 5px; padding-right: 5px; }

	.radio-button { margin-top: 5px; }
	.footer-actions { float: none; text-align: center; }
	.membership-wrapper.show-forgetme .content { padding-bottom: 100px; }

	.promocode button { font-size: 10px; width: 45%; margin-left: 5%; margin-right: -4px; box-sizing: border-box; min-width: 10px; }
	.promocode input.field { width: 50%; margin: 0; box-sizing: border-box; height: 35px; }

	.schedule-zone select { display: block; margin-left: 0; width: 100%; }
	h2,
	.section-head h2,
	.subscription-wrapper .services-zone h2 { font-size: 20px; }
	h4 { font-size: 18px; }

	.schedule-wrapper.schedule-wrapper-main .section-head h2 { display: block; text-align: center; margin: 0; }

	.intl-tel-input .country-list { width: 300px; } 
	.schedule-zone h4,
	.schedule-wrapper .row-label { font-size: 14px; }
	#rc-imageselect, .g-recaptcha {transform:scale(0.77);-webkit-transform:scale(0.77);transform-origin:0 0;-webkit-transform-origin:0 0;}

	.popup-wrapper .popup.popup-event .inner-popup-wrapper { padding-left: 0; }

	/*.onepage-wrapper .section { box-shadow: 0 2px 2px -2px rgba(0,0,0,0.2); }*/
	.onepage-wrapper .section-head { padding: 10px 10px 5px; }
	.onepage-wrapper .section-body { padding: 10px; }
	.onepage-wrapper .section-form .section-body { padding: 10px 0; }
	.onepage-wrapper .form-tabs .form-tab { float: none; width: 100%; }
	.swal2-title { font-size: 18px; }

	.tabs ul.nav-tabs li a { padding: 5px; font-size: 14px; }

	.tab-pane .tcol { position: relative; padding-left: 75px; }
	.tab-pane .tcol:before { content: none; }
	.tab-pane .tcol .mobile-title { position: absolute; top: 4px; left: 4px; padding: 0; margin: 0; width: 65px; }
}