.service-options {
  margin: -2px 0 24px;
  padding: 22px;
  background: #fbfaf7;
  border: 1px solid #e4dccd;
  border-radius: 12px;
}

.service-options[hidden],
.option-group[hidden] {
  display: none;
}

.option-title {
  margin: 0;
  color: #575149;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.option-help {
  margin: 3px 0 16px;
  color: #938c82;
  font-size: 11px;
}

.option-group {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 9px;
}

.quote-form .option-group label {
  display: flex;
  align-items: center;
  gap: 9px;
  margin: 0;
  padding: 11px;
  background: #fff;
  border: 1px solid #e0d9ce;
  border-radius: 9px;
  color: #575149;
  cursor: pointer;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0;
  text-transform: none;
  transition: .2s;
}

.quote-form .option-group label:has(input:checked) {
  background: #faf3e3;
  border-color: #b68b38;
  color: #725620;
}

.quote-form .option-group input {
  display: grid;
  width: 17px;
  min-width: 17px;
  height: 17px;
  margin: 0;
  padding: 0;
  appearance: none;
  background: #fff;
  border: 1px solid #b7aea0;
  border-radius: 4px;
  place-content: center;
}

.quote-form .option-group input:checked {
  background: #b68b38;
  border-color: #b68b38;
}

.quote-form .option-group input:checked::after {
  content: "✓";
  color: #fff;
  font-size: 12px;
  line-height: 1;
}

@media (max-width: 700px) {
  .option-group { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 430px) {
  .option-group { grid-template-columns: 1fr; }
}
