.masonry
{
	--masonry-columns: 1;
	--masonry-gaps: calc(var(--masonry-columns) - 1);
	--masonry-gap-x: var(--columns-gutter-x, 1rem);
	--masonry-gap-y: var(--columns-gutter-y, 1rem);
	position: relative;
	display: flex;
	overflow: visible;
	justify-content: stretch;
	gap: 0 var(--masonry-gap-x);
	padding: var(--gutter-y, 2rem) var(--gutter-x, 2rem);
	box-sizing: border-box;
}

.masonry-tiles { display: none; }
.masonry-tiles > *, .masonry-column > * { box-sizing: border-box; }
.masonry-column { gap: var(--masonry-gap-y) 0; flex: 1 1 auto; width: calc(100% / var(--masonry-columns)); display: flex; flex-flow: column nowrap; justify-content: stretch; align-items: stretch; box-sizing: border-box; }
.masonry-column > :is(*, *:not(:last-child)) { margin: 0; }
.pageroot .masonry-tiles { display: block; width: 100%; }
.pageroot .masonry-tiles > .dropzone { display: flex; width: 100%; flex-flow: row wrap; gap: var(--masonry-gap-y) var(--masonry-gap-x); }
.pageroot .masonry-tiles > .dropzone:after { display: none; }
.pageroot .masonry-tiles > .dropzone > .render-container { width: calc((100% - var(--masonry-gap-x) * var(--masonry-gaps)) / var(--masonry-columns)); margin: 0; }
.pageroot .masonry-tiles > .dropzone > .drag-drop-marker { position: absolute; display: none; }

/*  columns  */
.masonry-columns-2 { --masonry-columns: 2; }
@media (max-width: 960px) { .masonry-columns-2 > .masonry-column-1 { display: none; } .masonry-columns-2 { --masonry-columns: 1; } }

.masonry-columns-3 { --masonry-columns: 3; }
@media (max-width: 1280px) { .masonry-columns-3 > .masonry-column-2 { display: none; } .masonry-columns-3 { --masonry-columns: 2; } }
@media (max-width: 640px) { .masonry-columns-3 > .masonry-column-1 { display: none; } .masonry-columns-3 { --masonry-columns: 1; } }

.masonry-columns-4 { --masonry-columns: 4; }
@media (max-width: 1440px) { .masonry-columns-4 > .masonry-column-3 { display: none; } .masonry-columns-4 > .masonry-column { --masonry-columns: 3; } }
@media (max-width: 960px) { .masonry-columns-4 > .masonry-column-2 { display: none; } .masonry-columns-4 > .masonry-column { --masonry-columns: 2; } }
@media (max-width: 480px) { .masonry-columns-4 > .masonry-column-1 { display: none; } .masonry-columns-4 > .masonry-column { --masonry-columns: 1; } }

.masonry-columns-5 { --masonry-columns: 5; }
@media (max-width: 1536px) { .masonry-columns-5 > .masonry-column-4 { display: none; } .masonry-columns-5 > .masonry-column { --masonry-columns: 4; } }
@media (max-width: 1152px) { .masonry-columns-5 > .masonry-column-3 { display: none; } .masonry-columns-5 > .masonry-column { --masonry-columns: 3; } }
@media (max-width: 768px) { .masonry-columns-5 > .masonry-column-2 { display: none; } .masonry-columns-5 > .masonry-column { --masonry-columns: 2; } }
@media (max-width: 384px) { .masonry-columns-5 > .masonry-column-1 { display: none; } .masonry-columns-5 > .masonry-column { --masonry-columns: 1; } }

.masonry-columns-6 { --masonry-columns: 6; }
@media (max-width: 1600px) { .masonry-columns-6 > .masonry-column-5 { display: none; } .masonry-columns-6 > .masonry-column { --masonry-columns: 5; } }
@media (max-width: 1280px) { .masonry-columns-6 > .masonry-column-4 { display: none; } .masonry-columns-6 > .masonry-column { --masonry-columns: 4; } }
@media (max-width: 960px) { .masonry-columns-6 > .masonry-column-3 { display: none; } .masonry-columns-6 > .masonry-column { --masonry-columns: 3; } }
@media (max-width: 640px) { .masonry-columns-6 > .masonry-column-2 { display: none; } .masonry-columns-6 > .masonry-column { --masonry-columns: 2; } }
@media (max-width: 320px) { .masonry-columns-6 > .masonry-column-1 { display: none; } .masonry-columns-6 > .masonry-column { --masonry-columns: 1; } }

.masonry-columns-7 { --masonry-columns: 7; }
@media (max-width: 1646px) { .masonry-columns-7 > .masonry-column-6 { display: none; } .masonry-columns-7 > .masonry-column { --masonry-columns: 6; } }
@media (max-width: 1371px) { .masonry-columns-7 > .masonry-column-5 { display: none; } .masonry-columns-7 > .masonry-column { --masonry-columns: 5; } }
@media (max-width: 1097px) { .masonry-columns-7 > .masonry-column-4 { display: none; } .masonry-columns-7 > .masonry-column { --masonry-columns: 4; } }
@media (max-width: 823px) { .masonry-columns-7 > .masonry-column-3 { display: none; } .masonry-columns-7 > .masonry-column { --masonry-columns: 3; } }
@media (max-width: 549px) { .masonry-columns-7 > .masonry-column-2 { display: none; } .masonry-columns-7 > .masonry-column { --masonry-columns: 2; } }
@media (max-width: 274px) { .masonry-columns-7 > .masonry-column-1 { display: none; } .masonry-columns-7 > .masonry-column { --masonry-columns: 1; } }

.masonry-columns-8 { --masonry-columns: 8; }
@media (max-width: 1680px) { .masonry-columns-8 > .masonry-column-7 { display: none; } .masonry-columns-8 > .masonry-column { --masonry-columns: 7; } }
@media (max-width: 1440px) { .masonry-columns-8 > .masonry-column-6 { display: none; } .masonry-columns-8 > .masonry-column { --masonry-columns: 6; } }
@media (max-width: 1200px) { .masonry-columns-8 > .masonry-column-5 { display: none; } .masonry-columns-8 > .masonry-column { --masonry-columns: 5; } }
@media (max-width: 960px) { .masonry-columns-8 > .masonry-column-4 { display: none; } .masonry-columns-8 > .masonry-column { --masonry-columns: 4; } }
@media (max-width: 720px) { .masonry-columns-8 > .masonry-column-3 { display: none; } .masonry-columns-8 > .masonry-column { --masonry-columns: 3; } }
@media (max-width: 480px) { .masonry-columns-8 > .masonry-column-2 { display: none; } .masonry-columns-8 > .masonry-column { --masonry-columns: 2; } }
@media (max-width: 240px) { .masonry-columns-8 > .masonry-column-1 { display: none; } .masonry-columns-8 > .masonry-column { --masonry-columns: 1; } }

/*  background colors  */
.masonry-bgcolor-white { background: #FFFFFF; }
.masonry-bgcolor-lightgrey { background: #F0F0F0; }
.masonry-bgcolor-grey { background: #AAAAAA; }
.masonry-bgcolor-darkgrey { background: #666666; color: #FFFFFF; }
.masonry-bgcolor-black { background: #000000; color: #FFFFFF; }

/*  padding  */
.masonry-padding-none { padding: 0; }
.masonry-padding-small { padding: max(var(--gutter-min-y, 1rem), var(--gutter-y, 1rem) / 2) max(var(--gutter-min-x, 1rem), var(--gutter-x, 1rem) / 2); }
.masonry-padding-large { padding: max(var(--gutter-min-y, 1rem), var(--gutter-y, 1rem) * 2) max(var(--gutter-min-x, 1rem), var(--gutter-x, 1rem) * 2); }
.masonry-padding-vertical { padding: 0 var(--gutter-x, 2rem); }

/*  gap  */
.masonry-gap-none { --masonry-gap-x: 0; --masonry-gap-y: 0; }
.masonry-gap-small { --masonry-gap-x: max(var(--columns-gutter-min-x, 1rem), var(--columns-gutter-x, 1rem) / 2); --masonry-gap-y: max(var(--columns-gutter-min-y, 1rem), var(--columns-gutter-y, 1rem) / 2); }
.masonry-gap-large { --masonry-gap-x: max(var(--columns-gutter-min-x, 1rem), var(--columns-gutter-x, 1rem) * 2); --masonry-gap-y: max(var(--columns-gutter-min-y, 1rem), var(--columns-gutter-y, 1rem) * 2); }