.grid-row {
	display: grid;
	grid-template-columns: repeat(12, 1fr);
	gap: 30px;
}

.grid-xs-1 { grid-column: span 1; }
.grid-xs-2 { grid-column: span 2; }
.grid-xs-3 { grid-column: span 3; }
.grid-xs-4 { grid-column: span 4; }
.grid-xs-5 { grid-column: span 5; }
.grid-xs-6 { grid-column: span 6; }
.grid-xs-7 { grid-column: span 7; }
.grid-xs-8 { grid-column: span 8; }
.grid-xs-9 { grid-column: span 9; }
.grid-xs-10 { grid-column: span 10; }
.grid-xs-11 { grid-column: span 11; }
.grid-xs-12 { grid-column: span 12; }

@media (min-width: 768px) {
	.grid-sm-1 { grid-column: span 1; }
	.grid-sm-2 { grid-column: span 2; }
	.grid-sm-3 { grid-column: span 3; }
	.grid-sm-4 { grid-column: span 4; }
	.grid-sm-5 { grid-column: span 5; }
	.grid-sm-6 { grid-column: span 6; }
	.grid-sm-7 { grid-column: span 7; }
	.grid-sm-8 { grid-column: span 8; }
	.grid-sm-9 { grid-column: span 9; }
	.grid-sm-10 { grid-column: span 10; }
	.grid-sm-11 { grid-column: span 11; }
	.grid-sm-12 { grid-column: span 12; }
}

@media (min-width: 992px) {
	.grid-md-1 { grid-column: span 1; }
	.grid-md-2 { grid-column: span 2; }
	.grid-md-3 { grid-column: span 3; }
	.grid-md-4 { grid-column: span 4; }
	.grid-md-5 { grid-column: span 5; }
	.grid-md-6 { grid-column: span 6; }
	.grid-md-7 { grid-column: span 7; }
	.grid-md-8 { grid-column: span 8; }
	.grid-md-9 { grid-column: span 9; }
	.grid-md-10 { grid-column: span 10; }
	.grid-md-11 { grid-column: span 11; }
	.grid-md-12 { grid-column: span 12; }
}

@media (min-width: 1200px) {
	.grid-lg-1 { grid-column: span 1; }
	.grid-lg-2 { grid-column: span 2; }
	.grid-lg-3 { grid-column: span 3; }
	.grid-lg-4 { grid-column: span 4; }
	.grid-lg-5 { grid-column: span 5; }
	.grid-lg-6 { grid-column: span 6; }
	.grid-lg-7 { grid-column: span 7; }
	.grid-lg-8 { grid-column: span 8; }
	.grid-lg-9 { grid-column: span 9; }
	.grid-lg-10 { grid-column: span 10; }
	.grid-lg-11 { grid-column: span 11; }
	.grid-lg-12 { grid-column: span 12; }
}


@media (min-width: 1600px) {
	.grid-xl-1 { grid-column: span 1; }
	.grid-xl-2 { grid-column: span 2; }
	.grid-xl-3 { grid-column: span 3; }
	.grid-xl-4 { grid-column: span 4; }
	.grid-xl-5 { grid-column: span 5; }
	.grid-xl-6 { grid-column: span 6; }
	.grid-xl-7 { grid-column: span 7; }
	.grid-xl-8 { grid-column: span 8; }
	.grid-xl-9 { grid-column: span 9; }
	.grid-xl-10 { grid-column: span 10; }
	.grid-xl-11 { grid-column: span 11; }
	.grid-xl-12 { grid-column: span 12; }
}


/* Visibility: hidden from breakpoint up; inherit at the next breakpoint */
.grid-xs-hidden {
	display: none !important;
}

@media (min-width: 768px) {
	.grid-xs-hidden {
		display: inherit !important;
	}

	.grid-sm-hidden {
		display: none !important;
	}
}

@media (min-width: 992px) {
	.grid-sm-hidden {
		display: inherit !important;
	}

	.grid-md-hidden {
		display: none !important;
	}
}

@media (min-width: 1200px) {
	.grid-md-hidden {
		display: inherit !important;
	}

	.grid-lg-hidden {
		display: none !important;
	}
}
