.listNav > li > a {
  font-size: 18px;
  color: #1f1f1f;
}

.listNav > li > a {
  position: relative;
}

.listNav > li > a::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -3px;
  width: 100%;
  height: 2px;
  background-color: #1f1f1f;
  transition: bottom 0.4s ease-out;
  opacity: 0;
}

.listNav > li > a:hover::after {
  bottom: 0;
  opacity: 1;
}

/**/

#tittle {
  font-size: 82px;
  letter-spacing: -2px;
  font-weight: normal;
}

.h3_container > h3 {
  font-size: 32px;
  color: #1f1f1f;
  font-weight: 300;
}

#text_with_flag {
  position: relative;
}

#text_with_flag span {
  position: relative;
}

#text_with_flag span::before {
  content: "";
  background-image: url("/imgs/flagUk.svg");
  display: inline-block;
  width: 26px;
  height: 18px;
  margin: 0 6px;
  vertical-align: middle;
  background-size: cover;
}

.text_index {
  position: relative;
}
.text_index::before {
  content: "";
  background-image: url("/imgs/arrow_icon_svg.svg");
  display: inline-block;
  width: 28px;
  height: 30px;
  margin: 0 10px;
  vertical-align: middle;
  background-size: cover;
}

/* стили для my_photo с псевдоелементом */
.my_photo {
  width: 100%;
  height: 80vh;
  position: relative;
  background-image: url("/imgs/my_photo.jpg");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}

.my_photo a {
  width: 100%;
  height: 100%;
  text-decoration: none;
}

.my_photo:hover a {
  background-color: #1f1f1f;
  opacity: 0.2;
  transition: background-color 0.4s ease-out;
}

.my_photo a:focus {
  outline: none;
}

.my_photo:hover {
  cursor: pointer;
}

.my_photo::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 80px; /* Ширина псевдоэлемента */
  height: 80px; /* Высота псевдоэлемента */
  background-color: #1f1f1f;
  background-image: url(/imgs/arrow_icon2_svg.svg);
  background-position: center;
  background-repeat: no-repeat;
  border-radius: 50%;
  z-index: 1;
  opacity: 0;
}

.my_photo:hover::before {
  transition: opacity 0.4s ease-out;
  opacity: 1;
}
/**/

/* стили для block_about_me с псевдоелементом */

#tittle_two {
  font-size: 60px;
  letter-spacing: -2px;
}

.block_cont_about_me > h3 {
  margin: 0;
  font-size: 32px;
  color: #1f1f1f;
  font-weight: 300;
}

.block_cont_about_me > p {
  font-size: 18px;
  color: #1f1f1f;
  font-weight: 300;
  line-height: 160%;
}

.icons_cont a {
  margin-right: 10px;
}

.icons_cont h2 {
  font-size: 60px;
  letter-spacing: -2px;
  color: #b1b1b1;
  margin: 0;
  text-align: start;
  transform: translateY(14px);
}

.icons_cont h3 {
  font-size: 32px;
  color: #1f1f1f;
  font-weight: 300;
  margin: 0 10px;
}

.icons_cont > div {
  width: 40px;
  height: 40px;
  background-color: #1f1f1f;
  border-radius: 20px;
  margin-right: 10px;
  background-repeat: no-repeat;
  background-size: cover;
}

#inst_icon {
  width: 40px;
  height: 40px;
  background-image: url(/imgs/inst_icon.svg);
  background-position: center;
  background-repeat: no-repeat;
}

#behance_icon {
  width: 40px;
  height: 40px;
  background-image: url(/imgs/behance_icon.svg);
  background-position: center;
  background-repeat: no-repeat;
}

#linked_icon {
  width: 40px;
  height: 40px;
  background-image: url(/imgs/linked_icon.svg);
  background-position: center;
  background-repeat: no-repeat;
}

.block_cont_about_me {
  position: relative;
}

.block_cont_about_me::before {
  content: "";
  position: absolute;
  left: 0;
  transform: translateY(-50%);
  width: 2px;
  height: 100%;
  background-color: #1f1f1f;
  top: 50%;
  transform-origin: center;
}
/**/

.text_index_two {
  position: relative;
  font-size: 32px;
  color: #1f1f1f;
  font-weight: 300;
}

.text_index_two::after {
  content: "";
  background-image: url("/imgs/arrow_icon3_svg.svg");
  display: inline-block;
  width: 28px;
  height: 30px;
  margin: 0 10px;
  vertical-align: middle;
  background-size: cover;
}

.btns_container button {
  position: relative;
  font-family: "helvetica", sans-serif;
  font-size: 60px;
  letter-spacing: -2px;
  color: #1f1f1f;
  background: none;
  border: none;
  cursor: pointer;
  margin-bottom: 10px;
  text-align: left;
  transition: transform 0.3s ease-in-out;
  padding: 0;
}

.btns_container button:last-child {
  margin-bottom: 0;
}

.btns_container button:hover {
  transform: translateX(-5px);
}

/* стили для скрипта */

.active::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -2px;
  width: 100%;
  height: 4px;
  background-color: #1f1f1f;
  transition: height 0.3s ease-in-out;
}

.active:hover::after {
  background-color: #1f1f1f;
  height: 2px;
}

/**/

.text_descript_my_skill {
  font-size: 22px;
  text-align: left;
  font-weight: 300;
  line-height: 160%;
  color: #1f1f1f;
  position: relative;
}

.text_descript_my_skill::before {
  content: "";
  position: absolute;
  left: 0;
  transform: translateY(-50%);
  width: 2px;
  height: 100%;
  background-color: #1f1f1f;
  top: 50%;
  transform-origin: center;
}

.photo_portfolio {
  width: 100%;
  height: 80vh;
  position: relative;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}

.photo_portfolio a {
  width: 100%;
  height: 100%;
  text-decoration: none;
}

.photo_portfolio:hover a {
  background-color: #1f1f1f;
  opacity: 0.2;
  transition: background-color 0.4s ease-out;
}

.photo_portfolio a:focus {
  outline: none;
}

.photo_portfolio:hover {
  cursor: pointer;
}

.photo_portfolio::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 80px; /* Ширина псевдоэлемента */
  height: 80px; /* Высота псевдоэлемента */
  background-color: #1f1f1f;
  background-image: url(/imgs/arrow_icon2_svg.svg);
  background-position: center;
  background-repeat: no-repeat;
  border-radius: 50%;
  z-index: 1;
  opacity: 0;
}

.photo_portfolio:hover::before {
  transition: opacity 0.4s ease-out;
  opacity: 1;
}

.filter_portfolio_cont {
  position: relative;
}

/* класс псевдоэлмента для script_css */
.filter_portfolio_cont.not-last-child::after {
  content: "";
  position: absolute;
  top: calc(0%);
  left: 0;
  width: 100%;
  height: 2px;
  background-color: #1f1f1f;
  z-index: 1;
}

.filter_portfolio_cont::after {
  content: "";
  position: absolute;
  top: calc(100%);
  left: 0;
  width: 100%;
  height: 2px;
  background-color: #1f1f1f;
  z-index: 1;
}
/**/

#tittle_three {
  width: 30%;
  font-size: 60px;
  letter-spacing: -2px;
  margin: 0;
}

.listNav_two > li > a {
  font-size: 18px;
  color: #1f1f1f;
}

.listNav_two > li > a {
  position: relative;
}

.listNav_two > li > a::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -3px;
  width: 100%;
  height: 2px;
  background-color: #1f1f1f;
  transition: bottom 0.4s ease-out;
  opacity: 0;
}

.listNav_two > li > a:hover::after {
  bottom: 0;
  opacity: 1;
}

.listNav_two > li > a.active::after {
  bottom: 0;
  opacity: 1;
}

#work_descript {
  width: 30%;
  font-size: 18px;
  color: #1f1f1f;
  font-weight: 300;
  line-height: 160%;
}

.btn_next {
  width: 240px;
  height: 60px;
  border: 1px solid #1f1f1f;
  border-radius: 30px;
  background: none;
  padding: 0;
}

.btn_next a {
  font-size: 32px;
  color: #1f1f1f;
  font-weight: 300;
}

.btn_next a::after {
  content: "";
  background-image: url("/imgs/arrow_icon4_svg.svg");
  display: inline-block;
  width: 30px;
  height: 28px;
  margin: 0 10px;
  vertical-align: middle;
  background-size: cover;
}

.btn_next:hover {
  background-color: #1f1f1f;
  transition: background-color 0.2s ease-out;
  transition: transform 0.3s ease-out;
  transform: translateX(10px);
}

.btn_next:not(:hover) {
  transition: transform 0.3s ease-out; /* Применить плавное изменение для свойства transform при уходе курсора */
}

.btn_next:not(:hover):hover {
  transform: none; /* Вернуть кнопку в исходное положение при уходе курсора с наведенной кнопки */
}

.btn_next a:hover {
  color: white;
}

.btn_next a:hover::after {
  background-image: url("/imgs/arrow_icon4_white_svg.svg");
}

.btn_next:active {
  border: 1px solid #1f1f1f;
  border-radius: 30px;
  background: none;
  transform: translateX(0px);
}

.btn_next a:active {
  color: #1f1f1f;
}

.btn_next a:active::after {
  background-image: url("/imgs/arrow_icon4_svg.svg");
}

.tittle_four {
  font-size: 60px;
  letter-spacing: -2px;
  margin: 0;
  color: #1f1f1f;
}

#final_phrase {
  font-size: 18px;
  color: #1f1f1f;
  font-weight: 300;
  line-height: 160%;
}

.skills_descript_cont {
  position: relative;
}

.skills_descript_cont::before {
  content: "";
  position: absolute;
  left: 100%;
  transform: translateY(-50%);
  width: 2px;
  height: 100%;
  background-color: #1f1f1f;
  top: 50%;
  transform-origin: center;
}

.skills_descript_cont:nth-child(4)::before {
  display: none;
}

.footer_block {
  width: 100%;
  height: 460px;
  padding: 40px 60px 40px 60px;
  background-color: #d8dde1;
}

.footer_tittle_cont > h3 {
  font-size: 32px;
  color: #1f1f1f;
  font-weight: 300;
  margin: 0;
}

#my_email {
  position: relative;
  text-decoration: none;
  color: #1f1f1f;
  font-size: 82px;
  width: 77%;
}

#my_email::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -3px;
  width: 100%;
  height: 4px;
  background-color: #1f1f1f;
  transition: bottom 0.4s ease-out;
  opacity: 0;
}

#my_email:hover::after {
  bottom: 0;
  opacity: 1;
}

/* класс для select lang*/

select {
  color: #1f1f1f;
  padding: 10px;
  width: 80px;
  max-width: 100%;
  box-sizing: border-box;
  margin: 0;
  border: none;
  outline: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  background-image: url("/imgs/arrow-down.svg");
  background-repeat: no-repeat;
  background-position: right 0.7em top 50%, 0 0;
  background-size: 24px auto, 100%;
  cursor: pointer;
  transition: background-position 0.2s ease;
}

select:hover {
  background-position: right 0.7em top 64%, 0 0;
}

select::-ms-expand {
  display: none;
}
select:hover {
  border-color: #888;
}
select:focus {
  border-color: #aaa;
  color: #222;
  outline: none;
}

/* Убедитесь, что правило для IE учитывается и не перекрывает псевдоэлемент */
@media screen and (min-width: 0\0) {
  select::after {
    display: none;
  }
}

hr {
  grid-row: 2;
  grid-column: 1/-1;
  transform: translateY(-40px);
  width: 100%;
  margin: 0;
  height: 2px;
  border: none; /* Убрать рамку */
  background-color: #1f1f1f; /* Цвет фона */
}

hr.last {
  grid-column: 2/-1;
}
