DRYer way to set column widths than with if statement?
One way to make it a bit more DRY and flexible is to use the split filter to create an array of column widths.

Also, you can save a bit of markup by calculating the total number of columns, and using a for loop to output the actual column DOM nodes:

{% set columns = content.columnWidth|default('1-2')|split('-') %}
{% set totalColumns = columns[0] + columns[1] %}

&lt;div class="wrapper"&gt;
    {% for column in columns %}
        &lt;div class="column-{{ column }}-of-{{ totalColumns }}"&gt;
           [...]
        &lt;/div&gt;
    {% endfor %}
&lt;/div&gt;