@mixin fluid-text($max: 48, $min: 16, $container-width: 1660) {
    font-size: clamp(#{$min}px, calc(#{$max} / #{$container-width} * 100 * 1vw), #{$max}px);
}

@mixin reset-link {
    color: inherit;

    &,
    &:hover {
        text-decoration: none;
    }
}

@mixin reset-button {
    padding: 0;
    background-color: transparent;
    border: none;
}

@mixin flex-center($justify: center, $isInline: false) {
    @if $isInline {
        display: inline-flex;
    }

    @else {
        display: flex;
    }

    justify-content: $justify;
    align-items: center;
}

@mixin flex-stretch($justify: center, $isInline: false) {
    @if $isInline {
        display: inline-flex;
    }

    @else {
        display: flex;
    }

    justify-content: $justify;
    align-items: stretch;
}

@mixin abs-center {
    position: absolute;
    top: 50%;
    left: 50%;
    translate: -50% -50%;
}

@mixin square($size) {
    width: $size;
    aspect-ratio: 1;
}