.radio {
    font-size: 14px;
    line-height: 20px
}

.radio input[type=radio] {
    width: 0;
    height: 0;
    margin: 0;
    position: absolute
}

.radio label {
    padding-left: 25px;
    display: block;
    position: relative;
    z-index: 2;
    font-size: 16px;
    line-height: 22px;
    cursor: pointer
}

.radio label::before {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 16px;
    height: 16px;
    background: #fff;
    border-radius: 50%;
    border: 2px solid var(--input-border-color)
}

.radio input[type=radio]:checked+label::before {
    border-color: var(--input-border-color);
    background-color: #12225c
}

.sitecore-form .component-content form .agreement-section label {
    font-size: 14px;
    line-height: 20px;
    position: relative;
    display: inline-flex;
    align-items: center;
    margin-bottom: 10px;
    width: 100%
}

.sitecore-form .component-content form .agreement-section label:not(:first-of-type) {
    margin-left: 34px
}

.sitecore-form .component-content form .agreement-section label:not(:first-of-type):hover::before {
    box-shadow: rgba(0, 0, 0, .05) 0 0 0 7px;
    background-color: rgba(0, 0, 0, .05)
}

.sitecore-form .component-content form .agreement-section input[type=radio]+label:not(:first-of-type)::before {
    content: "";
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    height: 18px;
    width: 18px;
    left: -34px;
    border: 2px solid var(--input-border-color);
    border-radius: 50%
}

.sitecore-form .component-content form .agreement-section input[type=radio]:checked+label:not(:first-of-type)::after {
    content: "";
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    height: 10px;
    width: 10px;
    left: -30px;
    background-color: var(--input-border-color);
    border-radius: 50%
}

.sitecore-form .component-content form .agreement-section input {
    display: none
}