/* Portfolio */
.tms_portfolio-loop-header-title {
	padding-top: 64px;
	padding-bottom: 8px;
}

.tms_portfolio-loop-header-title h1 {
	margin-bottom: 0px;
}

.tms_portfolio-loop-row {
	margin-bottom: -30px;
}

.tms_portfolio-loop-row .tms_portfolio-loop {
	margin-bottom: 30px;
}

.tms_portfolio-loop,
.tms_portfolio-loop a,
.tms_portfolio-loop .tms_portfolio-loop-image,
.tms_portfolio-loop .tms_portfolio-loop-image img {
	position: relative;
	display: block;
	overflow: hidden;
}

.tms_portfolio-loop .tms_portfolio-loop-image {
	height: 0px;
	padding-top: calc(100% + 16px);

	background-color: #F3F1EF !important;
}

.tms_portfolio-loop .tms_portfolio-loop-image img {
	position: absolute;
	top: 0px;
	left: 0px;
}

.tms_portfolio-loop .tms_portfolio-loop-caption {
	position: absolute;
	top: 20px;
	left: 16px;
	transform-origin: top left;
	transform: rotate(-90deg) translate(-100%);
	color: var(--tms-color-neutral-2);
	font-size: 16px;
	line-height: 16px;
	z-index: 2;
	display: none !important;
}

.tms_portfolio-loop .tms_portfolio-loop-title {
	position: absolute;
	bottom: 24px;
	left: 24px;
	font-weight: var(--tms-font-weight-l);
	font-size: 32px;
	line-height: 32px;
	display: none !important;
}

.tms_portfolio-loop .tms_portfolio-loop-image img {
	transition: transform .3s;
	mix-blend-mode: multiply;
}

.tms_portfolio-loop:hover .tms_portfolio-loop-image img {
	transform: scale(1.1);
}

.tms_portfolio-loop .tms_portfolio-loop-info {
	position: absolute;
	display: flex;
	flex-direction: column;
	align-items: center;
	width: 100%;
	bottom: 0;
	padding: 0 16px;
	margin-bottom: 16px;
}

.tms_portfolio-loop .tms_portfolio-loop-info .tms_portfolio-loop-info-title {
	font-weight: var(--tms-font-weight-xl);
	font-size: 20px;
	line-height: 20px;
	text-transform: uppercase;
}

.tms_portfolio-loop .tms_portfolio-loop-info .tms_portfolio-loop-info-caption {
	margin-top: 0px;
	font-size: 16px;
	line-height: 16px;
}

.tms_portfolio-loop .tms_portfolio-loop-badge {
	position: absolute;
	top: 8px;
	right: 8px;
	z-index: 2;

	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;

	background: var(--tms-color-primary-1);
	border-radius: 50%;
	width: 48px;
	height: 48px;
	text-align: center;

	font-weight: var(--tms-font-weight-l);
	text-transform: uppercase;
	font-size: 10px;
	line-height: 1em;
}

.tms_portfolio-loop .tms_portfolio-loop-tag-image {
	position: absolute;
	top: 8px;
	left: 8px;
	z-index: 2;

	width: 98px;
	height: auto;
}