.grid-section {
    margin: var(--spacing-3x) var(--spacing-0x);
    width: fit-content;
}

.grid-section.auto-width {
    flex-wrap: wrap;
    align-self: stretch;
}

.grid-section.fluid {
    width: 100%;
}

.grid-section.partial-width {
    width: 75%;
    margin: var(--spacing-3x) auto;
}

.grid-section .grid-item.left {
    text-align: start;
}

.grid-section .grid-item.center {
    text-align: center;
}

.grid-section .grid-item.right {
    text-align: end;
}

.grid-section .grid-item > div {
    margin: var(--spacing-0x);
    height: 100%;
}

@media (max-width: 768px) {
    .grid-section {
        grid-template-columns: 1fr !important;
    }

    .grid-section .grid-item.right {
        text-align: start;
    }

    .grid-section.partial-width {
        width: 100%;
        margin: 0;
    }
}