.margin {
    margin: var(--margin_margin);
}

.marginLeft {
    margin-left: var(--marginLeft) !important;
}

.marginXS, .marginS, .marginM, .marginL, .marginXL, .marginPaddingXS, .marginPaddingS, .marginPaddingM, .marginPaddingL, .marginPaddingXL {
    display: flex;
    width: 100%;
}

.marginPaddingXS {
    gap: var(--marginXS);
}

.marginPaddingS {
    gap: var(--marginS);
}

.marginPaddingM {
    gap: var(--marginM);
}

.marginPaddingL {
    gap: var(--marginL);
}

.marginPaddingXL {
    gap: var(--marginXL);
}

.marginPaddingXS.blockLeft, .marginPaddingS.blockLeft, .marginPaddingM.blockLeft, .marginPaddingL.blockLeft, .marginPaddingXL.blockLeft {
    justify-content: flex-start;
}

.marginPaddingXS.blockCenter, .marginPaddingS.blockCenter, .marginPaddingM.blockCenter, .marginPaddingL.blockCenter, .marginPaddingXL.blockCenter {
    justify-content: center;
}

.marginPaddingXS.blockRight, .marginPaddingS.blockRight, .marginPaddingM.blockRight, .marginPaddingL.blockRight, .marginPaddingXL.blockRight {
    justify-content: flex-end;
}

.marginPaddingXS.blockLeft:not(.blockColumn), .marginPaddingS.blockLeft:not(.blockColumn), .marginPaddingM.blockLeft:not(.blockColumn), .marginPaddingL.blockLeft:not(.blockColumn), .marginPaddingXL.blockLeft:not(.blockColumn), .marginPaddingXS.blockCenter:not(.blockColumn), .marginPaddingS.blockCenter:not(.blockColumn), .marginPaddingM.blockCenter:not(.blockColumn), .marginPaddingL.blockCenter:not(.blockColumn), .marginPaddingXL.blockCenter:not(.blockColumn), .marginPaddingXS.blockRight:not(.blockColumn), .marginPaddingS.blockRight:not(.blockColumn), .marginPaddingM.blockRight:not(.blockColumn), .marginPaddingL.blockRight:not(.blockColumn), .marginPaddingXL.blockRight:not(.blockColumn) {
    align-items: center;
}

.marginLine {
    width: 100%;
    height: var(--marginLine_borderWidth);
    border: 0;
    background-color: var(--marginLine_backgroundColor);
}

@media (prefers-color-scheme: dark) {
    .marginLine {
        background-color: var(--marginLine_backgroundColorD);
    }
}

@media only screen and (max-width: 500px) {
    .marginXS {
        height: calc(2 * var(--marginXS));
    }

    .marginS {
        height: calc(2 * var(--marginS));
    }

    .marginM {
        height: calc(2 * var(--marginM));
    }

    .marginL {
        height: calc(2 * var(--marginL));
    }

    .marginXL {
        height: calc(2 * var(--marginXL));
    }

    .marginPaddingXS {
        padding: clamp(15px, 5dvw, 20px) 10px;
    }

    .marginPaddingS {
        padding: clamp(20px, 6dvw, 25px) 10px;
    }

    .marginPaddingM {
        padding: clamp(25px, 7dvw, 30px) 10px;
    }

    .marginPaddingL {
        padding: clamp(30px, 8dvw, 35px) 10px;
    }

    .marginPaddingXL {
        padding: clamp(35px, 9dvw, 40px) 10px;
    }
}

@media only screen and (min-width: 501px) and (max-width: 1000px) {
    .marginXS {
        height: calc(3 * var(--marginXS));
    }

    .marginS {
        height: calc(3 * var(--marginS));
    }

    .marginM {
        height: calc(3 * var(--marginM));
    }

    .marginL {
        height: calc(3 * var(--marginL));
    }

    .marginXL {
        height: calc(3 * var(--marginXL));
    }

    .marginPaddingXS {
        padding: clamp(20px, 4dvw, 25px) 10px;
    }

    .marginPaddingS {
        padding: clamp(25px, 5dvw, 30px) 10px;
    }

    .marginPaddingM {
        padding: clamp(30px, 6dvw, 35px) 10px;
    }

    .marginPaddingL {
        padding: clamp(35px, 7dvw, 40px) 10px;
    }

    .marginPaddingXL {
        padding: clamp(40px, 8dvw, 45px) 10px;
    }
}

@media only screen and (min-width: 1001px) {
    .marginXS {
        height: calc(4 * var(--marginXS));
    }

    .marginS {
        height: calc(4 * var(--marginS));
    }

    .marginM {
        height: calc(4 * var(--marginM));
    }

    .marginL {
        height: calc(4 * var(--marginL));
    }

    .marginXL {
        height: calc(4 * var(--marginXL));
    }

    .marginPaddingXS {
        padding: clamp(25px, 2.5dvw, 35px) 10px;
    }

    .marginPaddingS {
        padding: clamp(30px, 3dvw, 40px) 10px;
    }

    .marginPaddingM {
        padding: clamp(35px, 3.5dvw, 45px) 10px;
    }

    .marginPaddingL {
        padding: clamp(40px, 4dvw, 50px) 10px;
    }

    .marginPaddingXL {
        padding: clamp(45px, 4.5dvw, 55px) 10px;
    }
}