.projCat {
	padding: 10px;
	position: relative;
  cursor: pointer;
}

.projCat:hover {
  opacity: 0.8;
}

.projCat.active {
  background: #eee;
}



.projCat h4 {
	margin: 0px;
	margin-top: 5px;
	padding: 1px;
}

.projCat p {
	margin-bottom: 5px;
}

@media (max-width: 900px) {
  .projCat p {
    display: none;
    line-height: 1.4;
  }
  .projCat.active p {
    display: block;
  }
}


.projects_list {
	position: absolute;
	width: calc(100% - 984px);
  max-width: 886px;
  left: 984px;
	margin-top: 45px;
	padding: 10px;
	border-left: 1px solid #dedede;
	border-top: 1px solid #dedede;
	color: #444444;
	background-color: #ffffff;
	opacity: 0.9;
	display: none;
  column-count: 3;
  column-gap: 30px;
  box-sizing: border-box;
  padding-bottom: 100px;
}

@media (max-width: 1460px) {
  .projects_list {
    left: 460px;
    width: calc(100% - 460px);
  }
}

@media (max-width: 600px) {
  .projects_list {
    position: static;
    border: none;
    margin: 0;
    width: auto;
    column-count: 2;
    column-gap: 10px;
  }
}

.project_item {
	margin-bottom: 20px;
	cursor: pointer;
  break-inside: avoid;
}

.project_item:first-of-type {
  margin-top: 0;
}

.project_item:after {
  clear: both;
  content: " ";
  height: 0;
  display: block;
}

.project_item:hover .project_title {
  opacity: 0.6;
}

.project_item:hover .project_img {
  opacity: 0.8;
}

.project_item .project_img {
	width: 100%;
}


.project_item .project_title {
  margin: 10px 0;
	line-height: 1.2;
  font-size: 13px;
  font-weight: normal;
}

.content h3 {
  margin-left: 10px;
}

.modal {
	width: 100%;
	height: 100%;
	position: absolute;
  z-index: 1;
  display: none;
  padding: 50px;
  box-sizing: border-box;
}

@media (max-width: 900px) {
  .modal {
    padding: 10px;
  }
}

.modal_bg {
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  position: fixed;
  background-color: #000000;
  opacity: 0.6;
}

.modal_wrapper {
  width: calc(100% - 100px);
  min-height: calc(100% - 100px);
  top: 50px;
  left: 50px;
  position: absolute;
  pointer-events: none;
}

@media (max-width: 900px) {
  .modal_wrapper {
    width: 100%;
    min-height: 100vh;
    top: 0px;
    left: 0px;
    background: #fff;
  }
}


.modal_content:after {
  clear: both;
  content: " ";
  height: 0;
  display: block;
}

.modal_content_left {
  position: fixed;
  left: 50px;
  top: 50px;
  width: calc(100% - 500px);
  background-color: #000000;
  height: calc(100vh - 100px);
  pointer-events: all;
}

@media (max-width: 900px) {
  .modal_content_left {
    top: 0;
    left: 0;
    position: relative;
    width: 100%;
    padding-top: 56.25%;
    height: 0;
  }
}

.modal_content_right {
  float: right;
  min-height: calc(100vh - 100px);
	width: 400px;
	background-color: #ffffff;
	padding: 30px;
  box-sizing: border-box;
  pointer-events: all;
}

@media (max-width: 900px) {
  .modal_content_right {
    float: none;
    width: auto;
    min-height: 0;
    padding: 20px;
  }
}

.modal_images_cont {
  position: absolute;
  width: calc(100% - 100px);
  height: calc(100% - 100px);
  top: 50px;
  left: 50px;
}

@media (max-width: 900px) {
  .modal_images_cont {
    width: calc(100% - 40px);
    height: calc(100% - 40px);
    top: 20px;
    left: 20px;
  }
}

.modal_image {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background: center/contain no-repeat;
  opacity: 0;
}

.modal_title {
  margin-top: 40px;
  font-weight: bold;
}

.modal_comment{
	margin-top: 10px;
  margin-top: 10px;
  line-height: 1.4;
}

.prev_button {
  position: absolute;
  left: 10px;
  top: 50%;
  width: 50px;
  height: 50px;
  transform-origin: center;
  transform: translateY(-50%) rotate(180deg);
  background: url('/res/right.svg') center/10px no-repeat;
  cursor: pointer;
  opacity: 0.9;
}

@media (max-width: 900px) {
  .prev_button {
    width: 30px;
    height: 30px;
  }
}

.next_button {
  position: absolute;
  right: 10px;
  top: 50%;
  width: 50px;
  height: 50px;
  transform: translateY(-50%);
  background: url('/res/right.svg') center/10px no-repeat;
  cursor: pointer;
  opacity: 0.9;
}

@media (max-width: 900px) {
  .next_button {
    width: 30px;
    height: 30px;
  }
}


.prev_button:hover,
.next_button:hover {
  opacity: 1;
}


.modal_docs {
  margin-top: 30px;
}

.modal_docs a {
  display: block;
  color: #222;
  padding: 5px;
  width: 100%;
  box-sizing: border-box;
  word-break: break-word;
}
.modal_docs a:hover {
  opacity: 0.8;
}

.modal_docs a:after {
  content: " ";
  height: 0;
  display: block;
  clear: both;
}

.modal_docs .doc_icon {
  float: left;
  width: 32px;
  height: 32px;
}

.modal_docs .doc_title {
  float: left;
  width: calc(100% - 32px);
  padding: 10px;
  box-sizing: border-box;
}

.modal_close {
  top: 60px;
  right: 60px;
  width: 30px;
  height: 30px;
  background: url('/res/close.png') center/13px no-repeat;
  position: fixed;
  cursor: pointer;
}

@media (max-width: 900px) {
  .modal_close {
    filter: invert(1);
    top: 10px;
    right: 10px;
  }
}

.modal_close:hover {
  opacity: 0.8;
}
