.SelectWrapper {
  position: relative;
  width: 100%;
}

.SelectWrapper::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 1.5rem;
  transform: translateY(-50%);
  width: 0;
  height: 0;
  border-left: 6px solid transparent;
  border-right: 6px solid transparent;
  border-top: 6px solid var(--gray-dark);
  pointer-events: none;
}

.SelectWrapper select {
  width: 100%;
  height: 3.4rem;
  padding: 0 3rem 0 1.6rem;
  border: none;
  border-radius: 2.4rem;
  font-size: 1.6rem;
  background-color: var(--white);
  outline: none;
  color: #333;
  font-weight: 300;
  font-family: var(--font-open-sans);
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  cursor: pointer;
}

.SelectWrapper select::-ms-expand {
  display: none;
}

.SelectWrapper select::placeholder {
  color: #333;
  font-size: 1.6rem;
  font-weight: 300;
  font-family: var(--font-open-sans);
}

/* Style for empty select */
.SelectWrapper.empty select {
  color: #777;
}

/* Style for focus state */
.SelectWrapper select:focus {
  box-shadow: 0 0 0 2px rgba(var(--red-rgb), 0.3);
}

/* Arrow animation on focus and hover */
.SelectWrapper select:focus ~ .arrow-icon {
  transform: translateY(-50%) rotate(180deg);
  transition: transform 0.3s ease;
}

/* Error state */
.SelectError {
  color: var(--color-error);
  font-size: 1.2rem;
  margin-top: 0.4rem;
  position: absolute;
  left: 1.6rem;
  bottom: -1.8rem;
  font-size: 1.1rem;
}
