/*------------------------------------*\
    #PORTFOLIO
\*------------------------------------*/


/* Portfolio Filter Menu
----------------------------------------*/
.c-filters__wrap{ position: relative; }

.c-filters__mobile__menu{
  background-color: #000;
  cursor: pointer;
}

.c-filters{
  display: flex;
  justify-content: center;
  flex-flow: column;
  background-color: #f2f2f2;
  position: absolute;
  width: 100%;
  top: 100%;
  z-index: 1000;
  opacity: 0;
  visibility: hidden;
  transition: all .5s ease;
  transition-property: opacity, visibility;
}

.c-filters--show{
  visibility: visible;
  opacity: 1;
}

.c-filters__label{
  color: #fff;
  font-family: "roboto", sans-serif;
  font-weight: 300;
  font-size: 1rem;
  text-transform: uppercase;
  padding-bottom: 1rem;
  padding-top: 1rem;
}

.c-filter{
  cursor: pointer;
  position: relative;
  width:100%;
}

.c-filter:first-child{ border-left: 0; }

.c-filter--active .c-filter__type__icon svg{  opacity: 1; }

.c-filter--active .c-filter__dropdown{
  visibility: visible;
  opacity: 1;
  transition: opacity .3s;  
}

.c-filter--active:after{ opacity: .05; }

.c-filter__type{
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0.93rem;
}

.c-filter .c-filter__type{ 
  justify-content: flex-start; 
  background-color: #dedede;
  font-weight: 600;
  
}

.c-filter .c-filter__type__icon{ display: none; }

.c-filter .c-filter__type span{color: #011e41;}

.c-filter__type span{
    color: #fff;
    font-size: 1rem;
}

.c-filter__type__icon{
  border-radius: 50%;
  height: 2.2rem;
  width: 2.2rem;
  padding: 0.68rem;
}

.c-filter__type__icon svg{
    fill: #fff; 
    height: 100%;
    width: 100%;
    opacity: .85;
    transition: opacity .3s ease;
    position: relative;
    top: -3px;
}

.c-filter__dropdown{
  width: 100%;
  overflow-y: scroll;
  z-index: 1000;
  list-style: none;
  padding: 0;
}

.c-filter__dropdown:hover {
  visibility: visible;
  opacity: 1;
  transition: opacity .3s;    
}

.c-filter__dropdown li {
  cursor: pointer; 
  padding: 0.625rem;
  transition: color .3s ease;
  border-top: 1px solid #ccc;
  font-weight: 300;
  color: #011e41;
}

.c-filter__dropdown li:hover { color: #0093d0; }

.c-filter__dropdown li:first-child{ border-top: 0; }

.c-filters__active{
  background-color: #ddd;
  padding-top: 10px;
  padding-bottom: 10px;
}

.c-filter__link--active{
  font-size: 12px;
  background-color: blue;
  padding: 5px;
  color: white;
}

.c-filter__dropdown__item--active, 
.c-filter__dropdown .c-filter__dropdown__item--active:hover{ color: #00a896; }

.c-filter__clear__wrap{
  display: block;
  width: 100%;
  text-align: center;
  padding-top: 10px;
  padding-bottom: 10px;
}

.c-btn--filter{ cursor: pointer; }

@media screen and (min-width: 1025px){
  
  .c-filters__mobile__menu{ display: none; }
  
  
  .c-filters{
    flex-flow: row;
    position: static;
    width: auto;
    opacity: 1;
    visibility: visible;
    transition: none;   
    background-color: #000;
  }
  
  .c-filter{
    width: auto;
    border-top: 0;
    border-left: 1px solid #3a3a3a;
  }
  
  .c-filter:after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #fff;
    opacity: 0;
    transition: opacity .3s ease;
  }
  
  .c-filter:hover .c-filter__type__icon svg { fill: #0024C0; }
  
  .c-filter:hover .c-filter__type__icon svg{ opacity: 1; }  
  
  .c-filter:hover .c-filter__dropdown{
    visibility: visible;
    opacity: 1;
    transition: opacity .3s;  
  }
  
  .c-filter:hover:after{ opacity: .05; }
  
  .c-filters__label{ 
    padding-top: 0;
    padding-bottom: 0;
    padding-right: 1.25rem;
  }
  
  .c-filter__dropdown{ 
    position: absolute;
    top: 100%;
    left: 0;
    opacity: 0;
    visibility: hidden;
    background-color: #fff;
    width: 100%;
    overflow-y: scroll;
    -ms-overflow-style: none;  /* IE and Edge */
    scrollbar-width: none;  /* Firefox */
    z-index: 1000;
    box-shadow: 0 0 50px rgba(0,0,0, .5);
    list-style: none;
    transition: opacity 0.4s;
  }

  .c-filter__dropdown::-webkit-scrollbar {
    display: none;
  }
  
  .c-filter__type__icon{
    background-color: transparent;
    margin-left: 3.75rem;
    transition: background-color .3s ease;
  }
  
  .c-filter--active .c-filter__type__icon{ background-color: #0093d0; }
  
  .c-filter .c-filter__type{ justify-content: center; }

  .c-filter .c-filter__type__icon{ display: block; }
  
  .c-filter .c-filter__type span {
    color: #fff;
    font-weight: 300;
  }
  
  .c-filter .c-filter__type {background-color:transparent;}
  
  .c-filter__clear__wrap{
    background-image: none;
    width: auto;
    padding: 0.93rem;
    display: flex;
    align-items: center;
    justify-content: center;
    border-left: 1px solid #3a3a3a;
  }
  
  .c-btn--filter{ 
    margin: 0;
    color: #fff; 
    transition: color .3s ease-in-out;
  }

  .c-btn--filter:hover {
    color: #E9FA5A;
  }
  
}

/* Portfolio Items
----------------------------------------*/
.c-portfolio { 
  position: relative; 
  overflow: hidden;
}

.c-portfolio-grid {
  display: flex;
  flex-wrap: wrap;
}

.c-portfolio-grid .b-lazy {
  transition: opacity 500ms ease-in-out;
  opacity: 0;
}

.c-portfolio-grid .b-lazy.b-loaded {
  opacity: 1;
}

.c-portfolio-grid .c-portfolio-grid__item { 
  width: 100%; 
  padding: 20px;
}

@media screen and (min-width: 768px){
  
  .c-portfolio-grid .c-portfolio-grid__item { 
    width: 50%; 
  }
  
}


@media screen and (min-width: 1024px){
  
  .c-portfolio-grid .c-portfolio-grid__item{ 
    width: 33.33%; 
  }
  
}

/*@media screen and (min-width: 1800px){
  
  .c-portfolio-grid .c-portfolio-grid__item{ 
    width: 25%; 
  }
  
}*/

.c-portfolio__img {
  margin: 0;
  display: block;
}

.c-portfolio:hover .c-portfolio__overlay {
  opacity: 1;
}

/*.c-portfolio__overlay {
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  height: 100%;
  width: 100%;
  background: #46ADF9;
  background: linear-gradient(255deg, rgba(0,36,192,0.7483368347338936) 0%, rgba(70,173,249,0.7483368347338936) 100%); 
  opacity: 0;
  transition: all .5s ease;
  flex-direction: column;
}*/

.c-portfolio__link {
  display: block;
  text-decoration: none;
}

.c-portfolio:hover .c-portfolio__title,
.c-portfolio:focus .c-portfolio__title,
.c-portfolio:active .c-portfolio__title {
  color: #0024C0 !important;
}

.c-portfolio__loading{
  padding-bottom: 100px;
}

.lds-roller {
  display: inline-block;
  position: relative;
  width: 64px;
  height: 64px;
}

.lds-roller div {
  animation: lds-roller 1.2s cubic-bezier(0.5, 0, 0.5, 1) infinite;
  transform-origin: 32px 32px;
}

.lds-roller div:after {
  content: " ";
  display: block;
  position: absolute;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #083a62;
  margin: -3px 0 0 -3px;
}

.lds-roller div:nth-child(1) {
  animation-delay: -0.036s;
}

.lds-roller div:nth-child(1):after {
  top: 50px;
  left: 50px;
}

.lds-roller div:nth-child(2) {
  animation-delay: -0.072s;
}

.lds-roller div:nth-child(2):after {
  top: 54px;
  left: 45px;
}

.lds-roller div:nth-child(3) {
  animation-delay: -0.108s;
}

.lds-roller div:nth-child(3):after {
  top: 57px;
  left: 39px;
}

.lds-roller div:nth-child(4) {
  animation-delay: -0.144s;
}

.lds-roller div:nth-child(4):after {
  top: 58px;
  left: 32px;
}

.lds-roller div:nth-child(5) {
  animation-delay: -0.18s;
}

.lds-roller div:nth-child(5):after {
  top: 57px;
  left: 25px;
}

.lds-roller div:nth-child(6) {
  animation-delay: -0.216s;
}

.lds-roller div:nth-child(6):after {
  top: 54px;
  left: 19px;
}

.lds-roller div:nth-child(7) {
  animation-delay: -0.252s;
}

.lds-roller div:nth-child(7):after {
  top: 50px;
  left: 14px;
}

.lds-roller div:nth-child(8) {
  animation-delay: -0.288s;
}

.lds-roller div:nth-child(8):after {
  top: 45px;
  left: 10px;
}

@keyframes lds-roller {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

.c-portfolio__title-capitalize {
  text-transform: capitalize !important;
}

.c-portfolio__block {
  position: relative;
  padding-bottom: 56.25%; /* 16:9 */
  padding-top: 25px;
  height: 0;
  aspect-ratio: 3 / 1.85;
}

.c-portfolio__img {
  position:absolute;
  top:0;
  left:0;
  transition:all .6s ease;
}

.c-portfolio__img-1 {
  z-index:20;
}

.c-portfolio__img-1:hover {
  opacity:0 !important;
}
