.container {
    max-width: 80rem;
    margin-inline: auto;
}

.flex {
    display: flex;
}

.align-center {
    align-items: center;
}

.justify-center {
    justify-content: center;
}

.justify-between {
    justify-content: space-between;
}

.flex-wrap {
    flex-wrap: wrap;
}

.flex-column {
    flex-direction: column;
}

.grid {
    display: grid;
}

.gap-1 {
    gap: 1rem;
}

.gap-2 {
    gap: 2rem;
}

.px-md {
    padding-inline: 2rem;
}

.icon-md {
    width: 1.5rem;
    height: 1.5rem;
}

.icon-lg {
    width: 2.5rem;
    height: 2.5rem;
}

/* mobile */
@media (width < 40rem) {
    .desktop-only {
        display: none;
    }

    .px-md:not(.profile) {
        padding-inline: 1rem;
    }
}