* {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
  }

  a {
    color: inherit;
    text-decoration: inherit;
    font-size: inherit;
    -webkit-user-select: none;
    user-select: none;
    text-underline-offset: 2px;
  }

  input,
  textarea {
    -webkit-appearance: none;
    outline: none !important;
    resize: none;
  }

  .visually-hidden {
    clip: rect(0 0 0 0);
    clip-path: inset(50%);
    height: 1px;
    overflow: hidden;
    position: absolute;
    white-space: nowrap;
    width: 1px;
  }

  .section:focus {
    outline: none;
  }

  .w-richtext> :first-child {
    margin-top: 0;
  }

  .w-richtext> :last-child {
    margin-bottom: 0;
  }

  .open .modal-wrap {
    display: flex;
  }

  .open .modal-bg {
    opacity: 1;
  }

  .open .modal {
    -webkit-animation: modalIn 0.4s backwards ease;
    animation: modalIn 0.4s backwards ease;
  }

  @media only screen and (max-width: 479px) {
    .open .modal {
      -webkit-animation: modalInMobile 0.4s backwards ease;
      animation: modalInMobile 0.4s backwards ease;
    }
  }

  @-webkit-keyframes modalIn {
    from {
      opacity: 0;
      -webkit-transform: scale(0.85);
    }

    to {
      opacity: auto;
      -webkit-transform: scale(1);
    }
  }

  @keyframes modalIn {
    from {
      opacity: 0;
      transform: scale(0.85);
    }

    to {
      opacity: auto;
      transform: scale(1);
    }
  }

  @-webkit-keyframes modalInMobile {
    from {
      opacity: 0;
      -webkit-transform: translateY(200px);
    }

    to {
      opacity: auto;
      -webkit-transform: translateY(0px);
    }
  }

  @keyframes modalInMobile {
    from {
      opacity: 0;
      transform: translateY(200px);
    }

    to {
      opacity: auto;
      transform: translateY(0px);
    }
  }

  input:-webkit-autofill,
  input:-webkit-autofill:focus {
    transition: background-color 600000s 0s, color 600000s 0s;
  }

  input[data-autocompleted] {
    background-color: transparent !important;
  }

  @media only screen and (min-width: 480px) and (max-height: 850px) {
    .modal-wrap {
      overflow: auto;
      -webkit-align-items: start;
      -ms-flex-align: start;
      align-items: start;
    }
  }

  .legal-text {
    overflow-wrap: break-word;
    word-wrap: break-word;
  }

  .s-layout-frame {
    --step1: #384588;
    --step2: #bd8e57;
    background-image: linear-gradient(45deg, var(--step1), var(--step2));
  }