@font-face {
  font-family: 'Sacramento';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('../assets/fonts/Sacramento.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: 'Ubuntu';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url('../assets/fonts/Ubuntu-italic.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: "Kanyon-Light";
  font-style: normal;
  font-weight: 400;
  src: url("../assets/fonts/Kanyon-Light.woff") format("woff");
  font-display: swap;
}

@font-face {
  font-family: "Kanyon-Regular";
  font-style: normal;
  font-weight: 400;
  src: url("../assets/fonts/Kanyon-Regular.woff") format("woff");
  font-display: swap;
}

@font-face {
  font-family: "Reckoner";
  font-style: normal;
  font-weight: 400;
  src: url("../assets/fonts/Reckoner.woff2") format("woff2");
  font-display: swap;
}

@font-face {
  font-family: "Reckoner-Bold";
  font-style: normal;
  font-weight: 400;
  src: url("../assets/fonts/Reckoner_Bold.woff2") format("woff2");
  font-display: swap;
}

@font-face {
  font-family: "Fontatica";
  font-style: normal;
  font-weight: 400;
  src: url("../assets/fonts/Fontatica.woff2") format("woff2");
  font-display: swap;
}

@font-face {
  font-family: "Fontatica-Italic";
  font-style: normal;
  font-weight: 400;
  src: url("../assets/fonts/Fontatica-Italic.woff2") format("woff2");
  font-display: swap;
}

:root {
  --text-section-description: 20px;
  --text-em: 16px;
  --text-320-title: 42px;
  --text-title: 46px;
  --text-em-2: 14px;
}

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  transition: 1s;
  -webkit-transition: 1s;
  -moz-transition: 1s;
  -o-transition: 1s;
  -ms-transition: 1s;
}

html {
  scroll-behavior: smooth;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  line-height: 1.2;
  font-weight: 700;
  color: #2f3239;
}

.body {
  font-family: "Kanyon-Light";
  font-size: var(--text-section-description);
  font-weight: 400;
}

.header-container,
.header,
.logo,
.nav-link,
.nav-list,
.section,
.right-container,
.expirience-info,
.address,
.achievements,
.expirience-progress,
.progress-right,
.container-stack,
.footer,
.languages,
.education-list-item,
.portfolio-info,
.porfolio-list,
.overlay,
.over-line,
.home-left-container-welcome,
.home-container,
.home-left-container-links,
.logo-anchor,
.code-left,
.code-text,
.center-code,
.link-git,
.left-postition-text-symbol,
.lines-block,
.info-block-home,
.links-git {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.expirience-info,
.address,
.expirience-progress,
.container-stack,
.education-list-item,
.portfolio-info,
.right-container,
.overlay,
.home-left-container-welcome,
.home-container,
.code-left,
.center-code,
.info-block-home {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}

.main-container,
.footer-container,
.home-container {
  margin: 0 auto;
  padding-left: 10px;
}

.header-container {
  margin: 0 auto;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  width: 980px;
  padding: 0 10px;
}

.header {
  height: 60px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: #2f3239;
  position: sticky;
  top: 0;
  z-index: 3;
}

.logo {
  width: 200px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.nav {
  position: relative;
  z-index: 2;
  height: 60px;
}

.nav-link,
.footer-link {
  text-decoration: none;
  color: #ffffff;
}

.nav-link {
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  width: 100%;
  height: 100%;
  padding: 20px 7px;
}

.nav-item,
.achievements-info,
.infographic {
  list-style: none;
}

.nav-list {
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.nav-item {
  height: 60px;
  color: #ffffff;
  font-size: 15px;
  letter-spacing: 0.09em;
  font-weight: 300;
  text-transform: uppercase;
  font-family: "Fontatica";
}

.nav-item:first-child {
  background-color: #78418c;
}

.nav-item:nth-child(2) {
  background-color: #3bc9ab;
}

.nav-item:nth-child(3) {
  background-color: #dfab0f;
}

.nav-item:nth-child(4) {
  background-color: #7e9799;
}

.nav-item:nth-child(5) {
  background-color: #c9643b;
}

.nav-item:nth-child(6) {
  background-color: #c11771;
}

.nav-item:nth-child(7) {
  background-color: #c93b59;
}

.nav-item:nth-child(8) {
  background-color: #3b59c9;
}

.background-header {
  position: absolute;
  top: 0;
  left: 50%;
  background-color: #3b59c9;
  z-index: 1;
  width: 50%;
  height: 60px;
}

.active {
  height: 70px;
}

.nav-item:hover {
  cursor: pointer;
  height: 70px;
}

.section {
  padding: 80px 0;
  max-width: 980px;
  column-gap: 10px;
  -webkit-column-gap: 10px;
  -moz-column-gap: 10px;
  -o-column-gap: 10px;
  -ms-column-gap: 10px;
  margin: 0 auto;
}

.left-container {
  width: 36%;
}

.right-container {
  width: 64%;
  padding: 0;
  gap: 20px;
}

.background-main {
  background-color: #f9f9f9;
}

.about-info__title {
  font-family: 'Sacramento', cursive;
  font-weight: 400;
  font-size: 32px;
}

.about-info {
  font-size: var(--text-section-description);
  text-indent: 5px;
}

.expirience-info {
  row-gap: 10px;
  -webkit-row-gap: 10px;
  -moz-row-gap: 10px;
  -o-row-gap: 10px;
  -ms-row-gap: 10px;
  font-size: var(--text-section-description);
  text-indent: 5px;
}

.address {
  gap: 10px;
  -webkit-gap: 10px;
  -moz-gap: 10px;
  -o-gap: 10px;
  -ms-gap: 10px;
}

.text-bold {
  font-weight: 600;
}

.achievements {
  column-gap: 20px;
  -webkit-column-gap: 20px;
  -moz-column-gap: 20px;
  -o-column-gap: 20px;
  -ms-column-gap: 20px;
}

.counter {
  font-size: 56px;
  color: #ff971a;
  line-height: 62px;
}

.expirience-progress {
  gap: 20px;
  -webkit-gap: 20px;
  -moz-gap: 20px;
  -webkit-gap: 20px;
  -o-gap: 20px;
  -ms-gap: 20px;
  width: 100%;
  margin-bottom: 30px;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.img-stack:hover {
  -webkit-transform: rotate(360deg);
  -ms-transform: rotate(360deg);
      transform: rotate(360deg);
}

.text-stack:hover {
  -webkit-transform: scale(0.9);
  -ms-transform: scale(0.9);
      transform: scale(0.9);
}

.progress-right {
  width: 100%;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: start;
  gap: 20px 30px;
  -webkit-gap: 20px 30px;
  -moz-gap: 20px 30px;
  -o-gap: 20px 30px;
  -ms-gap: 20px 30px;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.container-stack {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  row-gap: 5px;
  -webkit-row-gap: 5px;
  -moz-row-gap: 5px;
  -o-row-gap: 5px;
  -ms-row-gap: 5px;
  width: 58px;
  height: 75px;
}

.text-stack {
  font-size: var(--text-section-description);
  font-weight: 500;
  -webkit-transition: -webkit-transform 0.8s ease-in-out;
  -o-transition: -o-transform 0.8s ease-in-out;
  transition: -webkit-transform 0.8s ease-in-out;
  -o-transition: transform 0.8s ease-in-out;
  transition: transform 0.8s ease-in-out;
  transition: transform 0.8s ease-in-out, -webkit-transform 0.8s ease-in-out;
}

.img-stack {
  width: 50px;
  height: 50px;
  margin: 8px 8px 0;
  -o-object-fit: contain;
     object-fit: contain;
  -webkit-transition: -webkit-transform 0.8s ease-in-out;
  -o-transition: -o-transform 0.8s ease-in-out;
  transition: -webkit-transform 0.8s ease-in-out;
  -o-transition: transform 0.8s ease-in-out;
  transition: transform 0.8s ease-in-out;
  transition: transform 0.8s ease-in-out, -webkit-transform 0.8s ease-in-out;
}

.title-stack {
  font-size: var(--text-section-description);
  text-indent: 5px;
}

.expirience-info.h4 {
  font-size: 24px;
}

.footer {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 50px;
  background-color: #2f3239;
}

.footer-container {
  color: #ffffff;
}

.footer-link:hover,
.links:hover {
  color: #f26522;
  position: relative;
}

.footer-link::before,
.links::before {
  content: "";
  position: absolute;
  left: 0;
  bottom: -5px;
  width: 0;
  height: 2px;
  background-color: rgba(255, 79, 0, 0.7);
}

.footer-link:hover:before,
.links:hover:before {
  width: 100%;
}

.footer-link::before,
.links::before {
  transition: width 0.35s;
  -webkit-transition: width 0.35s;
  -moz-transition: width 0.35s;
  -o-transition: width 0.35s;
  -ms-transition: width 0.35s;
}

.links {
  color: #2f3239;
  position: relative;
}

.resume-link {
  text-decoration: line-through;
}

.languages {
  gap: 20px;
  -webkit-gap: 20px;
  -moz-gap: 20px;
  -o-gap: 20px;
  -ms-gap: 20px;
}

.infographic {
  text-align: center;
  line-height: 100px;
  color: #ffffff;
  font-size: 36px;
}

.infographic-percent {
  width: 100px;
  height: 100px;
  -o-object-fit: contain;
     object-fit: contain;
  border-radius: 100px;
  background-color: #ffa547;
}

.infographic-percent:hover {
  -webkit-transform: scale(0.95);
      -ms-transform: scale(0.95);
          transform: scale(0.95);
}

.infographic-title {
  font-size: var(--text-section-description);
  font-weight: 400;
  text-transform: capitalize;
  margin-top: 10px;
}

.infographic:nth-child(2) .infographic-percent {
  background-color: #ff6347;
}

.pre {
  width: 100%;
  position: relative;
  border-radius: 7px;
  padding: 20px;
  background-color: rgba(201, 100, 59, 0.1);
  color: #2f3239;
  font-size: var(--text-em-2);
}

.code {
  font-size: 12px;
  white-space: pre-wrap;
  white-space: -moz-pre-wrap;
  white-space: -webkit-pre-wrap;
  white-space: -o-pre-wrap;
  white-space: -ms-pre-wrap;
  word-wrap: break-word;
}

.select-all {
  padding: 7px 20px;
  border: none;
  background-color: rgba(201, 100, 59, 0.1);
  color: #2f3239;
  width: 50%;
  border-bottom-left-radius: 7px;
  border-bottom-right-radius: 7px;
  font-size: var(--text-em-2);
}

.code-block {
  row-gap: 0;
  -webkit-row-gap: 0;
  -moz-row-gap: 0;
  -o-row-gap: 0;
  -ms-row-gap: 0;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.select-all:hover {
  cursor: pointer;
  color: #000000;
  background-color: #9bddff;
}

.education-list-item {
  gap: 13px;
  -webkit-gap: 13px;
  -moz-gap: 13px;
  -o-gap: 13px;
  -ms-gap: 13px;
  margin-bottom: 15px;
}

.education-title-img {
  width: 393px;
  height: 103.48px;
  -o-object-fit: contain;
     object-fit: contain;
  -webkit-transition: -webkit-transform 0.8s ease-in-out;
  -o-transition: -o-transform 0.8s ease-in-out;
  transition: -webkit-transform 0.8s ease-in-out;
  -o-transition: transform 0.8s ease-in-out;
  transition: transform 0.8s ease-in-out;
  transition: transform 0.8s ease-in-out, -webkit-transform 0.8s ease-in-out;
}

.education-title-img:hover {
  -webkit-transform: scale(0.9);
  -ms-transform: scale(0.9);
  transform: scale(0.9);
}

.hr {
  border: 1px solid rgba(45, 48, 56, 0.3);
  margin-bottom: 15px;
}

.education-text {
  font-weight: 400;
  color: #2f3239;
  font-size: var(--text-section-description);
  line-height: 24px;
}

.portfolio-info {
  gap: 10px;
  -webkit-gap: 10px;
  -moz-gap: 10px;
  -o-gap: 10px;
  -ms-gap: 10px;
}

.portfolio-title {
  font-family: "Ubuntu", sans-serif;
  font-weight: 400;
  color: #2f3239;
  font-size: 1.5rem;
}

.portfolio-text {
  font-size: var(--text-section-description);
  line-height: 24px;
  color: #2f3239;
}

.porfolio-list {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: start;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 3px;
  -webkit-gap: 3px;
  -moz-gap: 3px;
  -o-gap: 3px;
  -ms-gap: 3px;
}

.portfolio-item {
  width: 308px;
  -webkit-box-shadow: 1px 3px 1px 0 rgb(0 0 0 / 8%);
          box-shadow: 1px 3px 1px 0 rgb(0 0 0 / 8%);
  border: 1px solid #cfcfcf;
  background-color: #ffffff;
  font: normal 14px sans-serif;
  border: 4px solid #ffffff;
  overflow: hidden;
  font-family: "Ubuntu";
  height: auto;
  position: relative;
}

.portfolio-image {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.overlay {
  width: calc(100%);
  height: 100%;
  position: absolute;
  overflow: hidden;
  padding: 20px 20px 15px;
  top: 0;
  left: 0;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: start;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  opacity: 0;
  background-color: rgb(193, 130, 90);
  transition: all 0.4s ease-in-out;
  -webkit-transition: all 0.4s ease-in-out;
  -moz-transition: all 0.4s ease-in-out;
  -o-transition: all 0.4s ease-in-out;
  -ms-transition: all 0.4s ease-in-out;
  color: #fff;
  -webkit-transform: translate(0px, -90px) rotate(0deg);
      -ms-transform: translate(0px, -90px) rotate(0deg);
          transform: translate(0px, -90px) rotate(0deg);
  text-align: justify;
}

.over-line {
  width: 100%;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.over-icon {
  width: 30px;
  height: 30px;
  opacity: 0.9;
}

.over-icon:hover {
  opacity: 0.7;
}

.portfolio-item:nth-child(2n) .overlay {
  background-color: rgba(70, 56, 47, 1);
}

.overlay-link {
  display: inline-block;
  text-decoration: none;
  padding: 7px 13px;
  background-color: #c93b59;
  color: #fff;
  font-family: "Ubuntu", sans-serif;
  font-size: 14px;
  cursor: pointer;
  user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  -o-user-select: none;
  -ms-user-select: none;
  -webkit-user-select: none;
  border: 1px solid #c93b59;
}

.portfolio-item:hover .overlay {
  opacity: 1;
  -webkit-transform: translate(0px, 0px) rotate(0deg);
      -ms-transform: translate(0px, 0px) rotate(0deg);
          transform: translate(0px, 0px) rotate(0deg);
}

.overlay-link:hover {
  background-color: rgba(201, 59, 89, 0.5);
  border-radius: 5px;
}

.overlay-title {
  font-size: 17px;
  color: #ffffff;
  border-bottom: 2px solid #c93b59;
  letter-spacing: 0.05em;
}

.overlay-text {
  font-size: 12px;
  text-indent: 3px;
}

.home-title {
  font-size: 24px;
  font-family: "Reckoner";
  line-height: 1;
  text-align: center;
  letter-spacing: 2px;
  opacity: 0.7;
}

.home-text {
  font-size: 22.5px;
  font-weight: 300;
  font-family: "Reckoner";
  line-height: 1;
  letter-spacing: 3.1px;
  opacity: 0.7;
  text-align: justify;
  -moz-text-align-last: justify;
       text-align-last: justify;
}

.info-block-home {
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 0;
  -webkit-gap: 0;
  -moz-gap: 0;
  -o-gap: 0;
  -ms-gap: 0;
  width: 194px;
}

.home-nickname {
  text-align: justify;
  -moz-text-align-last: justify;
       text-align-last: justify;
  font-family: "Reckoner-Bold";
  line-height: 1;
  font-size: 50px;
  text-shadow: 2px 2px 3px rgba(0, 0, 0, 0.1);
  background: -webkit-gradient(
    linear,
    left top, right top,
    from(#78418c),
    color-stop(#3bc9ab),
    color-stop(#dfab0f),
    color-stop(#7e9799),
    color-stop(#c9643b),
    color-stop(#c11771),
    color-stop(#c93b59),
    to(#3b59c9)
  );
  background: -o-linear-gradient(
    left,
    #78418c,
    #3bc9ab,
    #dfab0f,
    #7e9799,
    #c9643b,
    #c11771,
    #c93b59,
    #3b59c9
  );
  background: linear-gradient(
    to right,
    #78418c,
    #3bc9ab,
    #dfab0f,
    #7e9799,
    #c9643b,
    #c11771,
    #c93b59,
    #3b59c9
  );
  background-size: 300%;
  background-position: -100%;
  background-clip: text;
  -webkit-background-clip: text;
  color: transparent;
  animation: linearGradient 10s infinite alternate-reverse;
}

@-webkit-keyframes linearGradient {
  to {
    background-position: 100%;
  }
}

@keyframes linearGradient {
  to {
    background-position: 100%;
  }
}

.home-nickname:hover {
  -webkit-animation: none;
          animation: none;
  background-size: 200%;
}

.home-container-img {
  width: 100%;
}

.home-img {
  width: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}

.home-left-container-welcome {
  height: 100%;
  width: 100%;
  -webkit-box-pack: inherit;
      -ms-flex-pack: inherit;
          justify-content: inherit;
}

.home-container {
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 50px 0 10px 0;
}

.git-link {
  width: 28px;
  height: 28px;
  -o-object-fit: contain;
     object-fit: contain;
}

.git-link:hover {
  opacity: 0.7;
  transform: scale(0.85);
  -webkit-transform: scale(0.85);
  -moz-transform: scale(0.85);
  -o-transform: scale(0.85);
  -ms-transform: scale(0.85);
  transition: 0.5s;
  -webkit-transition: 0.5s;
  -moz-transition: 0.5s;
  -o-transition: 0.5s;
  -ms-transition: 0.5s;
}

.home-left-container-links {
  padding: 0 47px;
  column-gap: 5px;
  -webkit-column-gap: 5px;
  -moz-column-gap: 5px;
  -o-column-gap: 5px;
  -ms-column-gap: 5px;
}

.logo-title {
  font-family: "Reckoner";
  color: rgb(112, 110, 110);
  font-size: 28px;
  opacity: 0.9;
}

.logo-title:hover {
  background: -webkit-gradient(
    linear,
    left top, right top,
    from(#78418c),
    color-stop(#3bc9ab),
    color-stop(#dfab0f),
    color-stop(#7e9799),
    color-stop(#c9643b),
    color-stop(#c11771),
    color-stop(#c93b59),
    to(#3b59c9)
  );
  background: -o-linear-gradient(
    left,
    #78418c,
    #3bc9ab,
    #dfab0f,
    #7e9799,
    #c9643b,
    #c11771,
    #c93b59,
    #3b59c9
  );
  background: linear-gradient(
    to right,
    #78418c,
    #3bc9ab,
    #dfab0f,
    #7e9799,
    #c9643b,
    #c11771,
    #c93b59,
    #3b59c9
  );
  background-size: 300%;
  background-position: -100%;
  background-clip: text;
  -webkit-background-clip: text;
  color: transparent;
  animation: linearGradient 5s infinite alternate-reverse;
}

.logo-anchor {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  text-decoration: none;
}

.home {
  column-gap: 0;
  -webkit-column-gap: 0;
  -moz-column-gap: 0;
  -o-column-gap: 0;
  -ms-column-gap: 0;
}

.btnTop {
  display: none;
  position: fixed;
  bottom: 30px;
  right: 30px;
  z-index: 3;
  font-size: 18px;
  border: none;
  outline: none;
  background-color: #2f3239;
  color: #ffffff;
  cursor: pointer;
  padding: 15px 12px 15px 15px;
  border-radius: 5px;
  font-family: "Kanyon-Light";
  letter-spacing: 0.1em;
}

.btnTop:hover {
  background-color: #ff4e00;
}

.code-title {
  font-size: 50px;
}

.code-left {
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
}

.code-text {
  font-size: var(--text-section-description);
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-weight: 500;
}

.symbol-text {
  font-size: 46px;
}

.left-postition-text-symbol:hover .blue,
.title-base:hover .green,
.title-base:hover .red,
.title-base:hover .purple,
.title-base:hover .yellow,
.title-base:hover .lime,
.title-base:hover .logo-color {
  color: #ff4e00;
}

.center-code {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.title-base {
  font-size: var(--text-title);
  font-weight: 600;
}

.blue {
  color: #0e819b;
  font-size: 20px;
}

.green {
  color: rgb(126, 176, 63);
}

.red {
  color: #ed1c24;
}

.purple {
  color: #873e95;
}

.yellow {
  color: rgb(216, 202, 92);
}

.lime {
  color: rgb(145, 192, 116);
}

.logo-color {
  color: rgb(57, 52, 125);
}

.links-text {
  font-size: 16px;
  color: #ffffff;
}

.link-git {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  column-gap: 10px;
  -webkit-column-gap: 10px;
  -moz-column-gap: 10px;
  -o-column-gap: 10px;
  -ms-column-gap: 10px;
  text-decoration: none;
  color: #ffffff;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  font-family: "Reckoner";
}

.title-source {
  color: #2f3239;
}

.link-git:hover,
.source-block:hover .title-source {
  color: #2f3239;
  opacity: 1;
}

.source-block:hover .over-icon {
  opacity: 0.7;
}

.portfolio-item:nth-child(2n) .source-block:hover .title-source {
  color: #ffffff;
  opacity: 0.7;
}

.portfolio-item:nth-child(2n) .git-icon {
  -webkit-filter: invert(100%) sepia(92%) saturate(0%) hue-rotate(246deg)
    brightness(106%) contrast(107%);
          filter: invert(100%) sepia(92%) saturate(0%) hue-rotate(246deg)
    brightness(106%) contrast(107%);
}

.languages-switch {
  width: 47px;
  height: 28px;
  -o-object-fit: cover;
     object-fit: cover;
  cursor: pointer;
  border: 1px solid rgba(47, 50, 57, 0.2);
}

.languages-switch:hover {
  transform: scale(0.85);
  -webkit-transform: scale(0.85);
  -moz-transform: scale(0.85);
  -o-transform: scale(0.85);
  -ms-transform: scale(0.85);
  transition: 0.5s;
  -webkit-transition: 0.5s;
  -moz-transition: 0.5s;
  -o-transition: 0.5s;
  -ms-transition: 0.5s;
}

.left-postition-text-symbol {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 7px;
  -webkit-gap: 7px;
  -moz-gap: 7px;
  -o-gap: 7px;
  -ms-gap: 7px;
}

.code .left-postition-text-symbol {
  gap: 3px;
  -webkit-gap: 3px;
  -moz-gap: 3px;
  -o-gap: 3px;
  -ms-gap: 3px;
}

.main-text {
  font-size: 13px;
}

.text-anchor::before {
  content: "{";
  padding-right: 3px;
}

.text-anchor::after {
  content: "}";
  padding-left: 3px;
}

.nav-item:hover .text-anchor::before,
.nav-item:hover .text-anchor::after {
  -webkit-transition: 0.7s;
  -o-transition: 0.7s;
  transition: 0.7s;
}

.nav-item:nth-child(2):hover .text-anchor::before,
.nav-item:nth-child(2):hover .text-anchor::after {
  color: #c9643b;
}

.nav-item:first-child:hover .text-anchor::before,
.nav-item:first-child:hover .text-anchor::after {
  color: #c93b59;
}

.nav-item:nth-child(3):hover .text-anchor::before,
.nav-item:nth-child(3):hover .text-anchor::after {
  color: #7e9799;
}

.nav-item:nth-child(4):hover .text-anchor::before,
.nav-item:nth-child(4):hover .text-anchor::after {
  color: #3b59c9;
}

.nav-item:nth-child(5):hover .text-anchor::before,
.nav-item:nth-child(5):hover .text-anchor::after {
  color: #c11771;
}

.nav-item:nth-child(6):hover .text-anchor::before,
.nav-item:nth-child(6):hover .text-anchor::after {
  color: #3bc9ab;
}

.nav-item:nth-child(7):hover .text-anchor::before,
.nav-item:nth-child(7):hover .text-anchor::after {
  color: #dfab0f;
}

.nav-item:last-child:hover .text-anchor::before,
.nav-item:last-child:hover .text-anchor::after {
  color: #ff971a;
}

.shadow {
  position: fixed;
  left: -100vw;
  top: 0;
  z-index: 2;
  width: 100vw;
  height: 100vh;
  background: rgba(41, 41, 41, 0.6);
  opacity: 0;
  transition: opacity 2s ease;
  -webkit-transition: opacity 2s ease;
  -moz-transition: opacity 2s ease;
  -o-transition: opacity 2s ease;
  -ms-transition: opacity 2s ease;
}

.shadow-open {
  opacity: 1;
  left: 0;
}

.burger-menu {
  display: none;
  width: 35px;
  height: 30px;
  margin: 15px 10px;
  position: absolute;
  cursor: pointer;
  z-index: 100;
  right: 20%;
  border: 1px solid #ffffff;
  padding: 5px;
  border-radius: 2px;
}

.burger-line {
  background-color: #fff;
  border-radius: 2px;
  -webkit-transition: 0.3s cubic-bezier(0.8, 0.5, 0.2, 1.4);
  -o-transition: 0.3s cubic-bezier(0.8, 0.5, 0.2, 1.4);
  transition: 0.3s cubic-bezier(0.8, 0.5, 0.2, 1.4);
  width: 100%;
  height: 3px;
}

.rotate {
  transform: rotate(90deg);
  -webkit-transform: rotate(90deg);
  -moz-transform: rotate(90deg);
  -o-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
}

.overflow {
  overflow: hidden;
}

.links-git {
  gap: 10px;
  -webkit-gap: 10px;
  -moz-gap: 10px;
  -o-gap: 10px;
  -ms-gap: 10px;
}

.title-source {
  font-family: "Kanyon-Light";
  font-size: calc(var(--text-em) * 1.6);
  opacity: 0;
}

@media screen and (max-width: 1010px) {
  .header-container {
    width: auto;
    padding: 0;
  }

  .header {
    display: block;
    padding-left: 30px;
  }

  .nav {
    z-index: 1;
  }

  .nav-list {
    width: 320px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    position: absolute;
    top: 60px;
    right: -100%;
    transform: scaleX(0);
    -moz-transform: scaleX(0);
    -webkit-transform: scaleX(0);
    -o-transform: scaleX(0);
    -ms-transform: scaleX(0);
    -webkit-transform-origin: right 0;
        -ms-transform-origin: right 0;
            transform-origin: right 0;
  }

  .open {
    -webkit-transform: scaleX(1);
        -ms-transform: scaleX(1);
            transform: scaleX(1);
  }

  .nav-item {
    width: 100%;
    padding: 0;
    height: calc(10vh);
    font-family: "Reckoner";
    position: relative;
  }

  .nav-item:hover {
    height: calc(10vh);
  }

  .nav-link::after {
    position: absolute;
    content: "";
    top: 50%;
    left: 0;
    width: 5px;
    height: 0;
    opacity: 0;
    background-color: rgba(0, 0, 0, 0.5);
    z-index: 8;
    -webkit-transition: all 200ms linear;
    -o-transition: all 200ms linear;
    transition: all 200ms linear;
  }

  .nav-link:hover::after {
    height: 100%;
    opacity: 1;
    top: 0;
  }

  .nav-item:last-child {
    border-bottom-left-radius: 4px;
  }

  .nav-link {
    padding: 0;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }

  .text-anchor {
    font-size: 24px;
    letter-spacing: 0.05em;
  }

  .logo {
    position: relative;
    left: 10%;
  }

  .burger-menu {
    display: inline-block;
  }

  .lines-block {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -ms-flex-pack: distribute;
        justify-content: space-around;
    width: 100%;
    height: 100%;
  }

  .right-container {
    width: 100%;
    padding: 0 80px;
  }

  .left-container {
    width: auto;
  }

  .home-container {
    width: 100%;
    padding: 20px 0 0;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }

  .home-container-img {
    padding: 0 2rem;
  }

  .section {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    width: 100%;
    padding: 40px 0;
    gap: 20px 5px;
    -webkit-gap: 20px 5px;
    -moz-gap: 20px 5px;
    -o-gap: 20px 5px;
    -ms-gap: 20px 5px;
  }

  .home {
    width: 100%;
  }

  .home-left-container-welcome {
    width: 100%;
    padding-left: 80px;
  }

  .home-left-container-links {
    padding: 20px 0 0;
  }

  .languages {
    margin-bottom: 40px;
  }

  .porfolio-list {
    gap: 10px 3px;
    -webkit-gap: 10px 3px;
    -moz-gap: 10px 3px;
    -o-gap: 10px 3px;
    -ms-gap: 10px 3px;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }

  .portfolio-info {
    text-align: center;
  }

  .portfolio-item:focus .overlay {
    opacity: 1;
    transform: translate(0px, 0px) rotate(0deg);
    -moz-transform: translate(0px, 0px) rotate(0deg);
    -webkit-transform: translate(0px, 0px) rotate(0deg);
    -o-transform: translate(0px, 0px) rotate(0deg);
    -ms-transform: translate(0px, 0px) rotate(0deg);
  }

  .portfolio-item {
    max-width: 335.9px;
    max-height: 180.8px;
  }

  .main-container,
  .footer-container,
  .home-container {
    padding-left: 0;
  }
}

@media screen and (max-width: 619.98px) {
  .languages-switch {
    width: 37px;
    height: auto;
  }

  .git-link {
    width: 25px;
    height: 25px;
  }

  .right-container {
    padding: 0 50px;
  }

  .home-left-container-welcome {
    padding-left: 60px;
  }

  .section:nth-child(1) {
    padding: 10px 0 40px;
  }

  .title-base {
    font-size: var(--text-320-title);
  }
}

@media screen and (max-width: 485px) {
  .home-left-container-welcome {
    padding-left: 30px;
    height: auto;
  }

  .right-container {
    padding: 0 20px;
  }

  .home-container-img {
    padding: 0;
  }

  .footer-container {
    font-size: var(--text-em);
  }

  .education-title-img {
    max-width: 90%;
    height: auto;
  }

  .select-all {
    width: 60%;
  }

  .overlay {
    padding: 10px;
  }
}

@media screen and (max-width: 320px) {
  .section,
  .footer,
  .header {
    min-width: 320px;
  }

  .portfolio-item {
    min-width: 280px;
  }
}

@media screen and (max-width: 409px) {
  .progress-right {
    -ms-flex-pack: distribute;
        justify-content: space-around;
  }

  .logo {
    left: 0;
  }

  .burger-menu {
    margin: 15px 0 15px 10px;
  }
}