@media (min-width: 1600px) {
  .layout {
    min-width: 1600px;
  }
  .layout__menu {
    padding: 5rem 9.5rem;
  }
  .layout__banner {
    min-height: 85rem;
    margin: 0 9.5rem;
    padding-right: 0;
    padding-left: 20rem;
    padding-top: 25rem;
    padding-bottom: 30rem;
  }
  .services__service {
    padding: 7rem 5rem;
  }
}
@media (min-width: 1199px) and (max-width: 1400px) {
  /*.services__grid, .projects__grid, .stats__container, .contact__container,*/
  .reviews__grid,
  .clients__container,
  .news__container,
  .footer__container {
    max-width: 100%;
    padding-left: 3rem;
    padding-right: 3rem;
  }
  .projects__all {
    gap: 3rem;
  }
}
@media (max-width: 1200px) {
  .nav__item {
    margin: 0 2rem;
  }
  .banner__title {
    font-size: 6rem;
  }
  .layout__services {
    margin: 10rem 7rem;
    margin-bottom: 0;
  }
  /*.services__grid, .projects__grid, .stats__container, .contact__container,*/
  .reviews__grid,
  .clients__container,
  .news__container,
  .footer__container {
    max-width: 96rem;
  }
  .services__service {
    padding: 4rem 1.5rem;
  }
  .service__container-img {
    max-width: 6rem;
  }
  .projects__all {
    gap: 3rem;
  }
  .layout__stats,
  .layout__clients {
    padding: 10rem 7rem;
  }
  .clients__title {
    width: 70%;
  }
  .clients__description {
    width: 60%;
  }
  .layout__news {
    padding: 10rem 0;
  }
  .news__list {
    flex-direction: column;
  }
  .news__new:last-child {
    border-left: none;
    padding-left: 0;
  }
  .layout__contact {
    padding-top: 10rem;
    padding-bottom: 7rem;
  }
}
@media (max-width: 1000px) {
  .layout {
    min-width: auto;
  }
  .navbar__nav {
    display: none;
  }
  .navbar__mobile-btn {
    display: block;
  }
  .layout__banner {
    min-height: 100%;
    margin: 0 3rem;
  }
  .banner__content {
    width: 65%;
  }
  .banner__title {
    font-size: 5rem;
  }
  .banner__btn {
    padding: 2rem 3.5rem;
  }
  .shapes__item {
    width: 50%;
  }
  /*.services__grid, .projects__grid, .stats__container, .contact__container,*/
  .reviews__grid,
  .clients__container,
  .news__container,
  .footer__container {
    max-width: 72rem;
  }
  .layout__services {
    padding-bottom: 4rem;
  }
  .services__subtitle,
  .projects__subtitle,
  .stats__subtitle,
  .reviews__subtitle,
  .clients__subtitle,
  .news__subtitle,
  .contact__subtitle {
    font-size: 1.8rem;
  }
  .services__title,
  .projects__title,
  .stats__title,
  .reviews__title,
  .news__title,
  .contact__title {
    font-size: 5rem;
  }
  .services__list {
    flex-direction: column;
  }
  .services__service {
    width: 95%;
    margin-top: 1rem;
    margin-bottom: 1rem;
    padding: 4rem 2.5rem;
  }
  .service-shapes--shape2 {
    display: none;
  }
  .layout__projects {
    padding: 8rem 4rem;
  }
  .project-shapes--shape2 {
    display: none;
  }
  .layout__stats,
  .layout__clients {
    padding: 8rem 5rem;
  }
  .stats__description,
  .clients__description {
    font-size: 1.7rem;
    width: 100%;
  }
  .stats__progress {
    flex-wrap: wrap;
  }
  .stats__stat {
    width: calc(50% - 1.5rem);
  }
  .layout__reviews {
    padding-top: 8rem;
    padding-bottom: 5rem;
  }
  .reviews__description,
  .news__description {
    width: 100%;
    font-size: 1.7rem;
  }
  .reviews__container {
    flex-direction: column;
  }
  .clients__title {
    width: 100%;
    font-size: 5rem;
  }
  .clients__logos {
    flex-wrap: wrap;
  }
  .clients__item {
    width: calc(50% - 3rem);
  }
  .layout__news {
    padding: 8rem 0;
  }
  .layout__contact {
    padding-top: 8rem;
    padding-bottom: 4rem;
  }
  .layout__contact::before {
    height: 60rem;
  }
  .contact__title {
    width: 100%;
  }
  .contact__btn {
    padding: 1.8rem 3.5rem;
  }
  .contact__thumb--chat {
    margin-right: -13rem;
    margin-bottom: -0.8rem;
    width: 70%;
  }
  .contact__img {
    width: 100%;
  }
  .contact__thumb--laptop {
    bottom: 0;
    left: 0;
  }
  .contact__thumb--mobile {
    bottom: 0;
    right: -8rem;
  }
  .contact__img {
    width: 70%;
  }
  .social__img {
    font-size: 2rem;
  }
  .footer__main {
    display: flex;
    flex-direction: column;
  }
  .footer__fleft {
    width: 100%;
  }
  .fleft__container {
    border: none;
  }
  .footer__fright {
    width: 100%;
  }
  .footer__bottom {
    flex-direction: column;
  }
  .footer__copyright {
    flex-basis: auto;
    text-align: center;
    display: block;
    margin-bottom: 1rem;
  }
  .footer__links {
    flex-basis: auto;
    text-align: center;
  }
  .footer__flinks {
    justify-content: center;
  }
}
@media (max-width: 770px) {
  .layout__banner {
    margin: 0 3rem;
    padding: 8rem 3rem;
  }
  .banner__title {
    font-size: 4rem;
  }
  .layout__services {
    margin: 7rem 7rem;
  }
  /*.services__grid, .projects__grid, .stats__container, .contact__container,*/
  .reviews__grid,
  .clients__container,
  .news__container,
  .footer__container {
    max-width: 54rem;
  }
  .services__subtitle,
  .projects__subtitle,
  .stats__subtitle,
  .reviews__subtitle,
  .clients__subtitle,
  .news__subtitle,
  .contact__subtitle {
    font-size: 1.6rem;
  }
  .services__title,
  .projects__title,
  .stats__title,
  .reviews__title,
  .news__title,
  .contact__title {
    font-size: 5rem;
  }
  .layout__projects {
    padding: 6rem 5rem;
  }
  .projects__all {
    flex-direction: column;
  }
  .projects__project {
    width: 100%;
  }
  .projects__categories {
    flex-wrap: wrap;
    gap: 1.2rem 2rem; /* reduce el gap grande que empuja el ancho */
  }
  .categories__item {
    white-space: nowrap; /* evita cortes feos en cada tag */
  }
  .layout__stats,
  .layout__clients {
    padding: 6rem 3rem;
  }
  .stat__count {
    font-size: 4.4rem;
  }
  .layout__reviews {
    padding-top: 6rem;
    padding-bottom: 3rem;
  }
  .reviews__review {
    padding-top: 2rem;
    padding-bottom: 3rem;
  }
  .layout__news {
    padding: 6rem 0;
  }
  .news__new {
    display: flex;
    flex-direction: column;
  }
  .new__container-img {
    width: 100%;
  }
  .new__img {
    width: 100%;
  }
  .new__title {
    font-size: 2rem;
  }
  .layout__contact {
    padding-top: 6rem;
    padding-bottom: 4rem;
  }
  .layout__contact::before {
    height: 48rem;
  }
  .contact__thumb--chat {
    margin-right: -10rem;
    margin-bottom: -0.8rem;
    width: 50%;
  }
  .contact__thumb--laptop {
    bottom: 0;
    left: 12rem;
  }
  .contact__thumb--mobile {
    bottom: 0;
    right: -8rem;
  }
  .contact__thumb--laptop .contact__img,
  .contact__thumb--mobile .contact__img {
    width: 35%;
  }
  .fleft__container {
    padding-right: 0;
    margin-right: 0;
    margin-bottom: 8rem;
  }
}
@media (max-width: 640px) {
  .layout__projects,
  .stats__container,
  .contact__container,
  .reviews__grid,
  .clients__container,
  .news__container,
  .footer__container {
    padding-left: 3rem;
    padding-right: 3rem;
  }
  .layout__services {
    margin-left: 3rem;
    margin-right: 1rem;
  }
  .contact__thumb--chat {
    margin-right: -13rem;
    margin-bottom: -0.8rem;
    width: 70%;
  }
  .contact__thumb--laptop {
    bottom: 0;
    left: 0;
  }
  .contact__thumb--mobile {
    bottom: 0;
    right: -21rem;
  }
  .contact__thumb--laptop .contact__img,
  .contact__thumb--mobile .contact__img {
    width: 35%;
  }
  .footer__fright {
    display: flex;
    flex-direction: row;
    flex-basis: 100%;
    gap: 4rem;
  }
  .footer__widget--50 {
    flex-basis: auto;
  }
  .copyright__text {
    font-size: 1.6rem;
  }
}
@media (max-width: 485px) {
  .footer__container {
    padding-left: 2rem;
    padding-right: 2rem;
  }
  .footer__main {
    gap: 2.4rem;
  }
  .fleft__title {
    font-size: 3rem;
    line-height: 1.15;
  }
  .fleft__subtitle {
    font-size: 1.6rem;
    margin-bottom: 2rem;
  }
  .fleft__container {
    padding-right: 0;
    margin-right: 0;
    margin-bottom: 5rem;
    border: none;
  }
  .fleft__group {
    display: grid;
    grid-template-columns: 2.4rem 1fr;
    align-items: center;
    gap: 1rem;
    height: auto;
    padding: 1rem;
    border-radius: 16px;
    box-shadow: 0 24px 48px -15px #ddd;
  }
  .fleft__mail-icon {
    margin-left: 0;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .fleft__img {
    font-size: 2rem;
    line-height: 1;
  }
  .fleft__form-control {
    grid-column: 2 / 3;
    padding: 1.2rem;
    font-size: 1.6rem;
    min-width: 0;
  }
  .fleft__btn {
    grid-column: 1 / -1;
    width: 100%;
    height: 4.8rem;
    font-size: 1.6rem;
    padding: 1.2rem 2rem;
    border-radius: 14px;
  }
  .footer__fleft {
    justify-content: center;
    align-items: center;
    text-align: center;
  }
  .footer__fright {
    flex-direction: column;
    gap: 2.4rem;
    flex-basis: 100%;
    justify-content: center;
    align-items: center;
    text-align: center;
  }
  .footer__widget,
  .footer__widget--50,
  .footer__widget--25 {
    flex-basis: 100%;
  }
  .widget__title {
    font-size: 1.8rem;
    margin-bottom: 1.2rem;
    line-height: 1.25;
  }
  .widget__list {
    display: grid;
    grid-template-columns: 1fr;
    row-gap: 0.4rem;
  }
  .widget__link {
    font-size: 1.6rem;
    padding: 0.6rem 0;
    white-space: normal;
    overflow-wrap: anywhere;
    word-break: break-word;
  }
  .banner__title,
  .services__title,
  .projects__title,
  .stats__title,
  .reviews__title,
  .clients__title,
  .news__title,
  .contact__title {
    font-size: 3rem;
  }
}
