@media only screen and (max-width: 768px) {
  #menu { display: none; }
  .open-mobile-menu{ display: block;  color: #2d2d2a; font-size: 1.5rem;}
  .hero-text.main-title { width: 90%; font-size: 2.5rem; }
  .hero-text { width: 90%; font-size: 1rem;}
  .subtitle {font-size: 1.3rem; }
  .button {  width: 220px; height: 60px; font-size: 1.3rem; line-height: 60px; font-weight: 700; }
  section#nosotros { width: 90%; padding-top: 50px; padding-bottom: 50px; flex-direction: column;}
  .title-section { font-size: 2rem;}
  .section p { font-size: 1rem;}
  .about-image { width: 100%; order: 1; }
  .about-content { width: 100%; order: 0; margin-bottom: 1.5rem; }
  .company-numbers { order: 2; }
  #servicios { width: 100%; padding-top: 50px; padding-bottom: 50px; min-height: auto;}
  ul.services { flex-direction: column;}
  .service-item { width: 100%; }
  .service-item .circle-icon { grid-row-start: 1; grid-row-end: 3; grid-column-start: 1; grid-column-end: 2; width: 80px; height: 80px; margin: 0 auto 2rem; }
  .service-item h4 { grid-column-start: 1; grid-column-end: 2; grid-row-start: 2; grid-row-end: 3; }
  .service-item p { grid-column-start: 2; grid-column-end: 4; grid-row-start: 1; grid-row-end: 3; }
  .service-item .icon { font-size: 35px; }
  .service-item h4 { margin-top: 10px; font-size: 1.5rem;}
  ul.company-numbers { flex-direction: column; margin: 0; }
  .number-item { width: 100%; padding: 25px 10px 25px; line-height: 1rem; }
  .number-item .number { font-size: 2.3rem; margin-top: 0; padding: 10px 25px; }
  #contacto { padding-bottom: 50px; }
  .formulario-contacto .title-section { font-size: 1.6rem; }
  .label { margin: 10px 0;  font-size: 1rem; }
  .form .btn { line-height: 50px; padding: 5px 15px; width: 220px; font-size: 1.3rem; font-weight: 700; margin-top: calc(1rem + 20px); }
  .redes { justify-content: space-evenly; }
  .redes li { margin: 1rem 0; }
  .icono-redes p { display: none; }
  .mobile-menu { display: none;  position: fixed;  width: 100%; height: 100vh; top: 0;  left: 0;  z-index: 9099;  background: white; }
  .mobile-menu-container { display: flex;  flex-direction: column; justify-content: space-around; }
  .mobile-menu #menu { display: flex;  flex-direction: column; margin-top: 25%; }
  .mobile-menu-container { display: flex;  align-items: center; justify-content: space-between;  width: 100%;  height: 100vh; box-sizing: border-box;   padding: 50px; }
  a.menu-item.scroll-btn {  font-size: 1.5rem; font-weight: 700; margin: 1rem 0; color: #2d2d2a;}
  .menu-item.scroll-btn:hover, .menu-item.scroll-btn:active, .menu-item.scroll-btn: focus, .menu-item.scroll-btn.active { background-color: transparent; }
  a.close-mobile-menu { color: #2d2d2a; font-size: 2rem;  position: absolute;  top: 10px;  right: 20px; }
}