/*** FONTS ***/
/*** COLORS ***/
/* Information */
/*** BREAKPOINTS ***/
/* G R I D */
/* Grid vives */
/*** TIPOGRAFÍAS ***/
.vives-headline {
  font-family: "Helvetica Neue", "Helvetica", "Arial", sans-serif;
  font-weight: 700;
}
.vives-headline-01 {
  font-family: "Helvetica Neue", "Helvetica", "Arial", sans-serif;
  font-weight: 700;
  font-size: 32px;
  line-height: 40px;
}
.vives-headline-02 {
  font-family: "Helvetica Neue", "Helvetica", "Arial", sans-serif;
  font-weight: 700;
  font-size: 24px;
  line-height: 28px;
}
.vives-title-02 {
  font-family: "Helvetica Neue", "Helvetica", "Arial", sans-serif;
  font-weight: 700;
  font-size: 24px;
  line-height: 28px;
}
.vives-title-03 {
  font-family: "Helvetica Neue", "Helvetica", "Arial", sans-serif;
  font-weight: 700;
  font-size: 20px;
  line-height: 32px;
}
.vives-text {
  font-family: "Helvetica Neue", "Helvetica", "Arial", sans-serif;
  font-style: normal;
}
.vives-text:not([class*='bold']) {
  font-weight: 400;
}
.vives-text.vives-text--bold {
  font-weight: 700;
}
.vives-text--12 {
  font-family: "Helvetica Neue", "Helvetica", "Arial", sans-serif;
  font-style: normal;
  font-size: 12px;
  line-height: 18px;
}
.vives-text--12:not([class*='bold']) {
  font-weight: 400;
}
.vives-text--12.vives-text--bold {
  font-weight: 700;
}
.vives-text--14 {
  font-family: "Helvetica Neue", "Helvetica", "Arial", sans-serif;
  font-style: normal;
  font-size: 14px;
  line-height: 20px;
}
.vives-text--14:not([class*='bold']) {
  font-weight: 400;
}
.vives-text--14.vives-text--bold {
  font-weight: 700;
}
.vives-text--16 {
  font-family: "Helvetica Neue", "Helvetica", "Arial", sans-serif;
  font-style: normal;
  font-size: 16px;
  line-height: 24px;
}
.vives-text--16:not([class*='bold']) {
  font-weight: 400;
}
.vives-text--16.vives-text--bold {
  font-weight: 700;
}
.vives-text--18 {
  font-family: "Helvetica Neue", "Helvetica", "Arial", sans-serif;
  font-style: normal;
  font-size: 18px;
  line-height: 26px;
}
.vives-text--18:not([class*='bold']) {
  font-weight: 400;
}
.vives-text--18.vives-text--bold {
  font-weight: 700;
}
/*** ICONS ***/
/*** INPUT base ***/
.mixin__input__group {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 4px;
  width: 100%;
  /* Input password */
}
.mixin__input__group input,
.mixin__input__group select {
  width: 100%;
  height: 56px;
  padding: 20px 16px 16px;
  color: #333f48;
  border: 1px solid #c3c1c2;
  border-radius: 4px;
  outline: 0;
}
.mixin__input__group input::placeholder,
.mixin__input__group select::placeholder {
  opacity: 0;
}
.mixin__input__group input:focus,
.mixin__input__group select:focus {
  border-color: #7a777a;
}
.mixin__input__group input:focus + label,
.mixin__input__group select:focus + label,
.mixin__input__group input:not(:placeholder-shown) + label,
.mixin__input__group select:not(:placeholder-shown) + label {
  top: 0px;
  font-size: 12px;
  color: #c3c1c2;
}
.mixin__input__group input ~ [class*='icon-rp-Password'] {
  position: absolute;
  top: 16px;
  right: 16px;
  display: flex;
  justify-content: center;
  align-items: center;
  min-width: 24px;
  width: 24px;
  max-width: 24px;
  min-height: 24px;
  height: 24px;
  max-height: 24px;
  font-size: 20px;
}
.mixin__input__group input ~ [class*='icon-rp-Password']::before {
  font-size: 20px;
}
.mixin__input__group input ~ [class*='icon-rp-Password'] img {
  width: 100%;
  height: 100%;
}
.mixin__input__group label {
  position: absolute;
  top: 16px;
  left: 16px;
  margin-bottom: 0;
  transition: all 0.2s ease-in;
}
.mixin__input__group .message {
  display: none;
  align-items: center;
  gap: 4px;
  font-family: "Helvetica Neue", "Helvetica", "Arial", sans-serif;
  font-style: normal;
  font-size: 12px;
  line-height: 18px;
}
.mixin__input__group .message:not([class*='bold']) {
  font-weight: 400;
}
.mixin__input__group .message.vives-text--bold {
  font-weight: 700;
}
.mixin__input__group .message .icon-rp {
  display: flex;
  justify-content: center;
  align-items: center;
  min-width: 12px;
  width: 12px;
  max-width: 12px;
  min-height: 12px;
  height: 12px;
  max-height: 12px;
  font-size: 12px;
}
.mixin__input__group .message .icon-rp::before {
  font-size: 12px;
}
.mixin__input__group .message .icon-rp img {
  width: 100%;
  height: 100%;
}
.mixin__input__group .message--show {
  display: flex;
}
.mixin__input__group .message--error,
.mixin__input__group .message--error .message-text,
.mixin__input__group .message--error .icon-rp::before {
  color: #d52b1e;
}
/* INPUT with icon: select, date…*/
.mixin__input__picker::after {
  position: absolute;
  top: 20px;
  right: 16px;
  font-family: 'icomoon';
  color: #333f48;
  pointer-events: none;
  display: flex;
  justify-content: center;
  align-items: center;
  min-width: 24px;
  width: 24px;
  max-width: 24px;
  min-height: 24px;
  height: 24px;
  max-height: 24px;
  font-size: 20px;
}
.mixin__input__picker::after::before {
  font-size: 20px;
}
.mixin__input__picker::after img {
  width: 100%;
  height: 100%;
}
/*** DATE ***/
.mixin__date__group {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 4px;
  width: 100%;
  /* Input password */
}
.mixin__date__group input,
.mixin__date__group select {
  width: 100%;
  height: 56px;
  padding: 20px 16px 16px;
  color: #333f48;
  border: 1px solid #c3c1c2;
  border-radius: 4px;
  outline: 0;
}
.mixin__date__group input::placeholder,
.mixin__date__group select::placeholder {
  opacity: 0;
}
.mixin__date__group input:focus,
.mixin__date__group select:focus {
  border-color: #7a777a;
}
.mixin__date__group input:focus + label,
.mixin__date__group select:focus + label,
.mixin__date__group input:not(:placeholder-shown) + label,
.mixin__date__group select:not(:placeholder-shown) + label {
  top: 0px;
  font-size: 12px;
  color: #c3c1c2;
}
.mixin__date__group input ~ [class*='icon-rp-Password'] {
  position: absolute;
  top: 16px;
  right: 16px;
  display: flex;
  justify-content: center;
  align-items: center;
  min-width: 24px;
  width: 24px;
  max-width: 24px;
  min-height: 24px;
  height: 24px;
  max-height: 24px;
  font-size: 20px;
}
.mixin__date__group input ~ [class*='icon-rp-Password']::before {
  font-size: 20px;
}
.mixin__date__group input ~ [class*='icon-rp-Password'] img {
  width: 100%;
  height: 100%;
}
.mixin__date__group label {
  position: absolute;
  top: 16px;
  left: 16px;
  margin-bottom: 0;
  transition: all 0.2s ease-in;
}
.mixin__date__group .message {
  display: none;
  align-items: center;
  gap: 4px;
  font-family: "Helvetica Neue", "Helvetica", "Arial", sans-serif;
  font-style: normal;
  font-size: 12px;
  line-height: 18px;
}
.mixin__date__group .message:not([class*='bold']) {
  font-weight: 400;
}
.mixin__date__group .message.vives-text--bold {
  font-weight: 700;
}
.mixin__date__group .message .icon-rp {
  display: flex;
  justify-content: center;
  align-items: center;
  min-width: 12px;
  width: 12px;
  max-width: 12px;
  min-height: 12px;
  height: 12px;
  max-height: 12px;
  font-size: 12px;
}
.mixin__date__group .message .icon-rp::before {
  font-size: 12px;
}
.mixin__date__group .message .icon-rp img {
  width: 100%;
  height: 100%;
}
.mixin__date__group .message--show {
  display: flex;
}
.mixin__date__group .message--error,
.mixin__date__group .message--error .message-text,
.mixin__date__group .message--error .icon-rp::before {
  color: #d52b1e;
}
.mixin__date__group::after {
  position: absolute;
  top: 20px;
  right: 16px;
  font-family: 'icomoon';
  color: #333f48;
  pointer-events: none;
  display: flex;
  justify-content: center;
  align-items: center;
  min-width: 24px;
  width: 24px;
  max-width: 24px;
  min-height: 24px;
  height: 24px;
  max-height: 24px;
  font-size: 20px;
}
.mixin__date__group::after::before {
  font-size: 20px;
}
.mixin__date__group::after img {
  width: 100%;
  height: 100%;
}
.mixin__date__group::after {
  content: "\e917";
}
.mixin__date__group input::-webkit-calendar-picker-indicator {
  opacity: 0;
}
/*** SELECT ***/
.mixin__select__group {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 4px;
  width: 100%;
  /* Input password */
}
.mixin__select__group input,
.mixin__select__group select {
  width: 100%;
  height: 56px;
  padding: 20px 16px 16px;
  color: #333f48;
  border: 1px solid #c3c1c2;
  border-radius: 4px;
  outline: 0;
}
.mixin__select__group input::placeholder,
.mixin__select__group select::placeholder {
  opacity: 0;
}
.mixin__select__group input:focus,
.mixin__select__group select:focus {
  border-color: #7a777a;
}
.mixin__select__group input:focus + label,
.mixin__select__group select:focus + label,
.mixin__select__group input:not(:placeholder-shown) + label,
.mixin__select__group select:not(:placeholder-shown) + label {
  top: 0px;
  font-size: 12px;
  color: #c3c1c2;
}
.mixin__select__group input ~ [class*='icon-rp-Password'] {
  position: absolute;
  top: 16px;
  right: 16px;
  display: flex;
  justify-content: center;
  align-items: center;
  min-width: 24px;
  width: 24px;
  max-width: 24px;
  min-height: 24px;
  height: 24px;
  max-height: 24px;
  font-size: 20px;
}
.mixin__select__group input ~ [class*='icon-rp-Password']::before {
  font-size: 20px;
}
.mixin__select__group input ~ [class*='icon-rp-Password'] img {
  width: 100%;
  height: 100%;
}
.mixin__select__group label {
  position: absolute;
  top: 16px;
  left: 16px;
  margin-bottom: 0;
  transition: all 0.2s ease-in;
}
.mixin__select__group .message {
  display: none;
  align-items: center;
  gap: 4px;
  font-family: "Helvetica Neue", "Helvetica", "Arial", sans-serif;
  font-style: normal;
  font-size: 12px;
  line-height: 18px;
}
.mixin__select__group .message:not([class*='bold']) {
  font-weight: 400;
}
.mixin__select__group .message.vives-text--bold {
  font-weight: 700;
}
.mixin__select__group .message .icon-rp {
  display: flex;
  justify-content: center;
  align-items: center;
  min-width: 12px;
  width: 12px;
  max-width: 12px;
  min-height: 12px;
  height: 12px;
  max-height: 12px;
  font-size: 12px;
}
.mixin__select__group .message .icon-rp::before {
  font-size: 12px;
}
.mixin__select__group .message .icon-rp img {
  width: 100%;
  height: 100%;
}
.mixin__select__group .message--show {
  display: flex;
}
.mixin__select__group .message--error,
.mixin__select__group .message--error .message-text,
.mixin__select__group .message--error .icon-rp::before {
  color: #d52b1e;
}
.mixin__select__group::after {
  position: absolute;
  top: 20px;
  right: 16px;
  font-family: 'icomoon';
  color: #333f48;
  pointer-events: none;
  display: flex;
  justify-content: center;
  align-items: center;
  min-width: 24px;
  width: 24px;
  max-width: 24px;
  min-height: 24px;
  height: 24px;
  max-height: 24px;
  font-size: 20px;
}
.mixin__select__group::after::before {
  font-size: 20px;
}
.mixin__select__group::after img {
  width: 100%;
  height: 100%;
}
.mixin__select__group::after {
  content: "\e923";
}
.mixin__select__group select {
  appearance: none;
}
/*** CHECKBOX ***/
.login-component {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 32px;
}
@media (min-width: 1024px) {
  .login-component {
    max-width: 304px;
    min-width: 304px;
    margin-inline: auto;
  }
}
.login-component .login__form {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
}
.login-component .login__submit {
  align-self: flex-end;
}
.login-component .logo-component {
  width: 184px;
}

/*** FONTS ***/
/*** COLORS ***/
/* Information */
/*** BREAKPOINTS ***/
/* G R I D */
/* Grid vives */
.recover-pass-modal .recover-pass__input {
  margin-top: 32px;
}

/*** FONTS ***/
/*** COLORS ***/
/* Information */
/*** BREAKPOINTS ***/
/* G R I D */
/* Grid vives */
/*** TIPOGRAFÍAS ***/
.vives-headline {
  font-family: "Helvetica Neue", "Helvetica", "Arial", sans-serif;
  font-weight: 700;
}
.vives-headline-01 {
  font-family: "Helvetica Neue", "Helvetica", "Arial", sans-serif;
  font-weight: 700;
  font-size: 32px;
  line-height: 40px;
}
.vives-headline-02 {
  font-family: "Helvetica Neue", "Helvetica", "Arial", sans-serif;
  font-weight: 700;
  font-size: 24px;
  line-height: 28px;
}
.vives-title-02 {
  font-family: "Helvetica Neue", "Helvetica", "Arial", sans-serif;
  font-weight: 700;
  font-size: 24px;
  line-height: 28px;
}
.vives-title-03 {
  font-family: "Helvetica Neue", "Helvetica", "Arial", sans-serif;
  font-weight: 700;
  font-size: 20px;
  line-height: 32px;
}
.vives-text {
  font-family: "Helvetica Neue", "Helvetica", "Arial", sans-serif;
  font-style: normal;
}
.vives-text:not([class*='bold']) {
  font-weight: 400;
}
.vives-text.vives-text--bold {
  font-weight: 700;
}
.vives-text--12 {
  font-family: "Helvetica Neue", "Helvetica", "Arial", sans-serif;
  font-style: normal;
  font-size: 12px;
  line-height: 18px;
}
.vives-text--12:not([class*='bold']) {
  font-weight: 400;
}
.vives-text--12.vives-text--bold {
  font-weight: 700;
}
.vives-text--14 {
  font-family: "Helvetica Neue", "Helvetica", "Arial", sans-serif;
  font-style: normal;
  font-size: 14px;
  line-height: 20px;
}
.vives-text--14:not([class*='bold']) {
  font-weight: 400;
}
.vives-text--14.vives-text--bold {
  font-weight: 700;
}
.vives-text--16 {
  font-family: "Helvetica Neue", "Helvetica", "Arial", sans-serif;
  font-style: normal;
  font-size: 16px;
  line-height: 24px;
}
.vives-text--16:not([class*='bold']) {
  font-weight: 400;
}
.vives-text--16.vives-text--bold {
  font-weight: 700;
}
.vives-text--18 {
  font-family: "Helvetica Neue", "Helvetica", "Arial", sans-serif;
  font-style: normal;
  font-size: 18px;
  line-height: 26px;
}
.vives-text--18:not([class*='bold']) {
  font-weight: 400;
}
.vives-text--18.vives-text--bold {
  font-weight: 700;
}
/*** ICONS ***/
/*** INPUT base ***/
.mixin__input__group {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 4px;
  width: 100%;
  /* Input password */
}
.mixin__input__group input,
.mixin__input__group select {
  width: 100%;
  height: 56px;
  padding: 20px 16px 16px;
  color: #333f48;
  border: 1px solid #c3c1c2;
  border-radius: 4px;
  outline: 0;
}
.mixin__input__group input::placeholder,
.mixin__input__group select::placeholder {
  opacity: 0;
}
.mixin__input__group input:focus,
.mixin__input__group select:focus {
  border-color: #7a777a;
}
.mixin__input__group input:focus + label,
.mixin__input__group select:focus + label,
.mixin__input__group input:not(:placeholder-shown) + label,
.mixin__input__group select:not(:placeholder-shown) + label {
  top: 0px;
  font-size: 12px;
  color: #c3c1c2;
}
.mixin__input__group input ~ [class*='icon-rp-Password'] {
  position: absolute;
  top: 16px;
  right: 16px;
  display: flex;
  justify-content: center;
  align-items: center;
  min-width: 24px;
  width: 24px;
  max-width: 24px;
  min-height: 24px;
  height: 24px;
  max-height: 24px;
  font-size: 20px;
}
.mixin__input__group input ~ [class*='icon-rp-Password']::before {
  font-size: 20px;
}
.mixin__input__group input ~ [class*='icon-rp-Password'] img {
  width: 100%;
  height: 100%;
}
.mixin__input__group label {
  position: absolute;
  top: 16px;
  left: 16px;
  margin-bottom: 0;
  transition: all 0.2s ease-in;
}
.mixin__input__group .message {
  display: none;
  align-items: center;
  gap: 4px;
  font-family: "Helvetica Neue", "Helvetica", "Arial", sans-serif;
  font-style: normal;
  font-size: 12px;
  line-height: 18px;
}
.mixin__input__group .message:not([class*='bold']) {
  font-weight: 400;
}
.mixin__input__group .message.vives-text--bold {
  font-weight: 700;
}
.mixin__input__group .message .icon-rp {
  display: flex;
  justify-content: center;
  align-items: center;
  min-width: 12px;
  width: 12px;
  max-width: 12px;
  min-height: 12px;
  height: 12px;
  max-height: 12px;
  font-size: 12px;
}
.mixin__input__group .message .icon-rp::before {
  font-size: 12px;
}
.mixin__input__group .message .icon-rp img {
  width: 100%;
  height: 100%;
}
.mixin__input__group .message--show {
  display: flex;
}
.mixin__input__group .message--error,
.mixin__input__group .message--error .message-text,
.mixin__input__group .message--error .icon-rp::before {
  color: #d52b1e;
}
/* INPUT with icon: select, date…*/
.mixin__input__picker::after {
  position: absolute;
  top: 20px;
  right: 16px;
  font-family: 'icomoon';
  color: #333f48;
  pointer-events: none;
  display: flex;
  justify-content: center;
  align-items: center;
  min-width: 24px;
  width: 24px;
  max-width: 24px;
  min-height: 24px;
  height: 24px;
  max-height: 24px;
  font-size: 20px;
}
.mixin__input__picker::after::before {
  font-size: 20px;
}
.mixin__input__picker::after img {
  width: 100%;
  height: 100%;
}
/*** DATE ***/
.mixin__date__group {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 4px;
  width: 100%;
  /* Input password */
}
.mixin__date__group input,
.mixin__date__group select {
  width: 100%;
  height: 56px;
  padding: 20px 16px 16px;
  color: #333f48;
  border: 1px solid #c3c1c2;
  border-radius: 4px;
  outline: 0;
}
.mixin__date__group input::placeholder,
.mixin__date__group select::placeholder {
  opacity: 0;
}
.mixin__date__group input:focus,
.mixin__date__group select:focus {
  border-color: #7a777a;
}
.mixin__date__group input:focus + label,
.mixin__date__group select:focus + label,
.mixin__date__group input:not(:placeholder-shown) + label,
.mixin__date__group select:not(:placeholder-shown) + label {
  top: 0px;
  font-size: 12px;
  color: #c3c1c2;
}
.mixin__date__group input ~ [class*='icon-rp-Password'] {
  position: absolute;
  top: 16px;
  right: 16px;
  display: flex;
  justify-content: center;
  align-items: center;
  min-width: 24px;
  width: 24px;
  max-width: 24px;
  min-height: 24px;
  height: 24px;
  max-height: 24px;
  font-size: 20px;
}
.mixin__date__group input ~ [class*='icon-rp-Password']::before {
  font-size: 20px;
}
.mixin__date__group input ~ [class*='icon-rp-Password'] img {
  width: 100%;
  height: 100%;
}
.mixin__date__group label {
  position: absolute;
  top: 16px;
  left: 16px;
  margin-bottom: 0;
  transition: all 0.2s ease-in;
}
.mixin__date__group .message {
  display: none;
  align-items: center;
  gap: 4px;
  font-family: "Helvetica Neue", "Helvetica", "Arial", sans-serif;
  font-style: normal;
  font-size: 12px;
  line-height: 18px;
}
.mixin__date__group .message:not([class*='bold']) {
  font-weight: 400;
}
.mixin__date__group .message.vives-text--bold {
  font-weight: 700;
}
.mixin__date__group .message .icon-rp {
  display: flex;
  justify-content: center;
  align-items: center;
  min-width: 12px;
  width: 12px;
  max-width: 12px;
  min-height: 12px;
  height: 12px;
  max-height: 12px;
  font-size: 12px;
}
.mixin__date__group .message .icon-rp::before {
  font-size: 12px;
}
.mixin__date__group .message .icon-rp img {
  width: 100%;
  height: 100%;
}
.mixin__date__group .message--show {
  display: flex;
}
.mixin__date__group .message--error,
.mixin__date__group .message--error .message-text,
.mixin__date__group .message--error .icon-rp::before {
  color: #d52b1e;
}
.mixin__date__group::after {
  position: absolute;
  top: 20px;
  right: 16px;
  font-family: 'icomoon';
  color: #333f48;
  pointer-events: none;
  display: flex;
  justify-content: center;
  align-items: center;
  min-width: 24px;
  width: 24px;
  max-width: 24px;
  min-height: 24px;
  height: 24px;
  max-height: 24px;
  font-size: 20px;
}
.mixin__date__group::after::before {
  font-size: 20px;
}
.mixin__date__group::after img {
  width: 100%;
  height: 100%;
}
.mixin__date__group::after {
  content: "\e917";
}
.mixin__date__group input::-webkit-calendar-picker-indicator {
  opacity: 0;
}
/*** SELECT ***/
.mixin__select__group {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 4px;
  width: 100%;
  /* Input password */
}
.mixin__select__group input,
.mixin__select__group select {
  width: 100%;
  height: 56px;
  padding: 20px 16px 16px;
  color: #333f48;
  border: 1px solid #c3c1c2;
  border-radius: 4px;
  outline: 0;
}
.mixin__select__group input::placeholder,
.mixin__select__group select::placeholder {
  opacity: 0;
}
.mixin__select__group input:focus,
.mixin__select__group select:focus {
  border-color: #7a777a;
}
.mixin__select__group input:focus + label,
.mixin__select__group select:focus + label,
.mixin__select__group input:not(:placeholder-shown) + label,
.mixin__select__group select:not(:placeholder-shown) + label {
  top: 0px;
  font-size: 12px;
  color: #c3c1c2;
}
.mixin__select__group input ~ [class*='icon-rp-Password'] {
  position: absolute;
  top: 16px;
  right: 16px;
  display: flex;
  justify-content: center;
  align-items: center;
  min-width: 24px;
  width: 24px;
  max-width: 24px;
  min-height: 24px;
  height: 24px;
  max-height: 24px;
  font-size: 20px;
}
.mixin__select__group input ~ [class*='icon-rp-Password']::before {
  font-size: 20px;
}
.mixin__select__group input ~ [class*='icon-rp-Password'] img {
  width: 100%;
  height: 100%;
}
.mixin__select__group label {
  position: absolute;
  top: 16px;
  left: 16px;
  margin-bottom: 0;
  transition: all 0.2s ease-in;
}
.mixin__select__group .message {
  display: none;
  align-items: center;
  gap: 4px;
  font-family: "Helvetica Neue", "Helvetica", "Arial", sans-serif;
  font-style: normal;
  font-size: 12px;
  line-height: 18px;
}
.mixin__select__group .message:not([class*='bold']) {
  font-weight: 400;
}
.mixin__select__group .message.vives-text--bold {
  font-weight: 700;
}
.mixin__select__group .message .icon-rp {
  display: flex;
  justify-content: center;
  align-items: center;
  min-width: 12px;
  width: 12px;
  max-width: 12px;
  min-height: 12px;
  height: 12px;
  max-height: 12px;
  font-size: 12px;
}
.mixin__select__group .message .icon-rp::before {
  font-size: 12px;
}
.mixin__select__group .message .icon-rp img {
  width: 100%;
  height: 100%;
}
.mixin__select__group .message--show {
  display: flex;
}
.mixin__select__group .message--error,
.mixin__select__group .message--error .message-text,
.mixin__select__group .message--error .icon-rp::before {
  color: #d52b1e;
}
.mixin__select__group::after {
  position: absolute;
  top: 20px;
  right: 16px;
  font-family: 'icomoon';
  color: #333f48;
  pointer-events: none;
  display: flex;
  justify-content: center;
  align-items: center;
  min-width: 24px;
  width: 24px;
  max-width: 24px;
  min-height: 24px;
  height: 24px;
  max-height: 24px;
  font-size: 20px;
}
.mixin__select__group::after::before {
  font-size: 20px;
}
.mixin__select__group::after img {
  width: 100%;
  height: 100%;
}
.mixin__select__group::after {
  content: "\e923";
}
.mixin__select__group select {
  appearance: none;
}
/*** CHECKBOX ***/
.policy-modal__form {
  margin-top: 32px;
  gap: 32px;
}
.policy-modal__form .checkbox__input__group {
  position: relative;
}
.policy-modal__form .checkbox__input__group .checkbox__input {
  position: absolute;
  top: 0;
  left: 0;
  width: 24px;
  height: 24px;
  opacity: 0;
}
.policy-modal__form .checkbox__input__group .checkbox__input:checked + label::after {
  position: absolute;
  top: 0;
  left: 0;
  content: "\e91b";
  font-family: 'icomoon';
  color: #ffffff;
  background-color: #d52b1e;
  border-color: #d52b1e;
  border-radius: 4px;
  display: flex;
  justify-content: center;
  align-items: center;
  min-width: 24px;
  width: 24px;
  max-width: 24px;
  min-height: 24px;
  height: 24px;
  max-height: 24px;
  font-size: 20px;
  cursor: pointer;
}
.policy-modal__form .checkbox__input__group .checkbox__input:checked + label::after::before {
  font-size: 20px;
}
.policy-modal__form .checkbox__input__group .checkbox__input:checked + label::after img {
  width: 100%;
  height: 100%;
}
@media (hover: hover) {
  .policy-modal__form .checkbox__input__group .checkbox__input:checked + label:hover::after {
    background-color: #a01a1c;
    border-color: #a01a1c;
  }
}
.policy-modal__form .checkbox__input__group .checkbox__input:checked:disabled + label::after,
.policy-modal__form .checkbox__input__group .checkbox__input:disabled + label::after,
.policy-modal__form .checkbox__input__group .checkbox__input:checked:disabled + label::before,
.policy-modal__form .checkbox__input__group .checkbox__input:disabled + label::before {
  color: #c3c1c2;
  background-color: #ebebeb;
  border-color: #ebebeb;
  cursor: none;
}
.policy-modal__form .checkbox__input__group .checkbox__label {
  position: relative;
  width: 100%;
  padding-left: 40px;
  pointer-events: none;
  user-select: none;
}
.policy-modal__form .checkbox__input__group .checkbox__label::before {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 24px;
  height: 24px;
  border: 1px solid #c3c1c2;
  border-radius: 4px;
  pointer-events: all;
  user-select: all;
  cursor: pointer;
}
@media (hover: hover) {
  .policy-modal__form .checkbox__input__group .checkbox__label:hover::before {
    border-color: #333f48;
  }
}
