.ic__content {
    row-gap: 1rem;
}

.ic__box {
    position: relative;
    display: flex;
    align-items: center;
    background-color: var(--border-color);
    border-radius: 1rem;
}

.ic__input {
    background: none;
    width: 100%;
    padding: 1.5rem 2.5rem 1.5rem 1.25rem;
    font-weight: var(--font-semi-bold);
    border: 3px solid transparent;
    border-radius: 1rem;
    z-index: 1;
    transition: border-color .4s;
    color: var(--text-color);
}

.ic__input:autofill {
    transition: background-color 6000s, color 6000s;
}

.ic__input__invalid {
    color: hsl(340, 100%, 50%);
    font-size: var(--smaller-font-size);
    text-align: left;
    margin-top: .5rem;
}

.ic__label {
    position: absolute;
    left: 1.25rem;
    font-weight: var(--font-semi-bold);
    font-size: var(--small-font-size);
    transition: transform .4s, font-size .4s, color .4s;
}

.ic__icon {
    position: absolute;
    right: 1rem;
    font-size: 1.25rem;
    transition: color .4s;
}

.ic__input:focus~.ic__label {
    transform: translateY(-12px);
    font-size: var(--tiny-font-size);
}

.ic__input:focus {
    padding-block: 2rem 1rem;
}

/* Input focus sticky top label */
.ic__input:not(:placeholder-shown).ic__input:not(:focus)~.ic__label {
    transform: translateY(-12px);
    font-size: var(--tiny-font-size);
}

.ic__input:not(:placeholder-shown).ic__input:not(:focus) {
    padding-block: 2rem 1rem;
}

/* Input focus color */
.ic__input:focus {
    border-color: var(--first-color);
}

.ic__input:focus~.ic__label,
.ic__input:focus~.ic__icon {
    color: var(--first-color);
}

.ic__button__group {
    display: flex;
    justify-content: space-between;
}

/* Input is-invalid */
.ic__input.is-invalid {
    border-color: hsl(340, 100%, 50%);
}
