* {
  box-sizing: border-box;
}

html,
body {
  font-family: "Open Sans", sans-serif;
  font-size: 18px;
  font-weight: 400;
}
h1,
h2,
h3,
h4 {
  margin: 0;
}
p {
  margin: 0;
}
.container {
  max-width: 970px;
  margin: 0 auto;
}
.section {
  padding: 100px 0;
}
.title {
  text-align: center;
  font-weight: 700;
  font-size: 34px;
}
/* ------- HEADER -------- */
.header {
  padding: 28px 0;
  border-bottom: 1px solid #828282;
}

.menu {
  max-width: 496px;
  margin: 0 auto;
  list-style: none;
  padding-left: 0;
}
.menu__item {
  display: inline-block;
  width: calc(20% - 4px);
  text-align: center;
}
.menu__link {
  text-decoration: none;
  font-size: 18px;
  color: #828282;
}
.menu__link:hover {
  color: #000;
}
/* ---- HERO -------- */
.hero {
  display: flex;
  flex-direction: column;
  align-items: start;
  justify-content: space-between;
}
.hero__wrapper {
  margin: 0;
  padding: 0;
}
.hero__title {
  font-weight: 700;
  font-size: 48px;
  padding: 12px 0 50px;
}
.hero__banner {
  display: block;
  width: 970px;
  height: 387px;
  background-size: cover;
}
/* -------- ABOUT ME --------- */
.about-me {
  display: flex;
  flex-direction: column;
  align-items: center;
  background-color: #f6f6f6;
}
.about-me__title {
  margin-bottom: 50px;
}
.about-me__description {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding-inline: 245px;
}
.about-me__text {
  text-align: center;
}
.about-me__text:not(:last-child) {
  padding-bottom: 30px;
}
/* ------- SKILLS ------- */
.skills {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.skills__title {
  margin-bottom: 20px;
}
.skills__subtitle {
  font-weight: 400;
  font-size: 18px;
  text-align: center;
  margin-bottom: 50px;
}
.star {
  display: block;
  width: 26px;
  height: 26px;
  background: url(../accets/img/star.svg) no-repeat;
}
.skills__wrapper {
  display: flex;
  justify-content: space-between;
  align-items: center;
  column-gap: 97px;
}
.skills__item {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
}
.skills__img {
  margin-bottom: 25px;
}
.skills__desc {
  width: 92px;
  font-weight: 700;
  font-size: 14px;
  letter-spacing: 0.02em;
  text-align: center;
  color: #828282;
  margin-bottom: 60px;
}
.skills__raiting {
  display: flex;
  gap: 10px;
}
.star-accent {
  background: url(../accets/img/star-accent.svg) no-repeat;
}
/* ----- PORTFOLIO */
.portfolio {
  background-color: #f6f6f6;
}
.portfolio__title {
  margin-bottom: 50px;
  text-align: center;
}
.portfolio__item {
  display: block;
  text-align: center;
  text-decoration: none;
}
.portfolio__item:not(:last-child) {
  margin-bottom: 70px;
}
.portfolio__img {
  margin-bottom: 40px;
}
.portfolio__descr {
  font-weight: 400;
  font-size: 18px;
  text-decoration: underline;
  color: #000;
  padding-inline: 357px;
}
/* --- FOOTER ------- */
.contacts {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.contacts__title {
  margin-bottom: 20px;
}
.contacts__subtitle {
  font-weight: 400;
  font-size: 18px;
  text-align: center;
  margin-bottom: 60px;
  padding-inline: 345px;
}
.button {
  padding: 0 16px;
  width: 180px;
  height: 44px;
  font-weight: 700;
  font-size: 18px;
  letter-spacing: 0.1em;
  background-color: #000;
  color: #fff;
  border-radius: 22px;
  border: none;
  margin-bottom: 30px;
  cursor: pointer;
}
.soc1als {
  display: flex;
  justify-content: space-between;
  gap: 50px;
  padding-left: 0;
  margin-bottom: 60px;
}
.soc1als__item {
  list-style: none;
}
.contacts__descr {
  font-weight: 400;
  font-size: 14px;
  text-align: center;
  color: #828282;
  padding-inline: 385px;
}
