body {
    font-family: "Roboto", sans-serif;
    color: #434455;
    background-color: #FFFFFF;
}

ul {
    list-style-type: none;
    margin: 0;
    padding-left: 0;
}

a {
    text-decoration: none;
}

.visually-hidden {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    border: 0;
    padding: 0;
    white-space: nowrap;
    clip-path: inset(100%);
    clip: rect(0 0 0 0);
    overflow: hidden;
}

h1,
h2,
h3,
h4,
p {
    margin: 0;
}

img {
    display: block;
    max-width: 100%;
    height: auto;
}
button {
    cursor: pointer;
}

/*common*/
.container {
    max-width: 320px;
    padding: 0 16px;
    margin: 0 auto;
}

@media screen and (min-width: 768px)  {
    .container {
            max-width: 768px;
    }
}

@media screen and (min-width: 1158px) {
    .container {
            max-width: 1158px;
            padding: 0 15px;
        }
    }

        /*header*/

.page-header-start {
    border-bottom: 1px solid #e7e9fc;
    box-shadow:
        0px 2px 1px rgba(46, 47, 66, 0.08),
        0px 1px 1px rgba(46, 47, 66, 0.16),
        0px 1px 6px rgba(46, 47, 66, 0.08);
}



.header-container {
    display: flex;
    align-items: center;
    justify-content: space-between;
    
}

 .nav-list,
 .contacts {
    display: none;
 }

 .logo {
     font-family: "Raleway", sans-serif;
     font-weight: 700;
     font-size: 18px;
     /* line-height: 21px; */
     line-height: 1.17;
     letter-spacing: 0.03em;
     text-transform: uppercase;
     color: #4d5ae5;
     display: flex;
     justify-content: center;
 }
 .logo-color {
     color: #2e2f42;
 }
 .header-logo {
    padding: 16px 0;
    display: block;
 }

 .burger-btn {
 padding: 0;
 border: none;
 background-color: transparent;
 }

 .burger-icon {
    fill: #2f2f37;
    display: block;
 }

 @media screen and (min-width: 768px) {
    .burger-btn {
            display: none;
        } 
        
        .header-logo {
                     padding: 24px 0;
                     margin-right: 120px;
                 }
 
        .nav-list {
            font-weight: 500;
            font-size: 16px;
            /* line-height: 24px; */
            line-height: 1.5;
            letter-spacing: 0.02em;
            color: #2e2f42;
            display: flex;
            gap: 40px;
            align-items: center;
        }

        .nav-link {
                    display: flex;
                    align-items: center;
                    justify-content: space-between; }

                .list-header.active {
                    color: #404bbf;
                    position: relative;
                }
        
                .list-header.active::after {
                    content: "";
                    position: absolute;
                    left: 0;
                    bottom: 0;
                    width: 100%;
                    height: 4px;
                    background-color: #404bbf;
                    border-radius: 2px;
        
                }
          .list-header {
              color: #2e2f42;
              display: block;
              padding: 24px 0;
              transition: color 250ms cubic-bezier(0.4, 0, 0.2, 1);
          }
    
          .list-header:hover,
          .list-header:focus {
              color: #404bbf;
          }

        .contacts {
            font-style: normal;
            display: block;
        }

         .address {
                    font-weight: 400;
                    font-size: 12px;
                    font-style: normal;
                    /* line-height: 24px; */
                    line-height: 1.17;
                    letter-spacing: 0.04em;
                    color: #434455;
                    padding: 24px 0;
                    transition: color 250ms cubic-bezier(0.4, 0, 0.2, 1);
                }
       
          .address:hover,
          .address:focus {
              color: #404bbf;
          }

          .contact-mail-tel {
              font-style: normal;
              display: flex;
              flex-direction: column;
              gap: 12px;
    
          }
 }
 
 
 @media screen and (min-width: 1158px) {
     .header-logo {
         margin-right: 76px;
 }

  .contact-mail-tel {
      flex-direction: row;
      gap: 40px;
      align-items: center;
      
  }

  .address {
      font-weight: 400;
      font-size: 16px;
      line-height: 1.5;
      letter-spacing: 0.02em;
      color: #434455;
      padding: 24px 0;
    
  }

}

/*mobile-menu*/
@media screen and (min-width: 768px) {
    .mobile-menu {
        display: none;
    }
}
    
 .mobile-menu {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #FFFFFF;

    opacity: 0;
        visibility: hidden;
        pointer-events: none;
    
   transition: opacity 250ms cubic-bezier(0.4, 0, 0.2, 1),
        visibility 250ms cubic-bezier(0.4, 0, 0.2, 1);
 }

 .is-open {
     opacity: 1;
     visibility: visible;
     pointer-events: auto;
 }
          .mobile-menu-container {
              position: relative;
              padding-top: 72px;
              padding-bottom: 40px;
    
              display: flex;
              flex-direction: column;
              height: 100%;
          }
    
          .mobile-menu-close {
            position: absolute;
                top: 24px;
                right: 24px;
                width: 24px;
                height: 24px;
                display: flex;
                align-items: center;
                justify-content: center;
                padding: 0;
                background-color: transparent;
                border: 1px solid rgba(0, 0, 0, 0.1);
                border-radius: 50%;
            
                transition: background-color 250ms cubic-bezier(0.4, 0, 0.2, 1),
                    border-color 250ms cubic-bezier(0.4, 0, 0.2, 1);
          }
           
            .close-icon-menu {
            fill: #2e2f42;
            transition: fill 250ms cubic-bezier(0.4, 0, 0.2, 1);
            }
          .mobile-menu-nav {
              margin-bottom: auto;
          }
             
                  .nav-list-menu {
                    font-weight: 700;
                        font-size: 36px;
                        /* line-height: 40px; */
                        line-height: 1.11111;
                        letter-spacing: 0.02em;
                        color: #2e2f42;
                        display: flex;
                            flex-direction: column;
                            gap: 40px;
                  }

                   .list-header-menu {
       color: #2e2f42; 
       display: block;
       padding: 0;
        transition: color 250ms cubic-bezier(0.4, 0, 0.2, 1);
    }
 .contact-mail-tel-menu {
     font-style: normal;
     display: flex;
     flex-direction: column;
     gap: 24px;
     margin-bottom: 48px;

 }

        .address-menu {
font-weight: 500;
    font-size: 20px;

    /* line-height: 24px; */
    line-height: 1.2;
    letter-spacing: 0.02em;
    color: #434455;
            font-style: normal;
            padding: 24px 0;
            transition: color 250ms cubic-bezier(0.4, 0, 0.2, 1);
        }
                .active {
                    color: #404bbf;
                
                }

                .svg-contact-all-menu {
      display: flex;
      gap: 40px;
    

  }

  .svg-contact-menu {
        width: 40px;
        height: 40px;
        background-color: #4D5AE5;
        border-radius: 50%;
        display: flex;
        justify-content: center;
        align-items: center
       ;
        
       transition: background-color 250ms cubic-bezier(0.4, 0, 0.2, 1);;
        
      }
          .svg-contact-menu svg {
              fill: #f4f4fd;
          }
      .svg-contact-menu use {
    display: block;
    width: 16px;
   height: 16px;

      } 

          .svg-contact-menu{
            overflow:visible;
          }

@media screen and (min-width: 768px) {
                      .mobile-menu {
                          display: none;
                      }
                      
                  }

        /*header*/        

.section-head-page {
    padding-top: 72px;
    padding-bottom: 72px;
    max-width: 1440px;
        margin: 0 auto;

    background-image:
        linear-gradient(rgba(46, 47, 66, 0.7),
            rgba(46, 47, 66, 0.7)),
        url("../images/back-mob.jpg");

    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}
.section-head-page .container {
    max-width: 320px;
}
@media  screen and (max-width: 767px) and (min-resolution: 192dpi) {
    .section-head-page {
        background-image:
            linear-gradient(rgba(46, 47, 66, 0.7),
                rgba(46, 47, 66, 0.7)),
            url("../images/back-mob2.jpg");
    }
    
}

@media screen and (min-width: 768px) {
    .section-head-page {
        padding-top: 112px;
        padding-bottom: 112px;

        background-image:
            linear-gradient(rgba(46, 47, 66, 0.7), rgba(46, 47, 66, 0.7)),
            url("../images/back-tab.jpg");
    }
        .section-head-page .container {
            max-width: 768px;
        }
}
@media screen and (min-width: 768px) and (min-resolution: 192dpi) {
    .section-head-page {
        background-image:
            linear-gradient(rgba(46, 47, 66, 0.7), rgba(46, 47, 66, 0.7)),
            url("../images/back-tab2.jpg");
    }
}
@media screen and (min-width: 1158px) {
.section-head-page .container {
        max-width: 1440px;
    } 
    .section-head-page {
        padding-top: 188px;
        padding-bottom: 188px;

        background-image:
            linear-gradient(rgba(46, 47, 66, 0.7), rgba(46, 47, 66, 0.7)),
            url("../images/people-office1.jpg");
    }
}

@media screen and (min-width: 1158px) and (min-resolution: 192dpi) {
    .section-head-page {
        background-image:
            linear-gradient(rgba(46, 47, 66, 0.7),
                rgba(46, 47, 66, 0.7)),
            url("../images/people-office2x.jpg");
    }
}
   .header-page {
    font-weight: 700;
        font-size: 36px;
    
        /* line-height: 40px; */
        line-height: 1.11111;
        letter-spacing: 0.02em;
        text-align: center;
        color: #fff;
        max-width: 216px;
            margin: 0 auto 72px;
   }

   .header-page-button {
       font-family: "Roboto", sans-serif;
       font-weight: 500;
       font-size: 16px;
       /* line-height: 24px; */
       line-height: 1.5;
       letter-spacing: 0.04em;
       color: #ffffff;
       background-color: #4D5AE5;
       min-width: 169px;
       padding: 16px 32px;
       border-radius: 4px;
       display: block;
       margin: 0 auto;

       text-align: center;
       cursor: pointer;
       min-width: 169px;
       border: none;
       transition: background-color 250ms cubic-bezier(0.4, 0, 0.2, 1);
       box-shadow: 0 4px 4px rgba(0, 0, 0, 0.15);

   }

   @media screen and (min-width: 768px){
    .header-page {
            font-weight: 700;
                font-size: 56px;
                /* line-height: 60px; */
                line-height: 1.07143;
                letter-spacing: 0.02em;
                text-align: center;
                color: #fff;
            max-width: 496px;
            margin: 0 auto 36px;
    
    
        }
   }
@media screen and (min-width: 1158px) {
    .header-page {
margin: 0 auto 48px;}

.header-page-button:hover,
.header-page-button:focus {
    background-color: #404BBF;
}

button {
    cursor: pointer;
    transition: background-color 250ms cubic-bezier(0.4, 0, 0.2, 1);
}

button:hover,
button:focus {
    background-color: #404BBF;

}
 }

.first-list {
    display: flex;
        flex-direction: column;
        align-items: stretch;
}


.svg-adv {
    display: none;
}

.section-advantages {
    padding-top: 96px;
    padding-bottom: 96px;

}

.advantages {
    display: flex;
    flex-direction: column;
    gap: 72px;
    
}
 .list-advantages-title {
    font-weight: 700;
        font-size: 36px;
    
        /* line-height: 40px; */
        line-height: 1.11111;
        letter-spacing: 0.02em;
        text-align: center;
        color: #2e2f42;
        margin-bottom: 8px;
 }



.list-text {
    font-weight: 500;
        font-size: 16px;
        /* line-height: 24px; */
        line-height: 1.5;
        letter-spacing: 0.02em;
        color: #434455;
    
    
}
/*tablet adv*/
@media screen and (min-width: 768px) {
    
    .advantages {
        flex-direction: row;
        flex-wrap: wrap;
        gap: 72px 24px;
        
    }

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

    .list-advantages-title {
        text-align: left;
        
    }
}

/*десктоп адв*/
@media screen and (min-width: 1158px) {
   .section-advantages {
        padding-top: 120px;
        padding-bottom: 120px;

    }

    .advantages {
        display: flex;
        justify-content: space-between;
        display: flex;
        gap: 24px;

    }

    .svg-adv {
        border: 1px solid #8e8f99;
        border-radius: 4px;
        width: 264px;
        height: 112px;
        background: #f4f4fd;
        margin-bottom: 8px;
        box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.25);
        display: flex;
        justify-content: center;
        align-items: center;

    }

    .first-list {
        width: calc((100% - 72px) / 4);
        text-shadow: 0 4px 4px rgba(0, 0, 0, 0.25);
    }

    .list-text {
        font-weight: 400;
        font-size: 16px;
        /* line-height: 24px; */
        line-height: 1.5;
        letter-spacing: 0.02em;
        color: #434455;




    }

    .shadow-text {
        text-shadow: 0 4px 4px rgba(0, 0, 0, 0.25);

    }

    .list-advantages-title {
        font-weight: 500;
        font-size: 20px;
        /* line-height: 24px; */
        line-height: 1.2;
        letter-spacing: 0.02em;
        color: #2e2f42;
        margin-bottom: 8px;

    }

}

/*team*/
.container-team {
    padding: 32px 16px;
    text-align: center;
}

.section-back-team {
    background-color: #f4f4fd;

    min-width: 100%;
    padding: 96px 0;
}

.section-team-title {
    text-transform: capitalize;
    font-weight: 700;
    font-size: 36px;
    /* line-height: 40px; */
    line-height: 1.11;
    letter-spacing: 0.02em;
    text-align: center;
    color: #2e2f42;
    margin-bottom: 72px;

}

.section-list-team {
    background-color: #FFFFFF;
    flex-direction: column;
    border: 264px 380px;
    border-radius: 0px 0px 4px 4px;
    box-shadow: 0 2px 1px 0 rgba(46, 47, 66, 0.08), 0 1px 1px 0 rgba(46, 47, 66, 0.16), 0 1px 6px 0 rgba(46, 47, 66, 0.08);
    background: #fff;
    width: 264px;


}

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

.section-list-team h3 {
    font-weight: 500;
    font-size: 20px;
    /* line-height: 24px; */
    line-height: 1.2;
    letter-spacing: 0.02em;
    text-align: center;
    color: #2e2f42;
    margin-bottom: 8px;


}

.section-list-team p {
    font-weight: 400;
    font-size: 16px;

    /* line-height: 24px; */
    line-height: 1.5;
    letter-spacing: 0.02em;
    text-align: center;
    color: #434455;
    margin-bottom: 8px;
}

.svg-contact-all {
    display: flex;
    justify-content: center;
    gap: 24px;


}

.svg-contact {
    width: 40px;
    height: 40px;
    background-color: #4D5AE5;
    border-radius: 50%;
    padding: 12px;
    display: flex;
    justify-content: center;
    align-items: center;

    transition: background-color 250ms cubic-bezier(0.4, 0, 0.2, 1);
    ;

}

.svg-contact svg {
    fill: #f4f4fd;
}

.svg-contact use {
    display: block;
    width: 16px;
    height: 16px;

}

.svg-contact {
    overflow: visible;
}

/*tablet team*/

@media screen and (min-width: 768px) {
.section-back-team {
        padding-top: 96px;
        padding-bottom: 96px;
    }
        .list-team {
            display: flex;
            flex-direction: row;
            flex-wrap: wrap;
            justify-content: flex-start;
            gap: 64px 24px;
            padding-left: 108px;
            padding-right: 108px;
           
        }

    .section-list-team {
        width: calc((100% - 24px) / 2);
       
       
}
}
/*desktop team*/

@media screen and (min-width: 1158px) {

    .container-team {
        padding: 32px 16px;
        text-align: center;
    }

    .section-back-team {
        background-color: #f4f4fd;

        min-width: 100%;
        padding: 120px 0;
    }

    .section-team-title {
        text-transform: capitalize;
        font-weight: 700;
        font-size: 36px;
        /* line-height: 40px; */
        line-height: 1.11;
        letter-spacing: 0.02em;
        text-align: center;
        color: #2e2f42;
        margin-bottom: 72px;

    }

    .section-list-team {
        background-color: #FFFFFF;
        flex-direction: column;
        border: 264px 380px;
        border-radius: 0px 0px 4px 4px;
        box-shadow: 0 2px 1px 0 rgba(46, 47, 66, 0.08), 0 1px 1px 0 rgba(46, 47, 66, 0.16), 0 1px 6px 0 rgba(46, 47, 66, 0.08);
        background: #fff;
        width: 264px;


    }

    .list-team {
        display: flex;
            padding-left: 0;
            padding-right: 0;
            flex-wrap: nowrap;
            justify-content: center;
            gap: 24px;
    }

    .section-list-team h3 {
        font-weight: 500;
        font-size: 20px;
        /* line-height: 24px; */
        line-height: 1.2;
        letter-spacing: 0.02em;
        text-align: center;
        color: #2e2f42;
        margin-bottom: 8px;


    }

    .section-list-team p {
        font-weight: 400;
        font-size: 16px;

        /* line-height: 24px; */
        line-height: 1.5;
        letter-spacing: 0.02em;
        text-align: center;
        color: #434455;
        margin-bottom: 8px;
    }

    .svg-contact-all {
        display: flex;
        justify-content: center;
        gap: 24px;


    }

    .svg-contact {
        width: 40px;
        height: 40px;
        background-color: #4D5AE5;
        border-radius: 50%;
        padding: 12px;
        display: flex;
        justify-content: center;
        align-items: center;

        transition: background-color 250ms cubic-bezier(0.4, 0, 0.2, 1);
        ;

    }

    .svg-contact svg {
        fill: #f4f4fd;
    }

    .svg-contact use {
        display: block;
        width: 16px;
        height: 16px;

    }

    .svg-contact {
        overflow: visible;
    }

    .svg-contact:hover,
    .svg-contact:focus {
        background-color: #404bbf;
        } 
 }


        /*portfolio*/
.hidden-item{
position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #4d5ae5;
    padding: 40px 32px;
 transform: translateY(100%);
    transition: transform 250ms cubic-bezier(0.4, 0, 0.2, 1);} 

        .hidden-item p {
            color: #f4f4fd;
            font-size: 16px;
            line-height: 1.5;
            letter-spacing: 0.02em;
            padding: 40px 32px;
        }
        .portfolio-img-wrapper {
            position: relative;
            overflow: hidden;
            line-height: 0;
        }
    
        .section-portfolio {
            padding-top: 96px;
            padding-bottom: 96px;
        }
    
        .portfolio-img-wrapper img {
            width: 100%;
            height: 280px;
         object-fit: cover;
        }

    .section-portfolio-start {
            text-transform: capitalize;
            font-weight: 700;
            font-size: 36px;
            line-height: 1.11;
            letter-spacing: 0.02em;
            text-align: center;
            color: #2e2f42;
            margin-bottom: 72px;
        }
.portfolio-item-container {
flex-grow: 1;
    padding: 32px 16px;
    border: 1px solid #e7e9fc;
    border-top: none;
    
}
 
.list-portfolio-items {
    display: flex;
        flex-direction: column;
        height: 100%;
        box-shadow:none;
}

.list-portfolio {
    display: flex;
    flex-direction: column;
    gap: 48px;
    list-style: none;
    
}

.list-portfolio-one {
    font-weight: 500;
    font-size: 20px;
    /* line-height: 24px; */
    line-height: 1.2;
    letter-spacing: 0.02em;
    color: #2e2f42;
    margin-bottom: 8px;
}

.list-portfolio-text {
    font-weight: 400;
    font-size: 16px;
    /* line-height: 24px; */
    line-height: 1.5;
    letter-spacing: 0.02em;
    color: #434455;
}

@media screen and (min-width: 768px) {
    .list-portfolio {
        flex-direction: row;
        flex-wrap: wrap;
       gap: 72px 24px;
     }

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

    .portfolio-img-wrapper img {
        height: 300px;
     }
}

@media screen and (min-width: 1158px) {
    .list-portfolio-items {
        width: calc((100% - 48px) / 3);
       transition: box-shadow 250ms cubic-bezier(0.4, 0, 0.2, 1);
    }

 .list-portfolio-items:hover {
        box-shadow: 0 1px 6px rgba(46, 47, 66, 0.08),
            0 1px 1px rgba(46, 47, 66, 0.16),
            0 2px 1px rgba(46, 47, 66, 0.08);
    }

    .hidden-item {
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background-color: #4d5ae5;
        padding: 40px 32px;

        transform: translateY(100%);
        transition: transform 250ms cubic-bezier(0.4, 0, 0.2, 1);
    }

    .hidden-item p {
        color: #f4f4fd;
        font-size: 16px;
        line-height: 1.5;
        letter-spacing: 0.02em;
    }

    .list-portfolio-items:hover .hidden-item {
        transform: translateY(0);
    }
}

/*footer*/ 
.footer-page {
    background-color: #2e2f42;
    min-width: 100%;
    padding-top: 96px;
    padding-bottom: 96px;
}
.footer-container {
    display: flex;
    flex-direction: column;
    gap: 72px;

}

.item-location {
    display: flex;
        flex-direction: column;
        align-items: center;
        text-align: center;
}

.logo-footer {
    font-family:
        "Raleway", sans-serif;
    font-weight: 700;
        font-size: 18px;
        line-height: 1.16667;
        letter-spacing: 0.03em;
        text-transform: uppercase;
        color: #4d5ae5;
    margin-bottom: 16px;
    display: flex;
    justify-content: center;
}


.logo-color-footer {
    color: #f4f4fd;
}

.text-footer {
    font-family: "Roboto", sans-serif;
    font-weight: 400;
        font-size: 16px;
        line-height: 1.5;
        letter-spacing: 0.02em;
        color: #f4f4fd;
    width: 288px;
    margin: 0;
}
.socials-footer {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.media-footer {
    font-weight: 500;
    font-size: 16px;
    line-height: 1.5;
    letter-spacing: 0.02em;
    color: #fff;
    margin-bottom: 16px;
    display: flex;
    justify-content: center;
}

.svg-contact-footer {
    width: 40px;
    height: 40px;
    background-color: #4D5AE5;
    border-radius: 50%;
    padding: 8px;
    display: flex;
    overflow: visible;
    transition: background-color 250ms cubic-bezier(0.4, 0, 0.2, 1);
}

.svg-contact-footer use {

    display: block;
    width: 24px;
    height: 24px;

}

.svg-footer {
    display: flex;
    gap: 16px;

}

.email-footer {
    border: 1px solid #fff;
        border-radius: 4px;
        width: 100%;
        max-width: 288px;
        height: 40px;
        background-color: transparent;
        padding: 8px 16px;
        color: #fff;
        margin-right: 0;
         font-size: 12px;
        line-height: 2;
        letter-spacing: 0.04em;
}

.email-footer:focus {
    border-color: #31D0AA;
    outline: none;
}

.email-footer::placeholder {
    font-size: 12px;
    /* line-height: 24px; */
    line-height: 2;
    letter-spacing: 0.04em;
    color: #fff;
}

.subscribe-footer {
    display: flex;
        flex-direction: column;
        align-items: center;
        gap: 16px;

}

.form-footer {
    margin-left: 0;
        width: 100%;
}


.button-footer {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 16px;
    border-radius: 4px;
    padding: 8px 24px;
    min-width: 165px;
    height: 40px;
    background-color: #4d5ae5;
    cursor: pointer;
    border: none;
    font-weight: 500;
    font-size: 16px;
    line-height: 1.5;
    letter-spacing: 0.04em;
    color: #fff;
    transition: background-color 250ms cubic-bezier(0.4, 0, 0.2, 1);
}

.button-footer:focus,
.button-footer:hover {
    background-color: #31d0aa;
}

.icon-telegram {
    display: flex;
    align-items: center;
    fill: #fff;
}

@media screen and (min-width: 768px) {
    .footer-container {
        flex-direction: row;
        flex-wrap: wrap;
        align-items: baseline;
        gap: 72px 24px;
        padding-left: 108px;
    }

    .item-location {
        align-items: flex-start;
        text-align: left;
    }

    .logo-footer {
        justify-content: flex-start;
    }

    .socials-footer {
        align-items: flex-start;
    }

    .media-footer {
        justify-content: flex-start;
    }

    .subscribe-footer {
        flex-direction: row;
      gap: 24px;
    }

    .email-footer {
        width: 264px;
    }

    .form-footer {
        width: auto;
    }
}

 @media screen and (min-width: 1158px) {
            .footer-container {
                flex-wrap: nowrap;
                padding-left: 15px;
                gap: 0;
            }
    
            .item-location {
                margin-right: 120px;
            }
    
            .socials-footer {
                margin-right: 80px;
            }
    
            .form-footer {
                margin-left: auto;
            }
    
    .logo-color-footer {
        color: #f4f4fd;
    }

    .svg-contact-footer:hover,
    .svg-contact-footer:focus {
        background-color: #31D0AA;
    }

    .svg-footer {
        display: flex;
        gap: 16px;

    }

    .email-footer:focus {
        border-color: #31D0AA;
        outline: none;
    }

    .email-footer::placeholder {
        font-size: 12px;
        /* line-height: 24px; */
        line-height: 2;
        letter-spacing: 0.04em;
        color: #fff;
    }

    .subscribe-footer {
        display: flex;
    }

    .form-footer {
        margin-left: auto;
    }


}


/*form*/
 .is-hidden {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
}
    .hide-popup.is-open {
            opacity: 1;
            pointer-events: auto;
            visibility: visible;
        }
    
        .backform {
            position: fixed;
            z-index: 9999999;
            top: 0;
            left: 0;
            background-color: rgba(46, 47, 66, 0.4);
            height: 100%;
            width: 100%;
            display: flex;
            justify-content: center;
            align-items: center;
        }
    
                .all-form {
                    position: relative;
                    width: calc(100% - 32px);
                    max-width: 392px;
                 min-height: 584px;
                    border-radius: 4px;
                    background-color: #fcfcfc;
                    padding: 72px 16px 24px 16px;
                    box-shadow: 0 1px 1px rgba(0, 0, 0, 0.14), 0 1px 3px rgba(0, 0, 0, 0.12), 0 2px 1px rgba(0, 0, 0, 0.2);
                    transition: transform 250ms cubic-bezier(0.4, 0, 0.2, 1);
                }
    
                @media screen and (min-width: 768px) {
    .all-form {
        max-width: 408px;
        padding: 72px 24px 24px 24px;
    }
}
    
        .close-popup {
            position: absolute;
            top: 24px;
            right: 24px;
    
            width: 24px;
            height: 24px;
    
            display: flex;
            align-items: center;
            justify-content: center;
    
            padding: 0;
            cursor: pointer;
    
            background-color: #E7E9FC;
            border: 1px solid rgba(0, 0, 0, 0.1);
            border-radius: 50%;
    
            transition: background-color 250ms cubic-bezier(0.4, 0, 0.2, 1),
                border-color 250ms cubic-bezier(0.4, 0, 0.2, 1);
        }
    
        .close-popup-icon {
            fill: #2E2F42;
            transition: fill 250ms cubic-bezier(0.4, 0, 0.2, 1);
        }
    
        .close-popup:hover,
        .close-popup:focus {
            background-color: #404BBF;
            border-color: transparent;
        }
    
        .close-popup:hover .close-popup-icon,
        .close-popup:focus .close-popup-icon {
            fill: #fff;
        }
    
    
    
        .name-form {
            font-weight: 500;
            font-size: 16px;
            line-height: 1.5;
            letter-spacing: 0.02em;
            text-align: center;
            color: #2e2f42;
            font-family: "Roboto", sans-serif;
    
            margin-bottom: 16px;
    
        }
    
        .label-input {
            display: block;
            font-weight: 400;
            font-size: 12px;
            /* line-height: 14px; */
            line-height: 1.16667;
            letter-spacing: 0.04em;
            color: #8e8f99;
            margin-bottom: 4px;
        }
    
        .text-field {
        width: 100%;
            height: 40px;
            border: 1px solid rgba(46, 47, 66, 0.4);
            border-radius: 4px;
            background-color: transparent;
            padding-left: 38px;
            outline: transparent;
            transition: border-color 250ms cubic-bezier(0.4, 0, 0.2, 1);
        }
    
        .text-field:focus {
            border-color: #4D5AE5;
    
        }
    
        .field-icon {
        position: absolute;
            left: 16px;
            top: 50%;
            transform: translateY(-50%);
            fill: #2E2F42;
            transition: fill 250ms cubic-bezier(0.4, 0, 0.2, 1);
        }
    
        .text-field:focus+.field-icon {
            fill: #4D5AE5;
    
        }
    
    
        .field-wrapper {
            position: relative;
        }
    
        .accent {
            text-decoration: underline;
            color: #4d5ae5;
    
        }
    
        .backform .accent {
            color: #4d5ae5;
        }
    
        .form-field-wrapper {
            margin-bottom: 8px;
        }
    
    
    
        .comment-textarea {
            border: 1px solid rgba(46, 47, 66, 0.4);
            border-radius: 4px;
            width: 100%;
            height: 120px;
            padding: 9px 16px;
            font-weight: 400;
            resize: none;
            outline: none;
            transition: border-color 250ms cubic-bezier(0.4, 0, 0.2, 1);
    
    
        }
    
        .comment-textarea::placeholder {
            font-size: 12px;
            /* line-height: 14px; */
            line-height: 1.16667;
            letter-spacing: 0.04em;
            color: rgba(46, 47, 66, 0.4);
        }
    
        .comment-textarea:focus {
            border-color: #404BBF;
        }
    
        .label-policy {
            font-weight: 400;
            font-size: 12px;
            /* line-height: 14px; */
            line-height: 1.16667;
            letter-spacing: 0.04em;
            color: #8e8f99;
    
        }
    
        .textarea-after {
            margin-bottom: 16px;
    
        }
    
        .label-policy-field-wrapper {
            margin-bottom: 24px;
        }
    
        .custom-checkbox {
            display: inline-flex;
            justify-content: center;
            align-items: center;
            cursor: pointer;
            width: 16px;
            height: 16px;
            border-radius: 2px;
            border: 1px solid rgba(46, 47, 66, 0.4);
            fill: transparent;
            
        }

                .button-send .header-page-button {
                    display: block;
                    margin: 0 auto;
                    min-width: 169px;
                    height: 56px;
                    /* Висота як на макеті */
                    background-color: #4D5AE5;
                    border: none;
                    border-radius: 4px;
                    font-weight: 500;
                    line-height: 1.5;
                    letter-spacing: 0.04em;
                    color: #ffffff;
                    box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.15);
                    transition: background-color 250ms cubic-bezier(0.4, 0, 0.2, 1);
                }
        
                .button-send .header-page-button:hover,
                .button-send .header-page-button:focus {
                    background-color: #404BBF;
                }
    
        .custom-checkbox svg {
            opacity: 0;
        }
    
        .policy-chechbox:checked+.label-policy .custom-checkbox {
            background-color: #404BBF;
            border-color: #404BBF;
        }

        .policy-chechbox:checked+.label-policy>.custom-checkbox svg {
            opacity: 1;
            fill: #fff
        }
        @media screen and (max-width: 767px) {
            .label-policy {
                display: flex;
                align-items: center;
                gap: 8px;
            }

                        .policy-text {
                            display: block;
                            font-weight: 400;
                            font-size: 12px;
                            line-height: 1.16667;
                            letter-spacing: 0.04em;
                            color: #8e8f99;
                        }
                        .custom-checkbox {
          flex-shrink: 0;
      }

        .policy-text a {
            display: inline-block;
            line-height: 1.33333;
            text-decoration: underline;
            text-decoration-skip-ink: none;
            color: #4d5ae5;
            margin-top: 2px;
        }
        }
  

 