@media (min-width: 768px) and (max-width: 1157px) {
  .is-open {
    visibility: hidden;
    opacity: 0;
  }

  .container {
    padding: 0 16px;
    margin: 0;
  }

  .logo {
    margin-right: 0;
  }

  .main-navigation {
    gap: 120px;
  }

  .burger-btn {
    opacity: 0;
    visibility: hidden;
  }

  .contact-list {
    gap: 0;
    margin: 0;
    flex-direction: column;
    gap: 6px;
  }

  .nav-list .link,
  .link-main {
    font-size: 16px;
    line-height: 24px;
    letter-spacing: 2%;
  }

  .address-list {
    padding-left: 122px;
    justify-content: center;
    display: flex;
    align-items: center;
  }

  .address-list .adres {
    font-weight: 400;
    font-size: 12px;
    line-height: 14px;
    letter-spacing: 4%;
  }

  .title-hero {
    font-size: 56px;
    line-height: 60px;
  }

  .buy-service {
    background-image: linear-gradient(
        to bottom,
        rgba(46, 47, 66, 0.7),
        rgba(46, 47, 66, 0.7)
      ),
      url(../images-tab/background-tablet.jpg);
    background-size: 100%;
    height: 436px;
    padding-top: 112px;
  }

  .buy {
    margin-top: 36px;
  }

  .plus {
    padding: 96px 0;
  }

  .advan {
    flex-wrap: wrap;
    gap: 72px 24px;
  }

  .advan-icon {
    display: none;
  }

  .advan .advan-list {
    flex-basis: calc((100% - 2 * 12px) / 2);
  }

  .advan .exp {
    font-weight: 700;
    font-size: 36px;
    line-height: 40px;
    margin: 0 0 8px 0;
  }

  .advan .goals {
    font-weight: 500;
    font-size: 16px;
    line-height: 24px;
    text-align: start;
    letter-spacing: 2%;
  }

  .team .our-team {
    font-weight: 700;
    font-size: 36px;
    line-height: 40px;
    letter-spacing: 2%;
  }

  .team {
    padding: 0;
  }

  .team .container {
    padding: 96px 108px;
  }

  .team-list {
    flex-wrap: wrap;
    gap: 64px 24px;
  }

  .company {
    width: calc((100% - 24px) / 2);
  }

  .portfolio {
    padding: 96px 0 96px 0;
  }

  .list-prog {
    width: calc((100% - 24px) / 2);
  }

  .app-list {
    row-gap: 72px;
  }

  .footer-logo {
    margin: 0;
  }

  .footer-wrapper {
    flex-wrap: wrap;
    row-gap: 72px;
  }

  .phone-modal-header {
    display: none;
  }

  .foot {
    padding: 0;
  }

  .foot .container {
    padding: 96px 108px;
    gap: 72px 24px;
  }
}

@media (min-width: 320px) and (max-width: 767px) {
  .container {
    padding: 0 16px;
    overflow-x: hidden;
    margin: 0;
    justify-content: space-between;
  }

  .hero {
    display: grid;
  }

  .nav-list {
    display: none;
  }

  .address-list {
    display: none;
  }

  .burger-btn {
    background-color: #ffffff;
    border: none;
    display: flex;
    align-items: center;
  }

  .buy-service {
    background-size: cover;
    background-image: linear-gradient(
        to bottom,
        rgba(46, 47, 66, 0.7),
        rgba(46, 47, 66, 0.7)
      ),
      url(../images-phone/background-phone.jpg);
    padding: 72px 0;
  }

  .title-hero {
    font-weight: 700;
    font-size: 36px;
    line-height: 40px;
    letter-spacing: 2%;
    text-align: center;
    width: 216px;
  }

  .advan-icon {
    display: none;
  }

  .advan {
    flex-wrap: wrap;
    gap: 72px;
  }

  .advan .advan-list {
    flex-basis: calc((100% - 2 * 0px) / 1);
  }

  .plus {
    padding: 96px 0;
  }

  .advan .exp {
    text-align: center;
    font-weight: 700;
    font-size: 36px;
    line-height: 40px;
    letter-spacing: 2%;
    margin: 0 0 8px 0;
  }

  .goals {
    font-weight: 500;
    font-size: 16px;
    line-height: 24px;
  }

  .team {
    padding: 96px 0;
  }

  .company {
    width: calc((100% - 24px) / 1);
  }

  .team-list {
    flex-direction: column;
    align-items: center;
    gap: 72px;
  }

  .portfolio {
    padding: 96px 0;
  }

  .list-prog {
    width: calc(100% / 1);
  }

  .foot {
    padding: 96px 0;
  }

  .foot .container {
    align-items: center;
    flex-direction: column;
    gap: 72px;
  }
  .subscribe-form {
    display: flex;
    gap: 16px;
    flex-direction: column;
    align-items: center;
  }

  .foot .forward {
    margin: 0;
  }

  .footer-logo {
    margin: 0;
    text-align: center;
  }

  .foot .forward {
    margin-bottom: 18px;
  }

  .footer-social-links {
    align-items: center;
    margin: 0;
  }

  .subscribe-container {
    align-items: center;
  }

  /* Tel Modal Window */

  .modal-close-tel {
    position: absolute;
    top: 24px;
    right: 24px;
    width: 24px;
    height: 24px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #e7e9fc;
    border: 1px solid rgba(0, 0, 0, 0.1);
    padding: 0;
    cursor: pointer;
    transition: background-color 250ms cubic-bezier(0.4, 0, 0.2, 1),
      border 250ms cubic-bezier(0.4, 0, 0.2, 1);
  }

  .modal-close-tel:hover,
  .modal-close-tel:focus {
    background-color: #404bbf;
    border: none;
  }

  .phone-modal-header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #ffffff;
    padding: 0 16px;
  }

  .is-open {
    visibility: hidden;
    opacity: 0;
  }

  .nav-list-tel {
    display: flex;
    flex-direction: column;
    gap: 20px;
    padding: 72px 0 0 0;
  }
  .menu-tel {
    font-weight: 700;
    font-size: 36px;
    line-height: 40px;
  }

  .link-main-tel {
    color: #404bbf;
  }

  .link-tel {
    color: #2e2f42;
  }

  .contact-list-tel {
    display: flex;
    flex-direction: column-reverse;
    gap: 24px;
    padding: 25vh 0 0 0;
  }

  .contact-tel {
    font-weight: 500;
    font-size: 20px;
    line-height: 24px;
    font-style: normal;
    text-decoration: none;
  }

  .ico-team-list-tel {
    display: flex;
    padding: 48px 0;
    gap: 40px;
    align-items: center;
    justify-content: center;
  }

  .modal-window {
    width: 288px;
    min-height: 623px;
    padding: 72px 16px 24px 16px;
  }

  .modal-privacy-label {
    letter-spacing: 0;
  }

  .modal-comment {
    margin-bottom: 0;
  }

  .adres-tel-email {
    color: #434455;
  }

  .adres-tel {
    color: #4d5ae5;
  }
}

@media (min-width: 320px) and (max-width: 767px) and (min-resolution: 2x) {
  .buy-service {
    background-image: linear-gradient(
        to bottom,
        rgba(46, 47, 66, 0.7),
        rgba(46, 47, 66, 0.7)
      ),
      url(../images-phone/background-phone-2.jpg);
  }
}

@media (min-width: 768px) and (max-width: 1158px) and (min-resolution: 2x) {
  .buy-service {
    background-image: linear-gradient(
        to bottom,
        rgba(46, 47, 66, 0.7),
        rgba(46, 47, 66, 0.7)
      ),
      url(../images-tab/background-tablet-2.jpg);
  }
}

@media (min-width: 1159px) and (min-resolution: 2dppx) {
  .buy-service {
    background-image: linear-gradient(
        to bottom,
        rgba(46, 47, 66, 0.7),
        rgba(46, 47, 66, 0.7)
      ),
      url(../images/background-hero-2.jpg);
  }
}
