html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}

body {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
  content: "";
  content: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

@media (max-width: 1200px) {
  .cards {
    grid-template-columns: 1fr 1fr !important;
    grid-template-rows: 1fr 1fr 1fr 1fr 1fr !important;
  }
  .cards .cards__container {
    max-width: 354px !important;
  }
  .header__container--links {
    margin-right: 0 !important;
  }
  .header__container--social {
    flex-direction: column;
  }
  .header__container--social .header__container--social--content .header__social--gmail {
    margin-right: 0 !important;
  }
  .footer {
    background-color: #2F303A;
    margin-top: 100px;
  }
  .footer .footer__container {
    max-width: 603px;
    display: flex;
    flex-direction: column;
  }
  .footer .footer__adress {
    font-family: Roboto;
    text-decoration: none;
    color: white;
    font-size: 14px;
  }
  .footer .footer__gmail {
    font-family: Roboto;
    text-decoration: none;
    color: gray;
    font-size: 14px;
  }
  .footer .footer__container--1and2 {
    display: flex;
    justify-content: space-between;
    text-align: center;
  }
  .footer .footer__phone {
    font-family: Roboto;
    text-decoration: none;
    color: gray;
  }
  .footer .footer__container--second--title {
    font-family: Roboto;
    color: white;
    margin-bottom: 20px;
    font-size: 14px;
    display: flex;
    justify-content: center;
  }
  .footer .footer__container--therd--title {
    font-family: Roboto;
    color: white;
    display: flex;
    justify-content: center;
    font-size: 14px;
  }
  .footer .footer__container--therd--input {
    width: 450px;
    display: flex;
    justify-content: center;
    flex-direction: row;
  }
  .footer ::-moz-placeholder {
    font-family: Roboto;
    padding: 20px;
  }
  .footer ::placeholder {
    font-family: Roboto;
    padding: 20px;
  }
  .footer .footer__container--therd--button {
    margin-top: 20px;
  }
  .footer .footer__container--therd {
    display: flex;
    align-items: center;
    flex-direction: column;
    padding-top: 60px;
  }
  .footer .footer__container--therd--content {
    display: flex;
    align-items: center;
    flex-direction: column;
  }
}
@media (max-width: 725px) {
  .header__container--links {
    margin-right: 0 !important;
  }
  .header__container--social {
    flex-direction: column;
  }
  .header__container--social .header__container--social--content .header__social--gmail {
    margin-right: 0 !important;
  }
  .cards {
    grid-template-columns: 1fr !important;
    grid-template-rows: 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr !important;
  }
  .cards .cards__container {
    max-width: 450px !important;
  }
  .cards .cards__container .cards__img--1 {
    background-image: url(../img-page2/adapive-img/portfolio-adaptive-1.png) !important;
  }
  .cards .cards__container .cards__img--2 {
    background-image: url(../img-page2/adapive-img/portfolio-adaptive-2.png) !important;
  }
  .cards .cards__container .cards__img--3 {
    background-image: url(../img-page2/adapive-img/portfolio-adaptive-3.png) !important;
  }
  .cards .cards__container .cards__img--4 {
    background-image: url(../img-page2/adapive-img/portfolio-adaptive-4.png) !important;
  }
  .cards .cards__container .cards__img--5 {
    background-image: url(../img-page2/adapive-img/portfolio-adaptive-5.png) !important;
  }
  .cards .cards__container .cards__img--6 {
    background-image: url(../img-page2/adapive-img/portfolio-adaptive-6.png) !important;
  }
  .cards .cards__container .cards__img--7 {
    background-image: url(../img-page2/adapive-img/portfolio-adaptive-7.png) !important;
  }
  .cards .cards__container .cards__img--8 {
    background-image: url(../img-page2/adapive-img/portfolio-adaptive-8.png) !important;
  }
  .cards .cards__container .cards__img--9 {
    background-image: url(../img-page2/adapive-img/portfolio-adaptive-9.png) !important;
  }
  footer .footer__container {
    display: flex;
    flex-direction: column;
    max-width: 450px;
  }
  footer .footer__container--1and2 {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin: 0 auto;
  }
  footer .footer__container--second {
    padding-top: 60px;
  }
}
@media (max-width: 580px) {
  .portfolio {
    max-width: 326px !important;
    flex-wrap: wrap;
    justify-content: flex-start !important;
    padding-left: 15px;
    gap: 15px;
    margin: 0 !important;
    padding-top: 60px;
  }
}
header {
  padding: 0 20px;
}
header .header__container {
  width: 100%;
  max-width: 1170px;
  margin: 0 auto;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
}
header .header__container .header__logo {
  padding: 24px 0;
}
header .header__container .header__container--links {
  width: 100%;
  max-width: 285px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-right: 200px;
}
header .header__container .header__container--links .header__links {
  font-family: Roboto;
  font-size: 14px;
  font-weight: 500;
  line-height: 16.41px;
  letter-spacing: 0.02em;
  text-align: left;
  color: #212121;
  padding: 24px 0 20px 0;
  border-bottom: 4px solid transparent;
  transition: color 0.3s ease, border-color 0.3s ease;
  text-decoration: none;
}
header .header__container .header__container--links .header__links:hover {
  color: #2196F3;
  border-bottom-color: #2196F3;
  border-radius: 2px;
}
header .header__container .header__container--social {
  display: flex;
}
header .header__container .header__container--social .header__container--social--content .header__social--gmail {
  font-family: Roboto;
  font-size: 14px;
  font-weight: 500;
  line-height: 16.41px;
  letter-spacing: 0.02em;
  text-align: left;
  color: #757575;
  margin-right: 30px;
  text-decoration: none;
}
header .header__container .header__container--social .header__container--social--content .header__social--gmail:hover path {
  color: #2196F3;
  fill: #2196F3;
}
header .header__container .header__container--social .header__container--social--content .header__social--gmail:hover {
  color: #2196F3;
}
header .header__container .header__container--social .header__container--social--content .header__social--gmail .header__social--svg {
  margin-right: 10px;
}
header .header__container .header__container--social .header__container--social--content .header__social--phone {
  font-family: Roboto;
  font-size: 14px;
  font-weight: 500;
  line-height: 16.41px;
  letter-spacing: 0.02em;
  text-align: left;
  color: #757575;
  display: flex;
  align-items: center;
  text-decoration: none;
}
header .header__container .header__container--social .header__container--social--content .header__social--phone:hover path {
  color: #2196F3;
  fill: #2196F3;
}
header .header__container .header__container--social .header__container--social--content .header__social--phone:hover {
  color: #2196F3;
}
header .header__container .header__container--social .header__container--social--content .header__social--phone .header__social--svg {
  margin-right: 10px;
}

.portfolio {
  width: 100%;
  max-width: 575px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  margin-top: 94px;
}
.portfolio .portfolio__link {
  font-family: Roboto;
  font-size: 16px;
  font-weight: 500;
  line-height: 26px;
  letter-spacing: 0.03em;
  text-align: center;
  color: #212121;
  background-color: #F5F4FA;
  padding: 6px 22px;
  border-radius: 4px;
  text-decoration: none;
  transition: background-color 0.3s;
}
.portfolio .portfolio__link:hover {
  background-color: #2196F3;
  color: #fff;
}

.cards {
  width: 100%;
  max-width: 1100px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  margin-top: 32px;
  margin-bottom: 94px;
  gap: 32px;
}
@keyframes showUp {
  0% {
    transform: translateY(100);
  }
  100% {
    transform: translateY(0);
  }
}
.cards .cards__container {
  width: 100%;
  max-width: 370px;
  margin: 0 auto;
}
.cards .cards__container:hover .cards__overlay {
  animation: showUp 1500ms ease-in-out forwards;
}
.cards .cards__container .cards__img--1 {
  position: relative;
  background-image: url(../img-page2/portfolio-1.png);
  background-repeat: no-repeat;
  height: 294px;
  overflow: hidden;
}
.cards .cards__container .cards__img--1 .cards__overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  transform: translateY(100%);
  transition: transform 1500ms ease-in-out;
  background-color: rgba(33, 150, 243, 0.8980392157);
}
.cards .cards__container .cards__img--1 .cards__overlay .cards__overlay--text {
  font-family: Roboto;
  font-size: 18px;
  font-weight: 400;
  line-height: 28px;
  letter-spacing: 0.03em;
  text-align: left;
  color: #ffffff;
  width: 322px;
  padding: 63px 24px;
}
.cards .cards__container .cards__img--2 {
  position: relative;
  background-image: url(../img-page2/portfolio-2.png);
  background-repeat: no-repeat;
  height: 294px;
  overflow: hidden;
}
.cards .cards__container .cards__img--2 .cards__overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  transform: translateY(100%);
  transition: transform 1500ms ease-in-out;
  background-color: rgba(33, 150, 243, 0.8980392157);
}
.cards .cards__container .cards__img--2 .cards__overlay .cards__overlay--text {
  font-family: Roboto;
  font-size: 18px;
  font-weight: 400;
  line-height: 28px;
  letter-spacing: 0.03em;
  text-align: left;
  color: #ffffff;
  width: 322px;
  padding: 63px 24px;
}
.cards .cards__container .cards__img--3 {
  position: relative;
  background-image: url(../img-page2/portfolio-3.png);
  background-repeat: no-repeat;
  height: 294px;
  overflow: hidden;
}
.cards .cards__container .cards__img--3 .cards__overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  transform: translateY(100%);
  transition: transform 1500ms ease-in-out;
  background-color: rgba(33, 150, 243, 0.8980392157);
}
.cards .cards__container .cards__img--3 .cards__overlay .cards__overlay--text {
  font-family: Roboto;
  font-size: 18px;
  font-weight: 400;
  line-height: 28px;
  letter-spacing: 0.03em;
  text-align: left;
  color: #ffffff;
  width: 322px;
  padding: 63px 24px;
}
.cards .cards__container .cards__img--4 {
  position: relative;
  background-image: url(../img-page2/portfolio-4.png);
  background-repeat: no-repeat;
  height: 294px;
  overflow: hidden;
}
.cards .cards__container .cards__img--4 .cards__overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  transform: translateY(100%);
  transition: transform 1500ms ease-in-out;
  background-color: rgba(33, 150, 243, 0.8980392157);
}
.cards .cards__container .cards__img--4 .cards__overlay .cards__overlay--text {
  font-family: Roboto;
  font-size: 18px;
  font-weight: 400;
  line-height: 28px;
  letter-spacing: 0.03em;
  text-align: left;
  color: #ffffff;
  width: 322px;
  padding: 63px 24px;
}
.cards .cards__container .cards__img--5 {
  position: relative;
  background-image: url(../img-page2/portfolio-5.png);
  background-repeat: no-repeat;
  height: 294px;
  overflow: hidden;
}
.cards .cards__container .cards__img--5 .cards__overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  transform: translateY(100%);
  transition: transform 1500ms ease-in-out;
  background-color: rgba(33, 150, 243, 0.8980392157);
}
.cards .cards__container .cards__img--5 .cards__overlay .cards__overlay--text {
  font-family: Roboto;
  font-size: 18px;
  font-weight: 400;
  line-height: 28px;
  letter-spacing: 0.03em;
  text-align: left;
  color: #ffffff;
  width: 322px;
  padding: 63px 24px;
}
.cards .cards__container .cards__img--6 {
  position: relative;
  background-image: url(../img-page2/portfolio-6.png);
  background-repeat: no-repeat;
  height: 294px;
  overflow: hidden;
}
.cards .cards__container .cards__img--6 .cards__overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  transform: translateY(100%);
  transition: transform 1500ms ease-in-out;
  background-color: rgba(33, 150, 243, 0.8980392157);
}
.cards .cards__container .cards__img--6 .cards__overlay .cards__overlay--text {
  font-family: Roboto;
  font-size: 18px;
  font-weight: 400;
  line-height: 28px;
  letter-spacing: 0.03em;
  text-align: left;
  color: #ffffff;
  width: 322px;
  padding: 63px 24px;
}
.cards .cards__container .cards__img--7 {
  position: relative;
  background-image: url(../img-page2/portfolio-7.png);
  background-repeat: no-repeat;
  height: 294px;
  overflow: hidden;
}
.cards .cards__container .cards__img--7 .cards__overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  transform: translateY(100%);
  transition: transform 1500ms ease-in-out;
  background-color: rgba(33, 150, 243, 0.8980392157);
}
.cards .cards__container .cards__img--7 .cards__overlay .cards__overlay--text {
  font-family: Roboto;
  font-size: 18px;
  font-weight: 400;
  line-height: 28px;
  letter-spacing: 0.03em;
  text-align: left;
  color: #ffffff;
  width: 322px;
  padding: 63px 24px;
}
.cards .cards__container .cards__img--8 {
  position: relative;
  background-image: url(../img-page2/portfolio-8.png);
  background-repeat: no-repeat;
  height: 294px;
  overflow: hidden;
}
.cards .cards__container .cards__img--8 .cards__overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  transform: translateY(100%);
  transition: transform 1500ms ease-in-out;
  background-color: rgba(33, 150, 243, 0.8980392157);
}
.cards .cards__container .cards__img--8 .cards__overlay .cards__overlay--text {
  font-family: Roboto;
  font-size: 18px;
  font-weight: 400;
  line-height: 28px;
  letter-spacing: 0.03em;
  text-align: left;
  color: #ffffff;
  width: 322px;
  padding: 63px 24px;
}
.cards .cards__container .cards__img--9 {
  position: relative;
  background-image: url(../img-page2/portfolio-9.png);
  background-repeat: no-repeat;
  height: 294px;
  overflow: hidden;
}
.cards .cards__container .cards__img--9 .cards__overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  transform: translateY(100%);
  transition: transform 1500ms ease-in-out;
  background-color: rgba(33, 150, 243, 0.8980392157);
}
.cards .cards__container .cards__img--9 .cards__overlay .cards__overlay--text {
  font-family: Roboto;
  font-size: 18px;
  font-weight: 400;
  line-height: 28px;
  letter-spacing: 0.03em;
  text-align: left;
  color: #ffffff;
  width: 322px;
  padding: 63px 24px;
}
.cards .cards__container .cards__text--container {
  padding: 20px 0 20px 24px;
  border-style: solid;
  border-width: 0 1px 1px 1px;
  border-color: #EEEEEE;
}
.cards .cards__container .cards__text--container .cards__title {
  font-family: Roboto;
  font-size: 18px;
  font-weight: 700;
  line-height: 36px;
  letter-spacing: 0.06em;
  text-align: left;
}
.cards .cards__container .cards__text--container .cards__text {
  font-family: Roboto;
  font-size: 16px;
  font-weight: 400;
  line-height: 30px;
  letter-spacing: 0.03em;
  text-align: left;
  color: #757575;
}

.footer {
  background-color: #2F303A;
  margin-top: 100px;
}
.footer .footer__container {
  width: 100%;
  max-width: 1170px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  padding-top: 60px;
  padding-bottom: 60px;
}
.footer .footer__container--1and2 {
  display: flex;
  justify-content: space-between;
  max-width: 507px;
  width: 100%;
  margin: 0 auto;
}
.footer .footer__logo {
  margin-bottom: 20px;
}
.footer .footer__adress {
  font-family: Roboto;
  text-decoration: none;
  color: white;
  padding-bottom: 8px;
}
.footer .footer__gmail {
  font-family: Roboto;
  text-decoration: none;
  color: gray;
  padding-bottom: 8px;
}
.footer .footer__phone {
  font-family: Roboto;
  text-decoration: none;
  color: gray;
}
.footer .footer__container--second--title {
  font-family: Roboto;
  color: white;
  margin-bottom: 20px;
}
.footer .footer__container--therd--title {
  font-family: Roboto;
  color: white;
}
.footer .footer__container--therd--input {
  width: 358px;
  height: 50px;
  border-radius: 4px;
  border: 1px solid gray;
  background-color: #2F303A;
  margin-top: 20px;
  margin-right: 5px;
}
.footer ::-moz-placeholder {
  font-family: Roboto;
  padding: 20px;
}
.footer ::placeholder {
  font-family: Roboto;
  padding: 20px;
}
.footer .footer__container--therd--button {
  background-color: #2196F3;
  font-family: Roboto;
  color: white;
  width: 200px;
  height: 50px;
  border-radius: 4px;
  line-height: 50px;
}