h2.has-text-align-left:not(.subtitle):before,
h2:not(.has-text-align-right, .has-text-align-center, .subtitle, .post-title, .card-title):before  {
    content: "";
    display: inline-block;
    width: 6rem;
    height: 2rem;
    margin-right: 1rem;
    background: var(--global--color-primary);
}
h2.has-text-align-right:not(.subtitle):after {
    content: "";
    display: inline-block;
    width: 6rem;
    height: 2rem;
    margin-left: 1rem;
    background: var(--global--color-primary);
}

h3.has-text-align-left:before,
h3:not(.has-text-align-right, .has-text-align-center, .room-title, .proposition-place-title, .proposition-dates-title, .card-title, .frm_pos_top, .card-title):before  {
    content: "";
    display: inline-block;
    width: 4rem;
    height: 1.5rem;
    margin-right: 1rem;
    background: var(--global--color-primary);
}


h3.has-text-align-right:after {
    content: "";
    display: inline-block;
    width: 4rem;
    height: 1.5rem;
    margin-left: 1rem;
    background: var(--global--color-primary);
}

@media only screen and (max-width: 782px) {
     h2.rectangle.has-text-align-left:before {
        width: 3rem;
    }
    
    h2.rectangle.has-text-align-right:after {
        width: 3rem;
    }
    
    h3.rectangle.has-text-align-left:before {
        width: 2rem;
    }
    
    h3.rectangle.has-text-align-right:after {
        width: 2rem;
    }
}
