/*
 ************************************************************
 *
 * MODULE
 *
 ************************************************************
 * ----------------------------------------------------------
 *
 * GLOBAL
 *
 * ----------------------------------------------------------
 *
 * - BASE
 */

#top .module,
#top .module .item,
#top .module .head,
#top .module .data,
#top .module .title
{
	display: flex;
	flex-direction: column;
}

/*
 * ----------------------------------------------------------
 *
 * MODULE: GRID
 *
 * ----------------------------------------------------------
 *
 * - WRAP
 */

#top .module-grid
{
	grid-gap: 40px;
}

#top .module-grid .items
{
	display: grid;
	width: 100%;
}

#top .module-grid .head,
#top .module-grid .data,
#top .module-grid .meta
{
	grid-gap: 16px;
}

#top .module-grid .data
{
	flex-grow: 1;
	padding: 20px;
}

/*
 * - COLS
 */

#top .module-grid .items
{
	margin: 0 auto;
}

#top .module-grid .cols-1
{
	grid-template-columns: repeat(1, minmax(0, 1fr));
	grid-gap: 40px;
}
#top .module-grid .cols-2
{
	grid-template-columns: repeat(2, minmax(0, 1fr));
	grid-gap: 40px;
}
#top .module-grid .cols-3
{
	grid-template-columns: repeat(3, minmax(0, 1fr));
	grid-gap: 30px;
}
#top .module-grid .cols-4
{
	grid-template-columns: repeat(4, minmax(0, 1fr));
	grid-gap: 20px;
}
#top .module-grid .cols-5
{
	grid-template-columns: repeat(5, minmax(0, 1fr));
	grid-gap: 16px;
}

@media only screen and (max-width: 1599px)
{
	.responsive #top .module-grid .items
	{
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media only screen and (max-width: 989px)
{
	.responsive #top .module-grid .items,
	.responsive #top .module-grid .items + .pagination
	{
		max-width: 640px;
	}
}

@media only screen and (max-width: 639px)
{
	.responsive #top .module-grid .items
	{
		grid-template-columns: repeat(1, minmax(0, 1fr));
	}
}

/*
 * - THUMB
 */

#top .module-grid .thumb
{
	position: relative;
}

#top .module-grid .thumb::before
{
	content: '';
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	width: 100%;
	z-index: 1;
	opacity: 0.05;
	background-color: var(--color-black);
}

/*
 * - TITLE
 */

#top .module-grid .title
{
	padding-bottom: 16px;
	border-bottom: 1px dotted var(--color-darkgray-1);
}

#top .module-grid .title h3
{
	margin-bottom: 0;
	line-height: 1.3em;
	font-weight: 400;
	font-size: 16px;
	color: var(--color-darkgray-1);
}

/*
 * - EXCERPT
 */

#top .module-grid .excerpt
{
	flex-grow: 1;
}

#top .module-grid .excerpt span
{
	font-weight: 300;
	font-size: 14px;
}

#top .module-grid .goto a
{
	font-weight: 300;
	font-size: 14px;
}

/*
 * - ITEM
 */

#top .module-grid .item
{
	box-shadow: 0px 1px 2px 0px rgba(52, 43, 96, 0.1);
}

#top .module-grid .item:hover .thumb::before
{
	width: 0;
}

#top .module-grid .item .data
{
	background-color: rgba(255, 255, 255, 0.6);
}

#top .module-grid .item:hover .data
{
	background-color: var(--color-white);
}