.has-cyan-bluish-gray-background-color, .has-grey-dark-background-color { background-color: var(--grey-dark); }
.has-orange-background-color { background-color: var(--orange); }

a.has-orange-background-color { color: white; }

.is-layout-flex { display: flex; }

.wp-block-button { display: flex; }

.wp-block-button__link:hover, button:hover {
    cursor: pointer;
    transition: 0.2s;
}

.no-text-margin p,
.no-text-margin h1,
.no-text-margin h2,
.no-text-margin h3,
.no-text-margin h4,
p.no-text-margin,
h1.no-text-margin,
h2.no-text-margin,
h3.no-text-margin,
h4.no-text-margin { margin: 0; }

h2.has-large-font-size { font-size: 1.7rem; }

p.has-x-large-font-size { font-size: 3.5rem; }

.has-x-large-font-size sub { font-size: 1.2rem }

sub { vertical-align: bottom; }

.wp-block-columns { display: flex; flex-direction: row; gap: 2rem; }
.wp-block-column { display: flex; flex-direction: column; gap: 2rem; }

.wp-block-column > * { margin: 0; }

.wp-block-group .wp-block-group__inner-container { display: flex; flex-direction: column; gap: 1rem; }

.is-vertically-aligned-center, .is-content-justification-center { justify-content: center; }

.has-medium-font-size { font-size: 1.3rem; }

.has-white-color { color: white;}

.center, .has-text-align-center { text-align: center; }

.w-300 { font-weight: 300; }
.w-400 { font-weight: 400; }
.w-500 { font-weight: 500; }
.w-600 { font-weight: 600; }
.w-700 { font-weight: 700; }

.f-row { display: flex; flex-direction: row; }
.f-col { display: flex; flex-direction: column; }

.f-ali-sta { align-items: flex-start; }
.f-ali-cen { align-items: center; }
.f-ali-end { align-items: flex-end; }

.f-jus-cen { justify-content: center; }
.f-jus-aro { justify-content: space-around; }
.f-jus-bet { justify-content: space-between; }
.f-jus-end { justify-content: flex-end; }
.f-jus-str { justify-content: stretch; }

.f-wrap { flex-wrap: wrap; }
.f-re-wrap { flex-wrap: wrap-reverse; }

.gap-5px { gap: 5px; }
.gap-1rem { gap: 1rem; }
.gap-2rem { gap: 2rem; }
.gap-3rem { gap: 3rem; }
.gap-4rem { gap: 4rem; }

.g2 { display: grid; grid-template-columns: repeat(2, 1fr); }
.g3 { display: grid; grid-template-columns: repeat(3, 1fr); }
.g4 { display: grid; grid-template-columns: repeat(4, 1fr); }

.bo { font-weight: bold; }

.mobile { display: none; }

@media screen and (max-width: 980px) {

    .f-to-row { flex-direction: row; }
    .f-to-col { flex-direction: column; }

    .f-to-ali-sta { align-items: flex-start; }
    .f-to-ali-cen { align-items: center; }
    .f-to-ali-end { align-items: flex-end; }

    .f-to-jus-cen { justify-content: center; }
    .f-to-jus-aro { justify-content: space-around; }
    .f-to-jus-bet { justify-content: space-between; }
    .f-to-jus-end { justify-content: flex-end; }

    .desktop { display: none; }
    .mobile { display: inherit; }

    h2.has-large-font-size { font-size: 24px; }

    .g2, .g3, .g4 {
        grid-template-columns: 1fr;
    }

    .to-g2 {
        grid-template-columns: 1fr 1fr;
    }

    .to-g3 {
        grid-template-columns: 1fr 1fr 1fr;
    }

    .wp-block-columns {
        flex-direction: column;
        gap: 1rem;
        padding: 1rem var(--standardPadding);
    }

    .wp-block-column {
        gap: 1rem;
    }

    .wp-block-group .wp-block-group__inner-container {
        gap: 2rem;
    }

    .wp-block-group__inner-container > .wp-block-columns {
        padding: 0;
        gap: 2rem;
    }

    .to-gap-5px { gap: 5px; }
    .to-gap-1rem { gap: 1rem; }
    .to-gap-2rem { gap: 2rem; }
    .to-gap-3rem { gap: 3rem; }
    .to-gap-4rem { gap: 4rem; }
}
