@keyframes portfolio_animation {
  from {
    transform: scale(0);
    transition: .3s;
    opacity: 0; }
  to {
    transform: scale(1);
    transition: .3s;
    opacity: 1; } }

.consulting_portfolio_box.rtl .consulting_portfolio_grid.style_1.hover_slide_in_up .portfolio_item .portfolio_link .portfolio_info {
  left: unset;
  right: 25px;
  text-align: right; }

.consulting_portfolio_box.rtl .consulting_portfolio_grid.style_1.hover_slide_in_right .portfolio_item .portfolio_link .portfolio_info {
  left: unset;
  right: 25px;
  text-align: right; }
  .consulting_portfolio_box.rtl .consulting_portfolio_grid.style_1.hover_slide_in_right .portfolio_item .portfolio_link .portfolio_info .portfolio_category:before {
    margin-right: 0;
    margin-left: 15px; }

.consulting_portfolio_box .consulting_portfolio_grid.style_1 {
  display: grid;
  grid-gap: 10px;
  grid-template-columns: repeat(3, minmax(250px, 1fr));
  grid-auto-rows: 240px;
  grid-auto-flow: dense;
  padding: 5px; }
  @media (max-width: 767px) {
    .consulting_portfolio_box .consulting_portfolio_grid.style_1 {
      grid-template-columns: repeat(auto-fit, minmax(100%, 1fr)); } }
  @media (min-width: 768px) and (max-width: 1024px) {
    .consulting_portfolio_box .consulting_portfolio_grid.style_1 {
      grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); } }
  .consulting_portfolio_box .consulting_portfolio_grid.style_1 .portfolio_item {
    display: flex;
    justify-content: center;
    align-items: center;
    transition: all .3s; }
    .consulting_portfolio_box .consulting_portfolio_grid.style_1 .portfolio_item .portfolio_link {
      height: 100%;
      width: 100%;
      position: relative; }
      .consulting_portfolio_box .consulting_portfolio_grid.style_1 .portfolio_item .portfolio_link:before {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        opacity: 0;
        transition: all .3s ease; }
    .consulting_portfolio_box .consulting_portfolio_grid.style_1 .portfolio_item img {
      width: 100%;
      height: 100%;
      -o-object-fit: cover;
         object-fit: cover; }
    .consulting_portfolio_box .consulting_portfolio_grid.style_1 .portfolio_item.wide {
      grid-column: span 2; }
      @media (max-width: 767px) {
        .consulting_portfolio_box .consulting_portfolio_grid.style_1 .portfolio_item.wide {
          grid-column: span 1; } }
      @media (min-width: 768px) and (max-width: 1024px) {
        .consulting_portfolio_box .consulting_portfolio_grid.style_1 .portfolio_item.wide {
          grid-column: span 1; } }
    .consulting_portfolio_box .consulting_portfolio_grid.style_1 .portfolio_item.tall {
      grid-row: span 2; }
      @media (min-width: 768px) and (max-width: 1024px) {
        .consulting_portfolio_box .consulting_portfolio_grid.style_1 .portfolio_item.tall {
          grid-row: span 1; } }
  .consulting_portfolio_box .consulting_portfolio_grid.style_1.hover_slide_on_top_and_bottom .portfolio_item .portfolio_link:before {
    background-color: #002E5BB2;
    z-index: 1; }
  .consulting_portfolio_box .consulting_portfolio_grid.style_1.hover_slide_on_top_and_bottom .portfolio_item .portfolio_link .portfolio_info {
    display: flex;
    flex-direction: column;
    text-align: center;
    position: absolute;
    top: 40%;
    opacity: 0;
    left: 50%;
    transform: translate(-50%, -50%);
    transition: all .3s ease;
    color: #fff;
    font-size: 18px;
    line-height: 24px;
    font-weight: 500;
    font-family: var(--con_primary_font_family);
    word-break: break-word;
    width: 100%;
    max-width: 85%;
    z-index: 2; }
    .consulting_portfolio_box .consulting_portfolio_grid.style_1.hover_slide_on_top_and_bottom .portfolio_item .portfolio_link .portfolio_info:before {
      content: '';
      display: block;
      width: 47px;
      height: 5px;
      background: var(--con_third_color);
      margin: 0 auto 22px; }
    .consulting_portfolio_box .consulting_portfolio_grid.style_1.hover_slide_on_top_and_bottom .portfolio_item .portfolio_link .portfolio_info .portfolio_category {
      display: block;
      padding-top: 10px;
      position: relative;
      top: 40px;
      transition: all .3s ease;
      font-size: 14px;
      line-height: 20px;
      font-weight: 400;
      font-family: var(--con_secondary_font_family); }
  .consulting_portfolio_box .consulting_portfolio_grid.style_1.hover_slide_on_top_and_bottom .portfolio_item .portfolio_link:hover .portfolio_info {
    opacity: 1;
    top: 50%; }
    .consulting_portfolio_box .consulting_portfolio_grid.style_1.hover_slide_on_top_and_bottom .portfolio_item .portfolio_link:hover .portfolio_info .portfolio_category {
      top: 0px; }
  .consulting_portfolio_box .consulting_portfolio_grid.style_1.hover_slide_on_top_and_bottom .portfolio_item .portfolio_link:hover:before {
    opacity: 1; }
  .consulting_portfolio_box .consulting_portfolio_grid.style_1.hover_slide_in_up .portfolio_item .portfolio_link:before {
    background-color: transparent; }
  .consulting_portfolio_box .consulting_portfolio_grid.style_1.hover_slide_in_up .portfolio_item .portfolio_link .portfolio_info {
    display: flex;
    flex-direction: column-reverse;
    position: absolute;
    bottom: -30px;
    padding: 20px;
    left: 25px;
    opacity: 0;
    transition: all .3s ease;
    color: var(--con_base_color);
    background-color: #fff;
    border-radius: 2px;
    font-size: 16px;
    line-height: 22px;
    font-weight: 500;
    font-family: var(--con_primary_font_family);
    max-width: 85%;
    word-break: break-word;
    text-align: left; }
    .consulting_portfolio_box .consulting_portfolio_grid.style_1.hover_slide_in_up .portfolio_item .portfolio_link .portfolio_info .portfolio_category {
      font-size: 14px;
      line-height: 20px;
      font-weight: 400;
      font-family: var(--con_primary_font_family);
      color: #7B7A7A;
      padding-bottom: 10px; }
  .consulting_portfolio_box .consulting_portfolio_grid.style_1.hover_slide_in_up .portfolio_item .portfolio_link:hover .portfolio_info {
    opacity: 1;
    bottom: 25px; }
  .consulting_portfolio_box .consulting_portfolio_grid.style_1.hover_slide_in_up .portfolio_item .portfolio_link:hover:before {
    opacity: 1; }
  .consulting_portfolio_box .consulting_portfolio_grid.style_1.hover_slide_in_right .portfolio_item .portfolio_link:before {
    background-color: #011122B2; }
  .consulting_portfolio_box .consulting_portfolio_grid.style_1.hover_slide_in_right .portfolio_item .portfolio_link .portfolio_info {
    display: flex;
    flex-direction: column;
    position: absolute;
    left: -20px;
    top: 50%;
    transform: translateY(-50%);
    opacity: 0;
    transition: all .3s ease;
    color: #fff;
    font-size: 18px;
    line-height: 24px;
    font-weight: 500;
    font-family: var(--con_primary_font_family);
    max-width: 85%;
    word-break: break-word;
    text-align: left; }
    .consulting_portfolio_box .consulting_portfolio_grid.style_1.hover_slide_in_right .portfolio_item .portfolio_link .portfolio_info .portfolio_category {
      display: block;
      padding-top: 15px;
      position: relative;
      transition: all .3s ease;
      font-size: 13px;
      line-height: 20px;
      font-weight: 400;
      font-family: var(--con_secondary_font_family); }
      .consulting_portfolio_box .consulting_portfolio_grid.style_1.hover_slide_in_right .portfolio_item .portfolio_link .portfolio_info .portfolio_category:before {
        content: '';
        display: inline-block;
        width: 20px;
        height: 2px;
        background-color: #D9D9D9;
        vertical-align: middle;
        margin-right: 15px; }
  .consulting_portfolio_box .consulting_portfolio_grid.style_1.hover_slide_in_right .portfolio_item .portfolio_link:hover .portfolio_info {
    opacity: 1;
    left: 25px; }
  .consulting_portfolio_box .consulting_portfolio_grid.style_1.hover_slide_in_right .portfolio_item .portfolio_link:hover:before {
    opacity: 1; }
  .consulting_portfolio_box .consulting_portfolio_grid.style_1.hover_overlay_bordered .portfolio_item .portfolio_link:before {
    background-color: #002E5BB2;
    top: 15px;
    left: 15px;
    width: calc(100% - 30px);
    height: calc(100% - 30px); }
  .consulting_portfolio_box .consulting_portfolio_grid.style_1.hover_overlay_bordered .portfolio_item .portfolio_link .portfolio_info {
    display: flex;
    flex-direction: column-reverse;
    text-align: center;
    position: absolute;
    opacity: 0;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    transition: all .3s ease;
    font-size: 16px;
    line-height: 22px;
    font-weight: 500;
    color: #fff;
    font-family: var(--con_primary_font_family);
    max-width: 85%;
    word-break: break-word; }
    .consulting_portfolio_box .consulting_portfolio_grid.style_1.hover_overlay_bordered .portfolio_item .portfolio_link .portfolio_info .portfolio_category {
      display: block;
      padding-bottom: 10px;
      position: relative;
      transition: all .3s ease;
      font-size: 13px;
      line-height: 26px;
      font-weight: 500;
      color: var(--con_third_color);
      font-family: var(--con_secondary_font_family); }
  .consulting_portfolio_box .consulting_portfolio_grid.style_1.hover_overlay_bordered .portfolio_item .portfolio_link:hover .portfolio_info {
    opacity: 1; }
  .consulting_portfolio_box .consulting_portfolio_grid.style_1.hover_overlay_bordered .portfolio_item .portfolio_link:hover:before {
    opacity: 1; }
