/* ----------------------------------------------
 * Generated by Animista on 2023-1-15 15:36:17
 * Licensed under FreeBSD License.
 * See http://animista.net/license for more info. 
 * w: http://animista.net, t: @cssanimista
 * ---------------------------------------------- */
/**
 * ----------------------------------------
 * animation shake-horizontal
 * ----------------------------------------
 */

@keyframes shake-horizontal {
  0%,
  100% {
    transform: translateX(0); }
  10%,
  30%,
  50%,
  70% {
    transform: translateX(-8px); }
  20%,
  40%,
  60% {
    transform: translateX(8px); }
  80% {
    transform: translateX(5px); }
  90% {
    transform: translateX(-5px); } }

body {
  background-color: #000; }

#membership {
  direction: rtl;
  color: #fff; }
  #membership .container {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
        flex-direction: column;
    -ms-flex-pack: start;
        justify-content: flex-start;
    padding-top: 7.5rem;
    min-height: 100%; }
    #membership .container .logo img {
      margin-top: 0.5rem; }
    #membership .container .code {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-direction: column;
          flex-direction: column;
      -ms-flex-align: center;
          align-items: center;
      margin-top: 2rem;
      font-size: 20px; }
      #membership .container .code_label {
        color: #fff;
        font-size: 20px; }
      #membership .container .code_container {
        width: 220px;
        margin-top: 1rem; }
        #membership .container .code_container #confirmation-code {
          display: -ms-flexbox;
          display: flex;
          -ms-flex-pack: justify;
              justify-content: space-between;
          -ms-flex-direction: row-reverse;
              flex-direction: row-reverse; }
          #membership .container .code_container #confirmation-code input.confirmcode {
            display: block;
            position: relative;
            border: none;
            background: transparent;
            border-bottom: 2px solid rgba(255, 255, 255, 0.5);
            border-radius: 0;
            font-size: 32px;
            width: 25px;
            text-align: center;
            color: #fff;
            -webkit-text-fill-color: #fff;
            padding: 0;
            /* Hide Arrows From Input Number */
            /* Chrome, Safari, Edge, Opera */ }
            #membership .container .code_container #confirmation-code input.confirmcode:-webkit-autofill, #membership .container .code_container #confirmation-code input.confirmcode:-webkit-autofill:hover, #membership .container .code_container #confirmation-code input.confirmcode:-webkit-autofill:focus, #membership .container .code_container #confirmation-code input.confirmcode:-webkit-autofill:active {
              -webkit-box-shadow: 0 0 0px 1000px #000 inset;
              transition: background-color 5000s ease-in-out 0s; }
            #membership .container .code_container #confirmation-code input.confirmcode:focus {
              border-bottom: 2px solid white; }
            #membership .container .code_container #confirmation-code input.confirmcode::-webkit-outer-spin-button, #membership .container .code_container #confirmation-code input.confirmcode::-webkit-inner-spin-button {
              -webkit-appearance: none;
              margin: 0; }
          #membership .container .code_container #confirmation-code.invalid {
            animation: shake-horizontal 0.8s cubic-bezier(0.455, 0.03, 0.515, 0.955) both; }
        #membership .container .code_container .confirmation-code-error {
          text-align: center;
          font-size: 1rem;
          margin-top: 1rem; }
      #membership .container .code_msg {
        margin: 2rem 0 3rem;
        direction: ltr;
        text-align: center;
        font-size: 20px; }
        @media (max-height: 668px) {
          #membership .container .code_msg {
            margin: 2rem 0; } }
      #membership .container .code_resend.form-group.button {
        margin: 0; }
        #membership .container .code_resend.form-group.button button {
          margin-bottom: 1rem;
          width: 300px; }
  #membership .container.join {
    -ms-flex-pack: center;
        justify-content: center; }
    #membership .container.join .form-group.button {
      margin: 0; }
  #membership .container.join .logo {
    -ms-flex: 0;
        flex: 0; }
  #membership .container.join .message {
    margin: 2rem 0;
    font-size: 18px;
    text-align: center;
    line-height: 1.4;
    letter-spacing: 0.05rem; }
    #membership .container.join .message-salutation {
      margin-bottom: 1.5rem; }
    #membership .container.join .message-body {
      margin-bottom: 1rem; }
  #membership .container.join .form-group.button {
    -ms-flex: 0;
        flex: 0; }
  #membership .container.welcome div.content {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
        justify-content: center;
    -ms-flex-align: center;
        align-items: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin: 1rem 0 3.5rem; }
    #membership .container.welcome div.content h2 {
      height: 77px;
      width: 280px;
      font-size: 17px;
      font-weight: 400;
      line-height: 24px;
      text-align: center; }
    #membership .container.welcome div.content-item {
      -ms-flex: 50%;
          flex: 50%;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-direction: column;
          flex-direction: column;
      -ms-flex-pack: center;
          justify-content: center;
      -ms-flex-align: center;
          align-items: center;
      margin-top: 1rem; }
      #membership .container.welcome div.content-item-logo img {
        width: 45px;
        max-height: 45px; }
      #membership .container.welcome div.content-item-text {
        font-size: 15px;
        line-height: 20px;
        margin-top: 0.75rem;
        text-align: center;
        max-height: 40px;
        min-height: 40px;
        max-width: 130px; }
  #membership .container.welcome .form-group.button {
    margin: 0; }
  #membership .id-page {
    margin-top: 2rem;
    padding: 0 1rem; }
    #membership .id-page_heading {
      text-align: center;
      font-size: 26px;
      font-weight: 700;
      line-height: 32px;
      margin-bottom: 2rem; }
    #membership .id-page #membershipUserid .form-group {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-direction: column;
          flex-direction: column; }
      #membership .id-page #membershipUserid .form-group label {
        position: relative;
        text-align: center;
        transition: none;
        letter-spacing: 2.5px;
        right: 0; }
      #membership .id-page #membershipUserid .form-group input.userid-form-control {
        background: transparent;
        color: #fff;
        width: 100%;
        height: 38px;
        border: none;
        border-bottom: 1px solid rgba(255, 255, 255, 0.75);
        padding: 10px 0;
        text-align: center;
        font-size: 1.5rem;
        letter-spacing: 0.2rem;
        font-weight: 600;
        border-radius: 0;
        padding: 0;
        /* Hide Arrows From Input Number */
        /* Chrome, Safari, Edge, Opera */ }
        #membership .id-page #membershipUserid .form-group input.userid-form-control::-webkit-outer-spin-button, #membership .id-page #membershipUserid .form-group input.userid-form-control::-webkit-inner-spin-button {
          -webkit-appearance: none;
          margin: 0; }
        #membership .id-page #membershipUserid .form-group input.userid-form-control:focus {
          border-bottom: 2px solid #fff; }
      #membership .id-page #membershipUserid .form-group .invalid-feedback {
        position: relative; }
    #membership .id-page .id-message {
      font-size: 16px;
      text-align: center;
      line-height: 1.5;
      margin-top: -1rem;
      height: -webkit-fit-content;
      height: fit-content; }
      #membership .id-page .id-message.expired {
        height: auto; }
      #membership .id-page .id-message-head {
        font-weight: 700; }
    #membership .id-page_buttons {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-direction: column;
          flex-direction: column;
      margin-top: 3rem; }
      #membership .id-page_buttons button {
        margin-top: 1rem;
        box-sizing: border-box;
        width: 250px;
        height: 48px;
        background: transparent;
        border: 1px solid #fff;
        border-radius: 24px;
        color: #fff;
        font-size: 17px;
        font-weight: 600;
        width: 100%; }
    #membership .id-page .no-club-link {
      margin: 3rem 0;
      text-align: center;
      text-decoration: underline; }
  #membership.profile {
    background-color: #000; }
    #membership.profile .logo img {
      width: 70%; }
    #membership.profile .container {
      padding-top: 2.5rem; }
    #membership.profile h1 {
      font-size: 26px;
      text-align: center;
      margin: 4vh 0; }
    #membership.profile #birthdayForm {
      margin-top: 72px; }
      #membership.profile #birthdayForm .form-group.button {
        margin-top: 100px; }
  @media all and (min-width: 391px) {
    #membership .container {
      max-width: 390px; } }
  #membership .background-overlay {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    z-index: -1;
    background-color: #000;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
        justify-content: center; }
    #membership .background-overlay picture {
      width: 100%; }
    @media all and (min-width: 768px) {
      #membership .background-overlay picture {
        width: auto; } }
  #membership img#background-img {
    display: block;
    width: 100%;
    object-fit: cover; }
  #membership video.background-video {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover; }
  #membership .logo {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
        justify-content: center;
    -ms-flex-align: center;
        align-items: center; }
  #membership .form-group {
    margin-bottom: 40px; }
    #membership .form-group input.custom-form-control {
      background: transparent;
      color: #fff;
      width: 100%;
      height: 38px;
      border: none;
      border-bottom: 1px solid rgba(255, 255, 255, 0.75);
      padding: 10px 0; }
      #membership .form-group input.custom-form-control:focus {
        border-bottom: 1px solid #fff; }
      #membership .form-group input.custom-form-control.is-invalid ~ .invalid-feedback {
        display: block; }
      #membership .form-group input.custom-form-control#membership-form-birthday {
        height: auto;
        direction: ltr;
        text-align: center;
        font-size: 24px;
        padding: 1rem 0; }
    #membership .form-group input.custom-form-control:-ms-input-placeholder {
      color: #FFF;
      text-align: center;
      font-family: Assistant;
      font-size: 24px;
      font-style: normal;
      font-weight: 400;
      line-height: normal; }
    #membership .form-group input.custom-form-control::placeholder {
      color: #FFF;
      text-align: center;
      font-family: Assistant;
      font-size: 24px;
      font-style: normal;
      font-weight: 400;
      line-height: normal; }
    #membership .form-group label {
      position: absolute;
      transition: all 200ms;
      right: 0; }
    #membership .form-group input.custom-form-control:focus ~ label,
    #membership .form-group input.custom-form-control:not(:placeholder-shown) ~ label {
      transform: translateX(50%) scaleX(0); }
    #membership .form-group.radio {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-pack: justify;
          justify-content: space-between;
      height: 36px;
      margin-top: 3rem; }
      #membership .form-group.radio label {
        position: relative;
        width: 32%;
        right: 0;
        cursor: pointer; }
        #membership .form-group.radio label input[type="radio"] {
          position: absolute;
          opacity: 0;
          cursor: pointer;
          height: 0;
          width: 0; }
        #membership .form-group.radio label .checkmark {
          position: absolute;
          top: 0;
          left: 0;
          height: 36px;
          width: 100%;
          background: transparent;
          border: 1px solid #fff;
          border-radius: 18px;
          text-align: center;
          display: -ms-flexbox;
          display: flex;
          -ms-flex-pack: center;
              justify-content: center;
          -ms-flex-align: center;
              align-items: center; }
        #membership .form-group.radio label input:checked ~ .checkmark {
          background-color: #fff;
          color: #000; }
        #membership .form-group.radio label .checkmark:after {
          content: "";
          position: absolute;
          display: none; }
        #membership .form-group.radio label input:checked ~ .checkmark:after {
          display: block; }
    #membership .form-group.checkbox label {
      position: relative;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-align: center;
          align-items: center;
      padding-right: 24px; }
      #membership .form-group.checkbox label input[type="checkbox"] {
        position: absolute;
        opacity: 0;
        cursor: pointer;
        height: 0;
        width: 0; }
      #membership .form-group.checkbox label .checkmark {
        position: absolute;
        right: 0;
        height: 18px;
        width: 18px;
        background: transparent;
        border: 1px solid #fff; }
        #membership .form-group.checkbox label .checkmark svg {
          display: none;
          position: absolute;
          bottom: 0;
          left: 0; }
      #membership .form-group.checkbox label input:checked ~ .checkmark svg {
        display: block; }
      #membership .form-group.checkbox label .checkmark:after {
        content: "";
        position: absolute;
        display: none; }
      #membership .form-group.checkbox label input:checked ~ .checkmark:after {
        display: block; }
    #membership .form-group.button {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-direction: column;
          flex-direction: column;
      -ms-flex-pack: center;
          justify-content: center;
      -ms-flex-align: center;
          align-items: center;
      margin: 2rem 0; }
      @media (max-height: 668px) {
        #membership .form-group.button {
          margin-top: 6vh; } }
      #membership .form-group.button button,
      #membership .form-group.button a {
        box-sizing: border-box;
        width: 250px;
        height: 48px;
        background: transparent;
        border: 1px solid #fff;
        border-radius: 24px;
        color: #fff;
        font-size: 17px;
        font-weight: 600; }
      #membership .form-group.button a {
        width: 207px;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-pack: center;
            justify-content: center;
        -ms-flex-align: center;
            align-items: center;
        margin-top: 1rem; }
      #membership .form-group.button .terms-and-conditions a,
      #membership .form-group.button .terms-and-conditions a:visited {
        color: #fff;
        text-decoration: underline;
        margin-right: -4px; }
      #membership .form-group.button.expired a {
        width: 100%; }
    #membership .form-group.select select.custom-form-control {
      background: transparent;
      color: #fff;
      width: 100%;
      height: 38px;
      border: none;
      border-bottom: 1px solid rgba(255, 255, 255, 0.75);
      padding: 10px 0;
      /* Firefox */
      -webkit-appearance: none;
      /* Safari and Chrome */
      appearance: none; }
      #membership .form-group.select select.custom-form-control:focus {
        border: 1px solid #f00; }
    #membership .form-group.select .select2-selection {
      background: transparent;
      color: #fff;
      width: 100%;
      height: 38px;
      border: none;
      border-bottom: 1px solid rgba(255, 255, 255, 0.75);
      padding: 10px 0;
      border-radius: 0; }
    #membership .form-group .invalid-feedback {
      position: absolute;
      margin: 0; }
  #membership #membershipProfileForm .select2-dropdown.dropdown {
    margin-top: 0.5rem;
    background-color: #272727;
    border: none;
    border-radius: 1rem;
    padding: 0 1.375rem 1.25rem; }
  #membership #membershipProfileForm .select2-search__field {
    background: none;
    width: 100%;
    height: 38px;
    border: none;
    color: #fff;
    border-bottom: 1px solid #7c7a7a;
    padding: 10px 2rem 10px 0;
    background-repeat: no-repeat;
    background-size: 1.3rem;
    background-position-x: right;
    background-position-y: center; }
  @media (max-height: 714px) {
    #membership #membershipProfileForm .select2-results__options {
      max-height: 150px; } }
  #membership #membershipProfileForm .select2-results__options::-webkit-scrollbar {
    width: 6px; }
  #membership #membershipProfileForm .select2-results__options::-webkit-scrollbar-track {
    background: #434343;
    border-radius: 3px;
    margin-top: 1rem; }
  #membership #membershipProfileForm .select2-results__options::-webkit-scrollbar-thumb {
    max-height: 10px;
    background: #e5e5e5;
    border-radius: 3px; }
  #membership #membershipProfileForm .select2-results__option {
    text-align: right;
    border-radius: 3px;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
        align-items: center;
    border-radius: 1rem;
    height: 2rem;
    margin: 0.25rem 0 0.25rem 1rem; }
    #membership #membershipProfileForm .select2-results__option--selected {
      background-color: #7c7a7a; }
    #membership #membershipProfileForm .select2-results__option--highlighted {
      background-color: #434343;
      color: white; }
  #membership #membershipProfileForm .select2-selection__arrow {
    position: absolute;
    left: 0;
    bottom: 0px;
    height: auto; }
  #membership #membershipProfileForm .select2-selection__rendered {
    display: -ms-flexbox;
    display: flex;
    padding-right: 0px;
    position: absolute;
    bottom: 0; }
  #membership #membershipProfileForm .select2-selection__placeholder, #membership #membershipProfileForm .select2-selection__rendered {
    color: #fff;
    height: 38px; }
  #membership #membershipProfileForm svg#arrow {
    position: absolute;
    left: 0;
    bottom: 15px; }
  #membership .footer {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
        justify-content: center;
    -ms-flex-direction: column;
        flex-direction: column;
    margin: 5rem 0 1rem;
    gap: 24px; }
    @media (max-height: 668px) {
      #membership .footer {
        margin: 2rem 0 1rem; } }
    #membership .footer .customers-service-message, #membership .footer .customers-service-link {
      font-size: 16px;
      text-align: center;
      font-weight: 400;
      letter-spacing: 0.02em; }
    #membership .footer .customers-service-message {
      margin-top: 1rem; }
    #membership .footer .customers-service-link {
      background: none;
      border: none;
      color: #fff;
      text-decoration: underline;
      text-underline-offset: 4px;
      font-weight: 700;
      font-size: 17px;
      font-style: normal;
      line-height: 24px;
      letter-spacing: 0.34px; }
    #membership .footer .continue-link {
      display: none;
      text-align: center; }
    #membership .footer .continue-link a {
      background: none;
      border: none;
      color: #fff;
      font-size: 17px;
      text-decoration: underline;
      text-underline-offset: 4px;
      color: #fff;
      font-style: normal;
      font-weight: 700;
      line-height: 24px;
      letter-spacing: 0.34px; }

#divPreChatButton {
  display: none; }

div.veil {
  height: 100vh; }
