.radio-group {
  display: grid;
  grid-template-columns: 33% 33% 33%;
  grid-template-rows: 60px;
  width: 100%;

  &--has-recommendation {
    grid-template-rows: 100px;
  }

  label {
    cursor: pointer;
  }

  &__column {
    text-align: center;
  }

  &__column-recommended {
    height: 20px;
  }

  &__column-inner {
    display: flex;
    flex-direction: column;
    align-items: center;
  }

  &__column-line,
  &__column-horizontal-line,
  &__column-radio,
  &__column-label {
    flex: 1 1 auto;
  }

  &__column-start-connector {
    width: calc(50% + 0.5px);
    height: 6px;
    border-left: 1px solid var(--color-border-muted);
    border-bottom: 1px solid var(--color-border-muted);
    align-self: flex-end;
  }

  &__column-end-connector {
    width: calc(50% + 0.5px);
    height: 6px;
    border-right: 1px solid var(--color-border-muted);
    border-bottom: 1px solid var(--color-border-muted);
    align-self: flex-start;
  }

  &__column-vertical-line {
    width: 1px;
    height: 5px;
    border-left: 1px solid var(--color-border-muted);
  }

  &__column-horizontal-line {
    height: 1px;
    border-bottom: 1px solid var(--color-border-muted);
    width: 100%;
  }

  &__column-radio {
    input {
      cursor: pointer;
      margin: 0;
    }
  }

  &__column-radio,
  &__column-label {
    text-align: center;
  }

  &__column-label {
    padding-top: 6px;
  }
}
