.tj-company-portfolio-grid ,
.tj-creative-portfolio-grid {
			display: grid;
			grid-template-columns: repeat(3, minmax(0, 1fr));
			gap: 18px;
			width: 100%;
		}

		.tj-company-portfolio-card ,
.tj-creative-portfolio-card {
			display: block;
			min-width: 0;
			overflow: hidden;
			border: 2px solid #111;
			background: #f8f0df;
			color: #111;
			box-shadow: 7px 8px 0 rgba(17,17,17,.12);
		}

		.tj-company-portfolio-media ,
.tj-creative-portfolio-media {
			position: relative;
			min-height: 0;
			background: #111;
		}

		.tj-company-portfolio-image .tj-company-portfolio-media,
		.tj-company-portfolio-document .tj-company-portfolio-media ,
.tj-creative-portfolio-image .tj-creative-portfolio-media,
		.tj-creative-portfolio-document .tj-creative-portfolio-media {
			aspect-ratio: 4 / 3;
		}

		.tj-company-portfolio-image-link,
		.tj-company-portfolio-image picture,
		.tj-company-portfolio-image img,
		.tj-company-portfolio-document-cover,
		.tj-company-portfolio-document-cover picture,
		.tj-company-portfolio-document-cover img,
		.tj-company-portfolio-artwork,
		.tj-company-portfolio-artwork picture,
		.tj-company-portfolio-artwork img ,
.tj-creative-portfolio-image-link,
		.tj-creative-portfolio-image picture,
		.tj-creative-portfolio-image img,
		.tj-creative-portfolio-document-cover,
		.tj-creative-portfolio-document-cover picture,
		.tj-creative-portfolio-document-cover img,
		.tj-creative-portfolio-artwork,
		.tj-creative-portfolio-artwork picture,
		.tj-creative-portfolio-artwork img {
			display: block;
			width: 100%;
			height: 100%;
		}

		.tj-company-portfolio-image img,
		.tj-company-portfolio-document-cover img,
		.tj-company-portfolio-artwork img ,
.tj-creative-portfolio-image img,
		.tj-creative-portfolio-document-cover img,
		.tj-creative-portfolio-artwork img {
			object-fit: cover;
		}

		.tj-company-portfolio-video video ,
.tj-creative-portfolio-video video {
			display: block;
			width: 100%;
			aspect-ratio: 16 / 9;
			background: #111;
		}

		.tj-company-portfolio-audio-visual ,
.tj-creative-portfolio-audio-visual {
			display: grid;
			grid-template-rows: minmax(190px, 1fr) auto;
			min-height: 100%;
			background: #111;
		}

		.tj-company-portfolio-artwork ,
.tj-creative-portfolio-artwork {
			aspect-ratio: 1 / 1;
			max-height: 360px;
			overflow: hidden;
		}

		.tj-company-portfolio-audio audio ,
.tj-creative-portfolio-audio audio {
			display: block;
			width: calc(100% - 20px);
			margin: 10px;
		}

		.tj-company-portfolio-media-placeholder ,
.tj-creative-portfolio-media-placeholder {
			display: grid;
			place-items: center;
			align-content: center;
			gap: 10px;
			width: 100%;
			min-height: 220px;
			padding: 20px;
			background:
				radial-gradient(circle at 20% 20%, rgba(255,20,120,.28), transparent 42%),
				#111;
			color: #fff;
			text-align: center;
		}
.tj-company-portfolio-media-placeholder span ,
.tj-creative-portfolio-media-placeholder span {
			font-size: 52px;
			line-height: 1;
		}

		.tj-company-portfolio-media-placeholder small ,
.tj-creative-portfolio-media-placeholder small {
			font-weight: 900;
			letter-spacing: .12em;
		}

		.tj-company-portfolio-document-cover ,
.tj-creative-portfolio-document-cover {
			position: relative;
			overflow: hidden;
		}

		.tj-company-portfolio-doc-badge,
		.tj-company-portfolio-type ,
.tj-creative-portfolio-doc-badge,
		.tj-creative-portfolio-type {
			position: absolute;
			z-index: 2;
			top: 10px;
			left: 10px;
			padding: 5px 7px;
			background: #ff1478;
			color: #fff;
			font-size: 9px;
			font-weight: 900;
			letter-spacing: .08em;
			text-transform: uppercase;
		}

		.tj-company-portfolio-doc-badge ,
.tj-creative-portfolio-doc-badge {
			top: auto;
			bottom: 10px;
		}

		.tj-company-portfolio-copy ,
.tj-creative-portfolio-copy {
			display: grid;
			gap: 6px;
			padding: 13px 14px 15px;
		}

		.tj-company-portfolio-copy strong ,
.tj-creative-portfolio-copy strong {
			font-size: 15px;
			line-height: 1.25;
		}

		.tj-company-portfolio-copy span,
		.tj-company-portfolio-copy p,
		.tj-company-portfolio-copy small ,
.tj-creative-portfolio-copy span,
		.tj-creative-portfolio-copy p,
		.tj-creative-portfolio-copy small {
			margin: 0;
			font-size: 12px;
			line-height: 1.45;
			opacity: .72;
		}

		.tj-company-portfolio-credit ,
.tj-creative-portfolio-credit {
			font-weight: 800;
		}

		.tj-company-portfolio-links ,
.tj-creative-portfolio-links {
			display: flex;
			align-items: center;
			flex-wrap: wrap;
			gap: 7px 10px;
			margin-top: 4px;
		}

		.tj-company-portfolio-links a ,
.tj-creative-portfolio-links a {
			display: inline-block;
			padding: 7px 9px;
			background: #111;
			color: #fff;
			font-size: 11px;
			font-weight: 800;
			text-decoration: none;
		}

		.tj-company-portfolio-links a:hover ,
.tj-creative-portfolio-links a:hover {
			background: #ff1478;
		}

		@media (max-width: 900px) {
			.tj-company-portfolio-grid ,
.tj-creative-portfolio-grid {
				grid-template-columns:
					repeat(2, minmax(0, 1fr));
			}
		}

		@media (max-width: 600px) {.tj-company-portfolio-grid ,
.tj-creative-portfolio-grid {
				grid-template-columns: 1fr;
			}
		}
