.radio-group {
  display: grid;
  gap: 12px;
  position: relative;
  padding-bottom: 20px;
}

.radio-group label {
  display: block;
  padding: 14px 16px;
  border: 2px solid #ddd;
  border-radius: 8px;
  cursor: pointer;
  transition: 0.2s;
  font-weight: 500;
}

/* ukrycie natywnego radio */
.radio-group input[type="radio"] {
  display: none;
}

/* hover */
.radio-group label:hover {
  border-color: #999;
}

/* zaznaczony box */
.radio-group input[type="radio"]:checked + * {
  /* nic – fallback */
}

.radio-group input[type="radio"]:checked {
  /* pusty */
}

/* właściwy trik */
.radio-group label:has(input[type="radio"]:checked) {
  border-color: #AF7F66;
}
.radio-group .error {
    left: 20px;
}

.radio-group .has-error {
    border: none !important;
}