@media (prefers-color-scheme: dark) {
    img {
        filter: brightness(.8) contrast(1.2);
    }

    body, .usa-radio {
        background-color: #000;
    }

    body {
        color-scheme: dark;
    }

    body, .usa-logo a, .usa-radio__label, .usa-input, .usa-textarea, .usa-select, .usa-combo-box__input, .usa-combo-box__list-option {
        color: #ccc;
    }

    .usa-hint--required {
        color: #ff0c0c;
    }

    .usa-combo-box button {
        filter: invert(100%) sepia(100%) saturate(1%) hue-rotate(124deg) brightness(101%) contrast(101%)
    }

    .usa-input, .usa-textarea, .usa-select, .usa-combo-box__input, .usa-combo-box__list-option {
        background-color: #333;
    }

        .usa-select:enabled {
            background-image: url(../img/unfold_more-dark.svg),linear-gradient(transparent,transparent);
        }

    .usa-footer__return-to-top a:visited {
        color: #74b335;
    }
}

.usa-footer__secondary-section {
    color: #bbb;
    background-color: #0a0a12;
}

@media (max-width:640px) {
    #foot {
        justify-content: center;
    }
}

.usa-header img {
    object-fit: scale-down;
}

.usa-footer__logo .grid-col-auto:first-of-type {
    display: flex;
    align-items: center;
}

.usa-footer__logo .agency {
    display: inline-flex;
    flex-direction: row;
    align-items: center;
    margin: -7px 0 0 0
}

    .usa-footer__logo .agency h1, .usa-footer__logo .agency h3 {
        color: #bbb;
        text-transform: uppercase
    }

    .usa-footer__logo .agency h1 {
        font-size: 3.9em;
        font-weight: 600;
        font-family: "Arial Black",sans-serif,Arial,Helvetica;
        text-shadow: 0 4px 3px rgba(0,0,0,0.4),0 8px 13px rgba(0,0,0,0.1),0 18px 23px rgba(0,0,0,0.1);
        margin: 1px 0 0;
        color: #fff
    }

    .usa-footer__logo .agency h3 {
        font-size: 1.6em;
        max-width: 10.1em;
        letter-spacing: 1px;
        font-weight: 300;
        line-height: 1.1em;
        margin: 4px 0 0 7px;
        text-shadow: 0 4px 3px rgba(0,0,0,0.4),0 8px 13px rgba(0,0,0,0.1),0 18px 23px rgba(0,0,0,0.1)
    }

.usa-footer__logo-heading {
    text-align: right;
    font-weight: normal;
}

.social-icons ul {
    list-style-type: none;
    padding: 0;
    margin: 0.5em 0 0;
    display: flex;
    flex-direction: row;
    justify-content: flex-end;
}

.social-icons li:not(:last-of-type) {
    margin: 0 12px 0 0;
}

.social-icons svg {
    color: #337ab7;
    width: 30px;
    height: 30px;
    fill: #bbb;
}

.social-icons a :is(path, circle) {
    transition: fill .3s ease-in;
}

.social-icons a:hover .facebook-icon {
    fill: #4464a7;
}

.social-icons a:hover .twitter-icon {
    fill: #6cadde;
}

.social-icons a:hover .youtube-icon {
    fill: #d32f2f;
}

.social-icons a:hover .flickr-icon {
    fill: #ff0084;
}

.social-icons a:hover .linkedin-icon {
    fill: #0077b5;
}

.social-icons a:hover .instagram-icon {
    fill: #be0089;
}

abbr.usa-hint--required {
    text-decoration: none;
}

@media (min-width:640px) {
    .usa-header .usa-navbar {
        width: 50%;
    }
}

.val-error {
    color: #f00;
}

    .val-error::before {
        content: "\26A0  ";
    }

    .val-error:empty::before {
        content: unset;
    }

fieldset.usa-fieldset {
    margin-top: 1rem;
}

.usa-logo__text a {
    display: flex;
    align-items: center;
}

    .usa-logo__text a img {
        object-fit: scale-down;
        max-height: 3rem;
        margin-right: 1rem;
    }

button[type="submit"] {
    margin-top: 1em;
}

.usa-label {
    font-weight: bold;
}

fieldset[disabled] :is(label, textarea, legend) {
    filter: opacity(70%) brightness(80%);
}

fieldset[disabled] :is(label, legend) .usa-hint--required {
    display: none;
}

input[type="date"] {
    width: 10rem;
}

input[type="tel"] {
    width: 12rem;
}

input[type="number"] {
    text-align: right;
    width: 10rem;
    appearance: textfield;
    -moz-appearance: textfield;
}

input[type='number']::-webkit-inner-spin-button,
input[type='number']::-webkit-outer-spin-button,
input[type='number']:hover::-webkit-inner-spin-button,
input[type='number']:hover::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

fieldset.noborder {
    border: unset;
    padding: unset;
}

:is(label, input, select).inline {
    display: inline-block;
}

label.inline {
    width: 12rem;
}

/* specific modifications */

.ic3-crypto-addresses {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
}
.ic3-crypto-addresses .usa-input {
    font-family: Roboto Mono Web,Bitstream Vera Sans Mono,Consolas,Courier,monospace;
    min-width: 28rem;
}