/* Portfolio */

.chapter .box-content {
    position: relative;
}

.chapter .content {
    display: flex;
    flex-direction: column;
    max-height: none;
    max-width: none;
}

.category-filter {
    position: relative;
    right: 0;
    z-index: 1;
    height: 15px;
    cursor: pointer;
    transition: all .5s ease;
}

.category-filter-list {
    background-color: #5B5B5B;
    padding: 24px 20px;
    width: 150px;
    display: none;
    position: absolute;
    right: 0;
    top: 35px;
    font-size: 0.8rem;
    line-height: 22px;
    color: #ffffff;
    z-index: 1;
    cursor: pointer;
    transition: opacity .5s, transform .5s;
}

.category-filter.hide {
    opacity: 0;
    transform: translateY(70px);   
}    

.category-filter-list > div {
    margin-bottom: 5px;
}

.category-filter-list > div:last-of-type {
    margin-bottom: 0;
}

.category-filter-icon {
    width: 20px;
    height: 3px;
    background-color: #DEDEDE;
    float: right;
    transition: width .3s ease;
}

.category-filter:hover .category-filter-icon,
.category-filter.filter-open .category-filter-icon {
    width: 24px;
}

.category-filter-icon:after {
    content: "";
    display: block;
    width: 10px;
    height: 3px;
    background-color: #DEDEDE;
    transform: translate(-5px,8px);
    transition: transform .3s ease;
}

.category-filter:hover .category-filter-icon:after, 
.category-filter.filter-open .category-filter-icon:after {
    transform: translate(4px,8px);
}

.category-filter-icon:before {
    content: "";
    display: block;
    width: 10px;
    height: 3px;
    background-color: #DEDEDE;
    transform: translate(10px,11px);
    transition: transform .3s ease;
}

.category-filter:hover .category-filter-icon:before,
.category-filter.filter-open .category-filter-icon:before {
    transform: translate(14px,11px);
}



.category-filter-list.hide {
    transform: translateY(70px);   
    opacity: 0;
}

.category-filter-list .button.is-checked {
    color: #DEDEDE;
}

.isotope.no-transition,
.isotope.no-transition .isotope-item,
.isotope .isotope-item.no-transition {
    -webkit-transition-duration: 0s;
    -moz-transition-duration: 0s;
    -ms-transition-duration: 0s;
    -o-transition-duration: 0s;
    transition-duration: 0s;
}

.grid {
    width: calc(100% + 50px);
    margin-left: -30px;
    position: relative;
    display: block;
    overflow: hidden;
}

.grid-item {
    float: left;
    font-size: 0;
    line-height: 0;
    box-sizing:border-box;
    -moz-box-sizing:border-box;
    -webkit-box-sizing:border-box;
    overflow: hidden;
    transition: opacity .3s;
}

.grid-item.portfolio-content-loading {
    opacity: 1 !important;
}

.portfolio-load-content-holder {
    opacity: 0;
    transform: translateY(70px);
    transition: all .5s ease;
}

.portfolio-load-content-holder.show {
    transform: translateY(0);
    opacity: 1;
}

.portfolio-load-content-holder.show.viceversa {
    opacity: 0;
    transform: translateY(70px);
}

.portfolio-content-wrapper {
    display: none;
}

.portfolio-content-wrapper.show {
    display: block;
}


#portfolio-grid {
    transition: all .5s ease;
    opacity: 1;
    transform: translateY(0px);
}

#portfolio-grid.hide {
    opacity: 0;
    transform: translateY(70px);    
}

.top-portfolio{
	position:relative;
	max-height: 200px;
	overflow: hidden;
}

.img-portfolio {
	position:relative;
    width: auto;
    height: 100%;
    object-fit: cover;
    display: block;
    margin: 0 auto;
}

.detail-portfolio {
	position: relative;
	height: 30%;
	width: 100%;
	padding: 10px;
	background-color: #fff;
}

.title-detail-portfolio {
	position: relative;
	margin:0;
	color: #5B5B5B;
	font-weight: 650;	
}

.comment-detail-portfolio{
	display: block;
	position: relative;
	color: #5B5B5B;
	margin: 0;
	padding-top: 5px;
}

.comment-detail-portfolio i {
	color: #0691CA;
}

.comment-information-portfolio {
	position: absolute;
	bottom: 5px;
	right: 20px;
	height: 25px;
	width: 35px;
	border-radius: 5px;
	background-color: #E6FAFF;
	color: #0691CA;
	text-decoration: none;
}

.comment-information-portfolio:hover {
	background-color: #0691CA;
	color: #E6FAFF;
}

.comment-information-portfolio i {
	font-size: 1.25rem;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
}
	
.portfolio-holder {
    position: absolute;
    width: 100%;
    height: calc(100% - 20px);  /* Utilisation de calc() pour effectuer une soustraction */
    left: 0;
    top: 0;
    z-index: 1;
    background-color: #E6FAFF;
    transition: transform .25s ease;
    transform: translateX(-100%);
}

.portfolio-holder p {
    font-size: 0.9rem;
    color: #0691CA;
    line-height: 1.25rem;
    margin: 25px;
}

.chapter .content:hover .portfolio-holder,
.portfolio-holder:hover {
    transform: translateX(0);
}

.border-portfolio {
	padding-top: 15px;
	border-bottom: 2px solid #E6FAFF;
}


/* ------------------- */
/* --- Récursivité --- */
/* ------------------- */


@media (max-width: 389px) {
	/* 1 par ligne */
	.grid-sizer,
	.grid-item {
		width: 95%;
		margin-left: 2.5%;
		border: 10px solid transparent;
	}
	
	.category-filter {
		margin-bottom: 10px;
	}
	
	.title-detail-portfolio {
		font-size: 1.75rem;
		line-height: 2rem;
	}
	
	.comment-detail-portfolio{
		font-size: 1.15rem;
		line-height: 1.6rem;
	}
}

@media (min-width: 390px) {
	/* 2 par ligne */
	.grid-sizer,
	.grid-item {
		width: calc(100% / 2);
	    border: 10px solid transparent;
	}
	
	.category-filter {
		margin-bottom: 10px;
	}
	
	.title-detail-portfolio {
		font-size: 0.75rem;
		line-height: 0.8rem;
	}
	
	.comment-detail-portfolio{
		font-size: 0.65rem;
		line-height: 0.80rem;
	}
	
}


@media (min-width: 576px) {
	.grid-sizer,
	.grid-item {
	    border: 10px solid transparent;
	}
	
	.category-filter {
		margin-bottom: 10px;
	}
	
	.title-detail-portfolio {
		font-size: 1.05rem;
		line-height: 1.3rem;
	}
	
	.comment-detail-portfolio{
		font-size: 0.75rem;
		line-height: 1.05rem;
	}

}

@media (min-width: 768px) {
	.title-detail-portfolio {
		font-size: 1.5rem;
		line-height: 1.9rem;
	}
	
	.comment-detail-portfolio{
		font-size: 1.05rem;
		line-height: 1.5rem;
	}

}

@media (min-width: 992px) {
	/* 3 par ligne */
	.grid-sizer,
	.grid-item {
		width: calc(100% / 3);
		border: 20px solid transparent;
	}
	
	.category-filter {
		margin-bottom: 0;
	}

	.title-detail-portfolio {
		font-size: 1.25rem;
		line-height: 1.5rem;
	}

	.comment-detail-portfolio{
		font-size: 0.85rem;
		line-height: 1.15rem;
	}
}

@media (min-width: 1200px) {
	/* 4 par ligne */
	.grid-sizer,
	.grid-item {
		width: calc(100% / 4);
	}
	
	.title-detail-portfolio {
		font-size: 1rem;
		line-height: 1.2rem;
	}
	
	.comment-detail-portfolio{
		font-size: 0.75rem;
		line-height: 1rem;
	}
	
}

@media (min-width: 1400px) {
	.title-detail-portfolio {
		font-size: 1.1rem;
		line-height: 1.3rem;
	}
	
	.comment-detail-portfolio{
		font-size: 0.9rem;
		line-height: 1rem;
	}
	
}






