.field {
    margin: 20px 0;
}
.field:first-child {
    margin-top: 0;
}
.field:last-child {
    margin-bottom: 0;
}
@media only screen and (min-width: 48.0625em) {
    .field {
        margin: 20px 0;
    }
}
.field--section-spacing {
    margin: 32px 0;
}
.field--section-spacing:first-child {
    margin-top: 0;
}
.field--section-spacing:last-child {
    margin-bottom: 0;
}
@media only screen and (min-width: 48.0625em) {
    .field--section-spacing {
        margin: 56px 0;
    }
}
.field--no-spacing {
    margin: 0;
}

.ctrl-holder {
    border: none;
    margin: 0;
    padding: 0;
}
@media only screen and (min-width: 64em) {
    .ctrl-holder.is-inline {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
    }
    .ctrl-holder.is-inline > .ctrl-label,
    .ctrl-holder.is-inline > label {
        width: 200px;
        text-align: right;
        padding-right: 20px;
        position: relative;
        top: 6px;
    }
    .ctrl-holder.is-inline > .ctrl {
        -webkit-box-flex: 1;
        -webkit-flex-grow: 1;
        -ms-flex-positive: 1;
        flex-grow: 1;
    }
}
.ctrl-holder.width-xxl > .ctrl > .ctrl__width-wrap {
    width: 100%;
    max-width: none;
}
@media (min-width: 23.4375em) {
    .ctrl-holder.width-xxl > .ctrl > .ctrl__width-wrap {
        max-width: 460px;
    }
}
.ctrl-holder.width-xl > .ctrl > .ctrl__width-wrap {
    width: 100%;
    max-width: none;
}
@media (min-width: 23.4375em) {
    .ctrl-holder.width-xl > .ctrl > .ctrl__width-wrap {
        max-width: 360px;
    }
}
.ctrl-holder.width-l > .ctrl > .ctrl__width-wrap {
    width: 100%;
    max-width: none;
}
@media (min-width: 23.4375em) {
    .ctrl-holder.width-l > .ctrl > .ctrl__width-wrap {
        max-width: 265px;
    }
}
.ctrl-holder.width-m > .ctrl > .ctrl__width-wrap {
    width: 100%;
    max-width: none;
}
@media (min-width: 23.4375em) {
    .ctrl-holder.width-m > .ctrl > .ctrl__width-wrap {
        max-width: 170px;
    }
}
.ctrl-holder.width-s > .ctrl > .ctrl__width-wrap {
    width: 100%;
    max-width: none;
}
@media (min-width: 23.4375em) {
    .ctrl-holder.width-s > .ctrl > .ctrl__width-wrap {
        max-width: 75px;
    }
}
.ctrl-holder.width-fixed-s > .ctrl > .ctrl__width-wrap {
    width: 75px;
    max-width: none;
}
@media (min-width: 23.4375em) {
    .ctrl-holder.width-fixed-s > .ctrl > .ctrl__width-wrap {
        width: 75px;
    }
}
.ctrl-help,
.status-msg {
    display: block;
    margin-top: 5px;
}


.status-msg {
    display: block;
    margin-top: 5px;
}
.status-msg {
    clear: both;
    margin-bottom: -8px;
}
.status-msg--error .status-msg__message,
.status-msg .status-msg__message {
    color: #eb0000;
}
.status-msg--success .status-msg__message {
    color: #badc52;
}
.ctrl-label {
    font-size: 16px;
    line-height: 1.5;
    display: block;
    margin: 0 0 5px;
    text-align: left;
    color: #333;
    clear: both;
}
.option-group--has-help-text .ctrl-label {
    font-weight: 700;
}
.option-group--has-help-text .ctrl-label > .ctrl-help,
.option-group--has-help-text .ctrl-label > .tooltip-container {
    font-weight: 400;
}

.text-input input {
    width: 100%;
    font-size: 16px;
    line-height: normal;
    padding: 10px;
    margin: 0;
    display: block;
    color: #333;
    background-color: #fff;
    border: 1px solid #e4e4e4;
    -webkit-box-shadow: inset 0 3px 0 0 #8d8d8d;
    box-shadow: inset 0 3px 0 0 #8d8d8d;
    outline: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border-radius: 6px;
}


.text-input--error input {
    background-color: #fbf2ee;
    border-color: #eb0000;
    -webkit-box-shadow: inset 0 3px 0 0 #eb0000;
    box-shadow: inset 0 3px 0 0 #eb0000;
}

.text-input--error textarea {
    background-color: #fbf2ee;
    border-color: #eb0000;
    -webkit-box-shadow: inset 0 3px 0 0 #eb0000;
    box-shadow: inset 0 3px 0 0 #eb0000;
}

button, html, input, select, textarea {
    font-family: Effra,Arial,Helvetica,sans-serif;
}


.select-input {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
}
.select-input select {
    width: 100%;
    font-size: 16px;
    line-height: normal;
    margin: 0;
    display: block;
    color: #333;
    background-color: #fff;
    border: 1px solid #e4e4e4;
    -webkit-box-shadow: 0 3px 0 0 #8d8d8d;
    box-shadow: 0 3px 0 0 #8d8d8d;
    outline: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border-radius: 6px;
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg width='9' height='6' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M8.55 1.4L7.602.45 4.5 3.584 1.399.451l-.95.949L4.5 5.45z' fill='%23333' fill-rule='evenodd'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 16px center;
    padding: 10px 30px 10px 10px;
}
.lt-ie10 .select-input select {
    min-height: 0;
}
.select-input select:focus {
    border-color: #333;
    background-color: #fff;
}
.select-input select.disabled,
.select-input select:disabled {
    color: #8d8d8d;
    -webkit-text-fill-color: #8d8d8d;
    border: 1px solid #e4e4e4;
    background-color: #f8f8f8;
    cursor: not-allowed;
}
.is-placeholder .select-input select {
    color: #8d8d8d;
}
.select-input select::-ms-expand {
    display: none;
}
.select-input--error select {
    background-color: #fbf2ee;
    border-color: #eb0000;
    -webkit-box-shadow: 0 3px 0 0 #eb0000;
    box-shadow: 0 3px 0 0 #eb0000;
}
.select-input--error select:focus {
    border-color: #eb0000;
    background-color: #fff;
}
.select-input--success select {
    background-color: #f8fbee;
    border-color: #badc52;
    -webkit-box-shadow: 0 3px 0 0 #badc52;
    box-shadow: 0 3px 0 0 #badc52;
}
.select-input--success select:focus {
    border-color: #badc52;
    background-color: #fff;
}
.select--has-help-text .ctrl-label {
    font-weight: 700;
}
.select--has-help-text .ctrl-label__help {
    font-weight: 400;
}
.is-ie11 select option:disabled {
    background-color: #fff;
}
.date-seg__inputs {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
}

.radio-pill .options {

    margin: 0;
    padding: 0;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.radio-pill .option:first-child {
    border-left: 1px solid #e4e4e4;
    border-top-left-radius: 5px;
    border-bottom-left-radius: 5px;
}

.radio-pill .option {
    background: #f8f8f8;
    border: 1px solid #e4e4e4;
    border-left: none;
    display: block;
}

.radio input[type="radio"] {
    position: absolute;
    margin-top: 7px !important;
    margin-left: 2px !important;
}