$display-break-1: 700px;
$display-break-2: 900px;
$display-break-3: 1200px;
$display-break-4: 1600px;
$display-break-5: 1800px;

%grid-base {
	display: grid;
	grid-template-columns: 1fr;
	grid-template-rows: 2fr;

	.grid-cell-1 {
		grid-column-start: 1;
		grid-row-start: 2;
		padding: 0;
		align-self: self-start;
		justify-self: self-start;
	}

	.grid-cell-2 {
		grid-column-start: 1;
		grid-row-start: 1;
		padding: 0;
		align-self: self-start;
		justify-self: self-start;
	}

	.grid-cell-width-100 {
		width: 100%;
	}

	// X-axis alignment
	.grid-cell-left {
		justify-self: self-start !important;
	}
	.grid-cell-right {
		justify-self: self-end !important;
	}
	.grid-cell-center {
		justify-self: center !important;
	}

	// Y-axis alignment
	.grid-cell-top {
		align-self: self-start !important;
	}
	.grid-cell-middle {
		align-self: center !important;
	}
	.grid-cell-bottom {
		align-self: self-end !important;
	}
}

.grid-container-8-2 {
	@extend %grid-base;

	@media (min-width: $display-break-2) {
		grid-template-columns: 8fr 2fr;
		grid-template-rows: 1fr;

		.grid-cell-1 {
			grid-column-start: 1;
			grid-row-start: 1;
			padding: 0;
		}

		.grid-cell-2 {
			grid-column-start: 2;
			grid-row-start: 1;
			padding: 0;
		}
	}
}

.grid-container-6-4 {
	@extend %grid-base;

	@media (min-width: $display-break-2) {
		grid-template-columns: 6fr 4fr;
		grid-template-rows: 1fr;

		.grid-cell-1 {
			grid-column-start: 1;
			grid-row-start: 1;
			padding: 0;
		}

		.grid-cell-2 {
			grid-column-start: 2;
			grid-row-start: 1;
			padding: 0;
			justify-self: self-end;
		}
	}
}

.grid-container-5-5 {
	@extend %grid-base;

	@media (min-width: $display-break-2) {
		grid-template-columns: 5fr 5fr;
		grid-template-rows: 1fr;

		.grid-cell-1 {
			grid-column-start: 1;
			grid-row-start: 1;
			padding: 0;
		}

		.grid-cell-2 {
			grid-column-start: 2;
			grid-row-start: 1;
			padding: 0;
			justify-self: self-end;
		}
	}
}
