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

#top .module,
#top .module__items,
#top .module__item,
#top .module .item,
#top .module .item__col,
#top .module .item__inner,
#top .module-wrapper,
#top .module-wrapper__tabs,
#top .module-wrapper__modules
{
	display: flex;
	flex-direction: column;
}

#top .module,
#top .module__items,
#top .module-wrapper,
#top .module-wrapper__modules
{
	grid-gap: 40px;
}

#top .module .item,
#top .module .item__col
{
	grid-gap: 16px;
}

#top .module .item__col--content
{
	flex-grow: 1;
}

/* LABEL */

#top .module__label .label > *
{
	margin: 0;
}

#top .module__label .label h2
{
	font-size: 28px;
	text-transform: uppercase !important;
	margin-bottom: 0;
}

/* DESCRIPTION */

#top .module__description
{
	padding: 32px;
	overflow: hidden;
	border-radius: 20px;
	background-color: var(--color-cvi-3);
}

/* TITLE & ENTRY */

#top .module .title > span,
#top .module .entry > span
{
	overflow: hidden;
	text-overflow: ellipsis;
	display: -webkit-box;
	-webkit-box-orient: vertical;
}

#top .module .title > span
{
	font-weight: 300;
	line-height: 1.6;
	-webkit-line-clamp: 3;
}

#top .module .entry > span
{
	-webkit-line-clamp: 3;
	color: var(--color-cvi-1);
}

/* TITLE */

#top .module .title
{
	display: flex;
	flex-direction: column;
	flex-grow: 1;
	width: 100%;
	font-size: 16px;
}

/* PICTURE */

#top .module .item__col--picture
{
	position: relative;
}

/* TABS-STICKY */

#top .module-wrapper__tabs--sticky
{
	position: sticky;
	z-index: 999;
	top: 149px;
	left: 0;
	height: 80px;
	padding-top: 20px;
	width: 100%;
	background-color: var(--color-lightgray-1);
}

#top .module-wrapper__tabs--sticky select
{
	padding-left: 20px;
}

#top #wpadminbar + #wrap_all .module-wrapper__tabs--sticky
{
	top: 150px;
}

@media only screen and (max-width: 989px)
{
	.responsive #top .module-wrapper__tabs--sticky
	{
		top: 0px;
		grid-gap: 20px;
		padding-top: 30px;
	}
	.responsive #top #wpadminbar + #wrap_all .module-wrapper__tabs--sticky
	{
		top: 30px;
	}
}

/*
 * ----------------------------------------------------------
 * ACTIONS
 * ----------------------------------------------------------
 */

#top .module__actions .loadmore
{
	margin-top: 40px;
	text-align: center;
}

#top .module__actions .loadmore a
{
	cursor: pointer;
}

/*
 * ----------------------------------------------------------
 * ITEM
 * ----------------------------------------------------------
 */

/*
 * - FLIPBOX
 */

#top .module__item--flipbox
{
	min-height: 200px;
	perspective: 1000px;
}

#top .module__item--flipbox .item
{
	position: relative;
	width: 100%;
	height: 100%;
	transition: transform 1s;
	transform-style: preserve-3d;
}

#top .module__item--flipbox .item .item__inner
{
	justify-content: center;
	grid-gap: 16px;
	position: absolute;
    width: 100%;
	height: 100%;
	border-radius: 32px;
	background-color: var(--color-white);
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	overflow: hidden;
}

#top .module__item--flipbox .item__inner--front
{
	grid-gap: 16px;
}

#top .module__item--flipbox .item__inner--back
{
	opacity: 0;
	justify-content: center;
	transform: rotateY(180deg);
}
#top .module__item--flipbox .item__inner--back::before
{
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
	width: 48px;
	height: 64px;
}

#top .module__item--flipbox:hover .item
{
	transform: rotateY(180deg);
}

#top .module__item--flipbox:hover .item__inner--front
{
	opacity: 0;
}

#top .module__item--flipbox:hover .item__inner--back
{
	opacity: 1;
}

/*
 * ----------------------------------------------------------
 * LIST
 * ----------------------------------------------------------
 */

#top .module--list,
#top .module--list .module__items
{
	flex-grow: 1;
}

/*
 * ----------------------------------------------------------
 * GRID
 * ----------------------------------------------------------
 */

#top .module--grid .thumb
{
	overflow: hidden;
}

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

/* COLS */

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

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

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

/* ITEMS */

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

/*
 ************************************************************
 * MODULE > ARCHIVE
 ************************************************************
 * ----------------------------------------------------------
 * GRID
 * ----------------------------------------------------------
 *
 * META  */

#top .module--archive.module--grid .title .meta
{
	flex-direction: row;
}

/* TITLE */

#top .module--archive.module--grid .module__item--small .title > span
{
	font-size: 14px;
}

#top .module--archive.module--grid .module__item--first .title > span
{
	font-size: 24px;
}

/* ITEM */

#top .module--archive.module--grid .module__item
{
	overflow: hidden;
	border-radius: 20px;
	box-shadow: 1px 1px 2px rgba(0, 0,0,0.05);
}

#top .module--archive.module--grid .item,
#top .module--archive.module--grid .item__col--content
{
	flex-grow: 1;
	justify-content: center;
}

#top .module--archive.module--grid .item
{
	grid-gap: 0;
}

#top .module--archive.module--grid .item__col--content
{
	grid-gap: 24px;
	padding: 24px;
	background-color: var(--color-lightgray-2);
	box-shadow: 1px 1px 2px rgba(0, 0,0,0.05);
}

/* ITEM--SMALL */

#top .module--archive.module--grid .module__item--small .title > span
{
	-webkit-line-clamp: 2;
}

#top .module--archive.module--grid .module__item--small .item
{
	flex-direction: row;
	align-items: center;
}

#top .module--archive.module--grid .module__item--small .item__col--picture
{
	width: 120px;
	height: 120px;
}

#top .module--archive.module--grid .module__item--small .item__col--content
{
	width: calc(100% - 120px);
	height: 120px;
}

@media only screen and (min-width: 768px) and (max-width: 1279px)
{
	.responsive #top .module--archive.module--grid .module__item--small
	{
		grid-column: span 2;
		grid-row: span 2;
	}
}

/* ITEM--FIRST */

#top .module--archive.module--grid .module__item--first .entry
{
	padding-left: 24px;
	border-left: 1px solid var(--color-black);
}

@media only screen and (min-width: 768px)
{
	.responsive #top .module--archive.module--grid .module__item--first
	{
		grid-column: span 2;
		grid-row: span 2;
	}
	.responsive #top .module--archive.module--grid .module__item--first .thumb::before
	{
		width: 96px;
		height: 128px;
	}
	.responsive #top .module--archive.module--grid .module__item--first .title
	{
		line-height: normal;
		font-size: 24px;
	}
	.responsive #top .module--archive.module--grid .module__item--first .item__col--content
	{
		padding: 40px;
	}
}

@media only screen and (min-width: 990px)
{
	.responsive #top .module--archive.module--grid .module__item--first .title,
	.responsive #top .module--archive.module--grid .module__item--first .entry
	{
		max-width: 80%;
	}
}

/*
 ************************************************************
 * MODULE > EVENTS
 ************************************************************
 * ----------------------------------------------------------
 * GRID
 * ----------------------------------------------------------
 *
 * META  */

#top .module--events.module--grid .meta-type
{
	padding: 8px 16px;
	border-radius: 20px;
	text-align: center;
	background-color: var(--color-lightgray-2);
}

@media only screen and (max-width: 1279px)
{
	.responsive #top .module--events.module--grid .meta-type
	{
		width: 240px;
	}
}

/* TITLE */

#top .module--events.module--grid .title
{
	display: flex;
	flex-direction: column;
}

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

/* MORE  */

#top .module--events.module--grid .more
{
	text-align: center;
}

/*
 ************************************************************
 * MODULE > SERVICES
 ************************************************************
 * ----------------------------------------------------------
 * LIST
 * ----------------------------------------------------------
 *
 * ICON  */

#top .module--services.module--list .icon img
{
	width: 80px;
	height: 80px;
}

/* TITLE */

#top .module--services.module--list .title
{
	font-size: 20px;
}

/* ITEM */

#top .module--services.module--list .item__col--content
{
	padding: 40px;
}

#top .module--services.module--list .item__col--picture
{
	overflow: hidden;
	border-radius: 40px;
}

@media only screen and (min-width: 768px)
{
	.responsive #top .module--services.module--list .item__col--content
	{
		width: 66.67%;
	}
	.responsive #top .module--services.module--list .item__col--picture
	{
		width: 33.33%;
	}
}

#top .module--services.module--list .item
{
	align-items: center;
	grid-gap: 0;
}

@media only screen and (min-width: 768px)
{
	.responsive #top .module--services.module--list .module__item:nth-child(odd) .item
	{
		flex-direction: row;
		margin-left: -50px;
	}
	.responsive #top .module--services.module--list .module__item:nth-child(even) .item
	{
		flex-direction: row-reverse;
		margin-right: -50px;
		text-align: right;
	}
	.responsive #top .module--services.module--list .module__item:nth-child(even) .item .icon
	{
		align-self: flex-end;
	}
	.responsive #top .module--services.module--list .module__item:nth-child(even) .item .thumb::before
	{
		right: 0;
		left: auto;
		transform: scale(-1, 1);
	}
}

@media only screen and (min-width: 1279px)
{
	.responsive #top .module--services.module--list .module__item:nth-child(odd) .item
	{
		margin-left: -100px;
	}
	.responsive #top .module--services.module--list .module__item:nth-child(even) .item
	{
		margin-right: -100px;
	}
}

/*
 * ----------------------------------------------------------
 * GRID
 * ----------------------------------------------------------
 *
 * THUMB  */

#top .module--services.module--grid .thumb svg
{
	width: 72px;
	height: 72px;
}

@media only screen and (min-width: 768px) and (max-width: 1080px)
{
	.responsive #top .module--services.module--grid .thumb svg
	{
		width: 40px;
		height: 40px;
	}
}

#top .module--services.module--grid .thumb path
{
	fill: var(--color-cvi-1);
}

#top .footer_color .module--services.module--grid .thumb path,
#top .socket_color .module--services.module--grid .thumb path
{
	fill: var(--color-white);
}

/* TITLE */

#top .module--services.module--grid .title span
{
	font-weight: 300;
	font-size: 18px;
	color: var(--color-cvi-1);
}

#top .footer_color .module--services.module--grid .title span,
#top .socket_color .module--services.module--grid .title span
{
	color: var(--color-white);
}

@media only screen and (min-width: 768px) and (max-width: 989px)
{
	.responsive #top .module--services.module--grid .title span
	{
		font-size: 12px;
	}
}

@media only screen and (min-width: 990px) and (max-width: 1080px)
{
	.responsive #top .module--services.module--grid .title span
	{
		font-size: 14px;
	}
}

/* BUTTON */

#top .module--services.module--grid .more a,
#top .module--services.module--grid .register i,
#top .module--services.module--grid .register a
{
	font-size: 16px;
}

/* COLS */

#top .module--services.module--grid .item__col--content
{
	justify-content: space-between;
	flex-direction: column;
	flex-grow: 0;
	grid-gap: 0;
}

/* ITEM */

#top .module--services.module--grid .item
{
	aspect-ratio: 1 / 1;
	grid-gap: 16px;
	background-color: transparent;
}

#top .module--services.module--grid .module__item--flipbox .item .item__inner
{
	justify-content: flex-end;
}

#top .footer_color .module--services.module--grid .item,
#top .socket_color .module--services.module--grid .item
{
	border-color: rgba(255, 255, 255, 0.0);
	background-color: rgba(53, 0, 58, 0.4);
}

#top .footer_color .module--services.module--grid .item:hover,
#top .socket_color .module--services.module--grid .item:hover
{
	border-color: var(--color-cvi-2);
}

#top .module--services.module--grid .item > div
{
	padding: 32px;
}

@media only screen and (max-width: 1080px)
{
	.responsive #top .module--services.module--grid .item > div
	{
		padding: 24px;
	}
}

/* ITEMS */

#top .module--services.module--grid .module__items
{
	grid-gap: 4px;
}

@media only screen and (min-width: 768px) and (max-width: 1279px)
{
	.responsive #top .module--services.module--grid .module__items
	{
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media only screen and (max-width: 767px)
{
	.responsive #top .module--services.module--grid
	{
		max-width: 320px;
		margin: 0 auto;
	}
}

@media only screen and (max-width: 480px)
{
	.responsive #top .module--services.module--grid
	{
		max-width: auto;
		margin: 0 32px;
	}
}

/*
 ************************************************************
 * MODULE > PARTNERS
 ************************************************************
 * ----------------------------------------------------------
 * GLOBAL
 * ----------------------------------------------------------
 *
 * THUMB  */

#top .module--partners .thumb
{
	display: flex;
	height: 50px;
}

#top .module--partners .thumb img
{
	width: auto;
	max-width: 200px;
	max-height: 50px;
}

/* TITLE */

#top .module--partners .title > span
{
	font-size: 13px;
}

/*
 * ----------------------------------------------------------
 * GRID
 * ----------------------------------------------------------
 *
 * ITEMS */

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

@media only screen and (min-width: 1280px)
{
	.responsive #top .module-wrapper__modules
	{
		width: 1080px;
	}
}

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

/*
 * ----------------------------------------------------------
 * CAROUSEL
 * ----------------------------------------------------------
 *
 * THUMB  */

#top .module--partners.module--carousel .thumb
{
	justify-content: center;
}

#top .module--partners.module--carousel .thumb img
{
	width: 100%;
	max-width: 100%;
}

/*
 ************************************************************
 * MODULE > MEMBERS
 ************************************************************
 * ----------------------------------------------------------
 * GRID
 * ----------------------------------------------------------
 *
 * META  */

#top .module--members .title .meta > span
{
	font-size: 12px;
	color: var(--color-gray-1);
}

/* COLS */

#top .module--members .item__col--content
{
	flex-direction: row-reverse;
}

#top .module--members .item__col--picture
{
	overflow: hidden;
	border-radius: 20px;
}

/*
 ************************************************************
 * MODULE > PROJECTS
 ************************************************************
 * ----------------------------------------------------------
 * GRID
 * ----------------------------------------------------------
 *
 * COLS  */

#top .module--projects .item__col--picture
{
	overflow: hidden;
	border-radius: 20px;
}