.main__container{
  max-width: 1440px;
  padding: 0;
  margin: 0 auto;
}

body{
  font-family: 'Faustina', sans-serif;
  font-weight: 400;
  font-size: calc( (100vw - 320px)/(1440 - 320) * (16 - 12) + 12px);
  line-height: calc( (100vw - 320px)/(1440 - 320) * (22 - 12) + 12px);
  letter-spacing: 0.01em;
  color: #5A5A5A;
}

.title, .subtitle{
  font-weight: 400;
  font-size: 17px;
  line-height: 24px;
  letter-spacing: 0.05em;
  text-decoration: underline;
  text-transform: uppercase;
  color: #202020;
}
.title{
  margin-bottom: 45px;
}

.date{
  font-size: 17px;
  line-height: 24px;
  letter-spacing: 0.01em;
  max-width: 120px;
  margin-right: 50px;
}
.subtitle{
  max-width: 475px;
  text-decoration: none;
  margin-bottom: 10px;
}
.text{
  font-size: 16px;
  max-width: 420px;
}

/*Profile*/
.profile__top{
  display: flex;
  justify-content: space-between;
}
.profile__top-left{
  background-color: #202020;
  width: 50%;
  padding-top: 50px;
  margin-top: 0;
  position: relative;
}
.profile__top-right{
  width: 50%;
}
.profile__descr{
  transform: rotate(-90deg);
  position: absolute;
  top: calc( (100vw - 320px)/(1440 - 320) * (50 - 5) + 5px);
  bottom: 0;
  right: calc( (100vw - 320px)/(1440 - 320) * (-200 - (-50)) + (-50px));
}
.profile__name{
  font-size: calc( (100vw - 320px)/(1440 - 320) * (75 - 16) + 16px);
  letter-spacing: 0.01em;
  color: #EDEDED;
  margin-bottom: calc( (100vw - 320px)/(1440 - 320) * (45 - 10) + 10px);
}
.profile__job{
  font-size: calc( (100vw - 320px)/(1440 - 320) * (29 - 10) + 10px);
  line-height: calc( (100vw - 320px)/(1440 - 320) * (45 - 12) + 12px);
  font-weight: 400;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: rgba(237, 237, 237, 0.8);
  width: calc( (100vw - 320px)/(1440 - 320) * (550 - 160) + 160px);
}
.profile__ava{
  position: relative;
  width: calc( (100vw - 320px)/(1440 - 320) * (800 - 175) + 175px);
  min-width: 0;
  min-height: 0;
  left: 82%;
}
.profile__bottom{
  display: flex;
  min-height: 200px;
}
.profile__bottom-left{
  background-color: #202020;
  width: 50%;
  padding-top: 55px;
}
.profile__contact{
  background-color: #404040;
  max-width: calc( (100vw - 320px)/(1440 - 320) * (385 - 150) + 150px);
  margin-left: auto;
  padding-top: calc( (100vw - 320px)/(1440 - 320) * (25 - 10) + 10px);
  padding-bottom: calc( (100vw - 320px)/(1440 - 320) * (25 - 10) + 10px);
  padding-left: calc( (100vw - 320px)/(1440 - 320) * (25 - 5) + 5px);
  padding-right: calc( (100vw - 320px)/(1440 - 320) * (25 - 5) + 5px);
}
.profile__contact-item{
  display: flex;
}
.profile__contact-item + .profile__contact-item{
  margin-top: 10px;
}
.profile__icon{
  width: calc( (100vw - 320px)/(1440 - 320) * (25 - 15) + 15px);
  height: calc( (100vw - 320px)/(1440 - 320) * (25 - 15) + 15px);
  margin-right: calc( (100vw - 320px)/(1920 - 320) * (15 - 5) + 5px);
}
.profile__link{
  font-weight: 400;
  font-size: calc( (100vw - 320px)/(1920 - 320) * (20 - 10) + 10px);
  line-height: 20px;
  letter-spacing: 0.05em;
  color: rgba(237, 237, 237, 0.8);
}
.profile__bottom-right{
  width: 50%;
  padding: calc( (100vw - 320px)/(1440 - 320) * (20 - 5) + 5px);
}
.profile__inf{
  font-weight: 600;
  font-size: calc( (100vw - 320px)/(1440 - 320) * (18 - 10) + 10px);
  line-height: calc( (100vw - 320px)/(1440 - 320) * (22 - 12) + 12px);
  margin-bottom: 10px;
  text-align: center;
}
.profile__text{
  max-width: 700px;
  font-size: calc( (100vw - 320px)/(1440 - 320) * (16 - 10) + 10px);
  line-height: calc( (100vw - 320px)/(1440 - 320) * (22 - 12) + 12px);
}
.profile__text + .profile__text{
  margin-top: 5px;
}

/*Advantages*/
.advantages{
  padding: 50px 0;
  position: relative;
}
.container{
  max-width: 1380px;
  padding: 0 20px;
  margin: 0 auto;
}
.advantages__inner{
  display: flex;
  justify-content: space-around;
  position: relative;
}
.advantages__inner::after{
  position: absolute;
  content: '';
  display: inline-block;
  width: 600px;
  height: 10px;
  background-color: #C4C4C4;
  margin-left: auto;
  margin-right: auto;
  left: 0;
  bottom: -50px;
  right: 0;
}
.advantages__items::after{
  position: absolute;
  content: "";
  width: 1px;
  height: 640px;
  background-color: #C4C4C4;
  top: 0px;
  left: 165px;
}
.advantages__items-skills{
  position: relative;
}
.advantages__items-skills::before{
  position: absolute;
  content: "";
  width: 1px;
  height: 640px;
  background-color: #C4C4C4;
  top: 0px;
  left: -85px;
}
.advantages__items-skills::after{
  position: absolute;
  content: "";
  width: 1px;
  height: 640px;
  background-color: #C4C4C4;
  top: 0px;
  left: 470px;
}
.advantages__title{
  margin-left: 130px;
}
.advantages__education, .advantages__practice{
  display: flex;
  margin-bottom: 35px;
}
.advantages__practice-text{
  margin-bottom: 5px;
}
.advantages__skills{
  margin-bottom: 15px;
}
.advantages__text{
  font-size: 17px;
  line-height: 24px;
  color: #202020;
}
.advantages__list{
  margin-left: 40px;
}
.advantales__skills-list{
  margin-left: 20px;
}
span{
  text-transform:  uppercase;
  color: #202020;
}
.advantages__skills-mark{
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 280px;
}
.dots__first{
  margin-left: 60px;
}
.dots__second{
  margin-left: 80px;
}
.dots__third{
  margin-left: 50px;
}
.dots__fourth{
  margin-left: 30px;
}
.dots__list{
  display: flex;
}

.dots__button{
  background-color: #5A5A5A;
  width: 15px;
  height: 15px;
  border-radius: 50%;
  padding: 0;
  border: none;
}
.dots__button-white{
  background-color: #FFF;
  width: 15px;
  height: 15px;
  border-radius: 50%;
  border: 2px solid #5A5A5A;
  padding: 0;
}
.dots__button + .dots__button{
  margin-left: 15px;
}

/*Portfolio*/
.portfolio{
  position: relative;
}
.portfolio__header{
  background-color: #202020;
  height: 130px;
}
.portfolio__header::before{
  position: absolute;
  content: '';
  display: inline-block;
  width: 600px;
  height: 10px;
  background-color: #818181;
  margin-left: auto;
  margin-right: auto;
  left: 0;
  right: 0;
}
.portfolio__title{
  font-weight: 400;
  font-size: 40px;
  line-height: 130px;
  text-transform: uppercase;
  text-align: center;
  letter-spacing: 0.05em;
  color: #FFFFFF;
}
.portfolio__content{
  padding: 0 50px 40px 50px;
  background-color: #404040;
}
.portfolio__items{
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  margin-left: 40px;
}
.portfolio__item{
  max-width: 350px;
  margin: 40px 40px 0 0;
}
.portfolio__img{
  max-width: 350px;
  height: 175px;
  margin-bottom: 20px;
  transition: all .3s;
}
.portfolio__img:hover{
  transform: scale(1.01);
}
.portfolio__name{
  font-family: 'Noto Sans', sans-serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 20px;
  width: 350px;
  letter-spacing: 0.05em;
  color: #FFFFFF;
  padding-bottom: 5px;
  margin-bottom: 10px;
  border-bottom: 1px solid #FFF;
}
.portfolio__text{
  font-size: 14px;
  line-height: 16px;
  color: #959595;
}
.portfolio__footer{
  background-color: #202020;
  height: 100px;
}
.portfolio__footer-link{
  display: inline-block;
  margin-top: 50px;
  margin-left: 50%;
}

/*Адаптив*/
@media(min-width: 1440px){
  body{
    font-family: 'Faustina', sans-serif;
    font-weight: 400;
    font-size: 16px;
    line-height: 22px;
  }
  .profile__descr{
    top: 50px;
    right: -200px;
  }
  .profile__name{
    font-size: 75px;
    margin-bottom: 45px;
  }
  .profile__job{
    font-size: 29px;
    line-height: 45px;
    width: 550px;
  }
  .profile__ava{
    width: 800px;
  }
  .profile__contact{
    max-width: 385px;
   padding: 25px;
  }
  .profile__icon{
    width: 25px;
    height: 25px;
    margin-right: 15px;
  }
  .profile__link{
    font-size: 20px;
  }
  .profile__bottom-right{
    padding: 20px;
  }
  .profile__inf{
    font-size: 18px;
    line-height: 22px;
  }
  .profile__text{
    max-width: 700px;
    font-size: 16px;
    line-height: 20px;
  }
}

@media(max-width: 1340px){
  .advantages__items::after{
   left: 155px;
  }
  advantages__items-skills::before{
    left: -65px;
  }
}
@media(max-width: 1295px){
  .advantages__items::after{
   left: 140px;
  }
}

@media(max-width: 1240px){
  .title, .subtitle, .date, .advantages__text {
    font-size: 16px;
    line-height: 22px;
  }
  .title{
    margin-bottom: 20px;
  }
  .date{
    margin-right: 25px;
  }
  .advantages__inner{
    display: block;
    text-align: center;
  }
  .subtitle{
    margin: 0 auto;
    margin-bottom: 5px;
  }
  .text{
    margin: 0 auto;
    max-width: 470px;
    font-size: 14px;
    line-height: 20px;
  }
  .text__item{
    max-width: 275px;
  }
  .advantages {
    padding: 35px 0;
  }
  .advantages__inner::after {
    bottom: -50px;
  }
  .advantages__skills-text{
    max-width: 285px;
  }
  .advantages__title{
    margin-left: 0;
  }
  .advantages__items::after{
   display: none;
  }
  .advantages__items-skills::before{
    display: none;
  }
  .advantages__education-descr, .advantages__practice-descr{
    text-align: left;
    width: 500px;
  }
  .advantages__education, .advantages__practice {
   justify-content: center;
  }
  .dots__button, .dots__button-white{
    width: 13px;
    height: 13px;
  }
  .dots__first{
    margin-left: 35px;
  }
  .dots__second {
    margin-left: 50px;
  }
  .dots__third {
    margin-left: 25px;
  }
  .dots__fourth {
    margin-left: 5px;
  }
  .advantages__skills-mark{
    margin: 0 auto;
    width: 250px;
  }
  ul{
    margin-left: 20px;
    text-align: left;
  }
  .advantages__list{
    margin-left: 55px;
  }
  .advantages__skills{
    margin-left: -110px;
  }
  .advantales__skills-list{
    text-align: left;
    margin-left: 115px;
  }
  .advantages__text{
    margin: 0 auto;
    width: 330px;
  }
  .portfolio__title {
    font-size: 28px;
    line-height: 65px;
  }
  .portfolio__header, .portfolio__footer {
    height: 60px;
  }
  .portfolio__content{
    padding: 0 0 30px 0;
  }
  .portfolio__items {
    margin-left: 30px;
}
  .portfolio__item{
    max-width: 300px;
    margin: 30px 30px 0 0;
  }
  .portfolio__img{
    max-width: 300px;
    height: 150px;
    margin-bottom: 15px;
  }
  .portfolio__name{
    font-size: 14px;
    line-height: 16px;
    width: 300px;
  }
  .portfolio__text{
    font-size: 12px;
  }
  .portfolio__footer-link {
    margin-top: 30px;
  }
}
@media(max-width: 980px){
  .advantages__items::after{
    display: none;
  }
  .dots__button, .dots__button-white{
    width: 11px;
    height: 11px;
  }
  .dots__button + .dots__button{
    margin-left: 10px;
  }
  .portfolio__header::before, .advantages__inner::after{
    width: 450px;
  }
  .portfolio__title {
    font-size: 24px;
  }
  .portfolio__item{
    max-width: 250px;
  }
  .portfolio__header::before, .advantages__inner::after{
    height: 10px;
  }
  .portfolio__img{
    max-width: 250px;
    height: 125px;
  }
  .portfolio__name {
    max-width: 250px;
  }
  .portfolio__text{
    font-size: 12px;
  }
}
@media(max-width: 680px){
  .title, .subtitle, .date, .advantages__text {
    font-size: 14px;
    line-height: 20px;
  }
  .title{
    margin-bottom: 20px;
  }
  .text{
    font-size: 12px;
    line-height: 16px;
  }
  .portfolio__header::before, .advantages__inner::after{
    width: 400px;
    height: 7px;
  }
  .advantages__education, .advantages__practice {
    margin-bottom: 25px;
  }
  .advantages__skills-text {
    max-width: 300px;
  }
  .dots__first{
    margin-left: -2px;
  }
  .dots__second {
    margin-left: 15px;
  }
  .dots__third {
    margin-left: -7px;
  }
  .dots__fourth {
    margin-left: -23px;
  }
  .advantages__skills {
    margin-left: -160px;
  }
  .advantages__skills-mark {
    width: 220px;
  }
  .advantages__skills-text {
    max-width: 275px;
  }
  ul {
    margin-left: 45px;
  }
  .advantages__list {
    margin-left: 90px;
  }
  .text__item {
    max-width: 275px;
  }
  .advantales__skills-list {
    margin-left: 149px;
  }
  .portfolio__item {
    margin: 20px 30px 0 0;
  }
  .portfolio__img {
    margin-bottom: 10px;
  }
}
@media (max-width: 600px){
  .subtitle{
    margin: 0;
    margin-bottom: 5px;
  }
  .advantages {
    padding: 40px 0;
  }
  .portfolio__header::before, .advantages__inner::after{
    width: 300px;
  }
  .advantages__inner::after{
    bottom: -55px;
  }
  .advantages__education-descr, .advantages__practice-descr {
    text-align: left;
    width: 650px;
  }
  .advantages__skills {
    margin-left: 0;
    text-align: left;
  }
  ul{
    margin-left: 0;
  }
  .text__item {
    max-width: 400px;
    margin: 0;
  }
  .advantages__skills-text {
    max-width: 350px;
    margin: 0;
  }
  .advantages__list {
    margin-left: 40px;
  }
  .advantages__skills-mark {
    width: 300px;
    margin: 0;
  }
  .advantales__skills-list {
    margin-left: 0;
  }
  .advantages__skills-subtitle, .advantages__text{
    margin: 0;
  }
  .advantages__text{
    margin-left: 20px;
    width: 230px;
  }
  .profile__inf{
    margin-left: 0;
  }
}
@media(max-width: 390px){
  .title, .subtitle, .date, .advantages__text {
    font-size: 12px;
    line-height: 14px;
  }

  .advantages__skills-mark{
    width: 200px;
  }
  .dots__first {
    margin-left: 25px;
  }
  .dots__second{
    margin-left: 40px;
  }
  .dots__third {
    margin-left: 23px;
  }
  .dots__fourth {
    margin-left: 10px;
  }
  .dots__button, .dots__button-white {
    width: 10px;
    height: 10px;
  }
  .dots__button + .dots__button{
    margin-left: 7px;
  }
  .portfolio__header::before, .advantages__inner::after{
    width: 235px;
  }
  .portfolio__header, .portfolio__footer {
    height: 50px;
  }
  .portfolio__title {
    font-size: 18px;
    line-height: 55px;
  }
  .portfolio__items{
    margin-left: 0;
  }
  .portfolio__item{
    margin-right: 0;
  }
  .portfolio__name {
    max-width: 230px;
  }
  .portfolio__img{
    margin-bottom: 10px;
  }
  .portfolio__footer{
    height: 55px;
  }
  .portfolio__footer-link {
    margin-top: 20px;
  }
}
