JSFiddle - React, Tailwind, and code Playground

HTML

<!--start portfolio------>
	<div class="wrap" id="portfolio">
				<div class="main">
					<!-- start gallery  -->
							<div class="gallery1">
						
			<!---start-content----->
			<div class="gallery">
					<div class="clear"> </div>
					<div class="container">
						<h2>Портфолио</h2>
						<p>Много сплю и ем, но я гарантирую, что вы полюбите меня таким, какой я есть.</p>
		<ul id="filters" class="clearfix">
		<li><span class="filter active">Питание</span></li>
		<li><span>Уход</span></li>
		<li><span>Выгул</span></li>
		<li><span>Здоровье/Страховка</span></li>
					</ul>
			<div id="portfoliolist">
			
			<div class="portfolio logo" data-cat="logo">
				<div class="portfolio-wrapper">				
					<a class="popup-with-zoom-anim" href="#small-dialog1">
						<ul class="ch-grid">
							<li>
								<div class="ch-item ch-img-1">
									<div class="ch-info">
										<img src="http://europug.eu/images/zoom-white.png"/>
										<h3>Позирую</h3>
										<p><a href="#">перед камерой</a></p>
									</div>
								</div>
							</li>
						</ul>
					</a>
				</div>
			</div>		
				
			<div class="portfolio app" data-cat="app">
				<div class="portfolio-wrapper">			
					<a class="popup-with-zoom-anim" href="#small-dialog1">
						<ul class="ch-grid">
							<li>
								<div class="ch-item ch-img-2">
                  <div class="ch-info">
									<img src="http://europug.eu/images/zoom-white.png"/>
									<h3>Сижу в чате</h3>
										<p><a href="#">регулярно</a></p>
									</div>
								</div></li>
						</ul>
					</a>
				</div>
			</div>	
			<div class="hide">	
			<div class="portfolio web" data-cat="web">
				<div class="portfolio-wrapper">						
					<a class="popup-with-zoom-anim" href="#small-dialog1">
						<ul class="ch-grid">
							<li>
								<div class="ch-item ch-img-3">
									<div class="ch-info">
										<img src="http://europug.eu/images/zoom-white.png"/>
										<h3>Отдыхаю</h3>
										<p><a href="#">на...

CSS

body {
	font-family: 'Lato', sans-serif;
	font-size: 100%;
	background: #ffffff;
}

/* start main_btm */
.container h2{
	color:#4D4D4D;
	font-size: 2em;
	padding-bottom: 0.5em;
	text-align: center;
	
}
.container p{
	color:#444444;
	font-size: 1em;
	padding-bottom: 1em;
	text-align: center;
}
.main_btm {
	margin-top: 4%;
	display: block;
}
/*---start-gallery-----*/
.gallery{
	margin-top: 4% 0%;
}
.gallery1 {
	padding: 4em 0em;
}
.container { 
	position: relative; 
	-webkit-transition: all 1s ease;
	-moz-transition: all 1s ease;
	-o-transition: all 1s ease;
	transition: all 1s ease;
    	
}
#filters {
	margin: 2% auto;
	padding: 0;
	list-style: none;
	width: 82%;
}
#filters li {
	float:left;
	margin-left: 90px;
}
#filters li span {
	display: block;
	padding: 10px 30px;
	text-decoration: none;
	color: #fff;
	background:#d0a5a5;
	cursor: pointer;
	text-transform:uppercase;
	font-weight: 600;
}
#filters li span:hover
{
	background:#a97b7b;
}
#filters li span.active {
	background:#a97b7b;
	color:#fff;
}
#portfoliolist .portfolio {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	width: 19%;
	margin: 0% 3%;
	float: left;
}
.portfolio-wrapper {
	position: relative !important;
	cursor:pointer;
}
.portfolio img {
	max-width:100%;
	position: relative;
	opacity: 5;
	transition: all 300ms!important;
	-webkit-transition: all 300ms!important;
	-moz-transition: all 300ms!important;
}
.ch-item {
	width: 100%;
	height: 100%;
	border-radius: 50%;
	position: relative;
	cursor: default;
		
	-webkit-transition: all 0.9s ease-in-out;
	-moz-transition: all 0.9s ease-in-out;
	-o-transition: all 0.9s ease-in-out;
	-ms-transition: all 0.9s ease-in-out;
	transition: all 0.9s ease-in-out;
}

.ch-img-1 { 
	background-image: url(http://europug.eu/images/camera.png);
}

.ch-img-2 { 
	background-image: url(http://europug.eu/images/chat.png);
}

.ch-img-3 { 
	background-image: url(http://europug.eu/images/fire.png);
}
.ch-img-4 { 
	background-image:...