@media screen and (max-width: 1024px) {
  .mw {
    max-width: 768px !important;
  }

  .w-70,
  .w-50 {
    width: 100%;
  }

  .swiper-pagination .swiper-pagination-bullet {
    width: 50px;
    margin: 0 6px !important;
  }

  .nav-open main,
  .nav-open .site-footer {
    transform: translateY(-144px);
  }

  .nav-close main,
  .nav-close .site-footer {
    transform: translateY(0);
  }

  header.site-header {
    display: flex;
    align-items: center;
    top: unset;
    bottom: 0;
    height: 64px;
    background-color: var(--white) !important;
    box-shadow: 5px 0px 10px #00000010 !important;
  }

  .nav-open header.site-header {
    box-shadow: unset !important;
  }

  header.site-header svg line {
    stroke: var(--text-primary);
  }

  header.site-header .site-branding {
    display: none;
  }

  header.site-header .main-navigation {
    margin: auto;
  }

  .site-header .inside-header .site-branding-container {
    justify-content: center;
  }

  .main-navigation.sub-menu-right {
    top: unset;
    bottom: 64px;
    height: calc(100dvh - 64px);
    min-height: calc(100dvh - 64px);
    transform: translateY(calc(100% + 64px));
  }

  .nav-open .main-navigation::before {
    content: '';
    display: block;
    position: fixed;
    bottom: -1px;
    left: 4rem;
    width: 54px;
    height: 66px;
    background-image: url("data:image/svg+xml,%3Csvg width='54' height='66' viewBox='0 0 54 66' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 65.9551L53.68 0.325081V65.9551H0Z' fill='white'/%3E%3C/svg%3E%0A");
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
  }

  .nav-close .main-navigation.sub-menu-right {
    transform: translateY(calc(100% + 64px));
  }

  .main-navigation.sub-menu-right ul {
    padding-top: 4.4rem;
    padding-left: 0;
  }

  .main-navigation.sub-menu-right ul li {
    margin-bottom: 2.4rem;
  }

  .main-navigation.sub-menu-right ul li a {
    font-size: 5rem;
  }

  .hero__slider {
    height: calc(100vh - 164px) !important;
  }

  .hero__slider .swiper-pagination {
    bottom: 3.2rem !important;
  }

  .hero__text {
    pointer-events: none;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-between;
    gap: 2.4rem;
    width: 100%;
    max-width: 768px;
    padding-inline: 4rem;
    bottom: 6.4rem;
  }

  .hero__text .hero__title {
    font-size: 25px;
  }

  .hero__logo-wrapper {
    display: flex !important;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100px;
    background-color: var(--white);
    z-index: 100;
  }

  .hero__logo-wrapper img {
    width: 88px;
    height: 72px;
  }

  .about-wrapper {
    padding-block: 6.4rem;
  }

  .about-wrapper .w-50 p {
    font-size: 1.6rem;
  }

  .aziende-wrapper,
  .activities {
    padding-top: 4rem;
  }

  .aziende-wrapper {
    padding-bottom: 6.4rem;
  }

  .services,
  .contacts {
    padding-bottom: 0;
  }

  .aziende-wrapper h2 {
    text-align: left;
    font-size: 3rem;
  }

  .aziende-wrapper .triangle-shape--left {
    bottom: -147.27px;
  }

  .partners__swiper:not(.swiper-initialized)>div:first-child {
    grid-template-columns: repeat(2, 1fr);
    grid-gap: 2rem;
    gap: 2rem;
  }

  .service:nth-child(even),
  .service:nth-child(odd) {
    padding: 0;
    margin: 0 0 12rem 0 !important;
    max-width: 100% !important;
    text-align: center;
  }

  .activities__title {
    display: flex;
  }

  .activities .triangle-shape--right {
    display: none;
  }

  /* Lightbox */

  .lightbox {
    height: 100dvh;
  }

  .lightbox .content .title {
    padding-bottom: 0;
    margin-bottom: 2.4rem;
    font-size: 2rem;
    line-height: 1.2;
  }

  .lightbox .content {
    max-width: 90%;
    margin: auto;
    text-align: center;
  }

  .lightbox__content .content::after {
    content: '';
    display: block;
    position: absolute;
    left: 8rem;
    bottom: -76.5px;
    width: 65.5px;
    height: 57.5px;
    background-image: url("data:image/svg+xml,%3Csvg width='66' height='58' viewBox='0 0 66 58' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 0L65.4949 57.5V0H0Z' fill='white'/%3E%3C/svg%3E%0A");
  }

  .lightbox .content .title::after,
  .lightbox .gallery__wrapper::after,
  .lightbox .gallery__wrapper::before {
    display: none;
  }

  .lightbox__content .image {
    aspect-ratio: 3 / 2;
    height: auto;
    width: auto;
  }

  .lightbox__content .content::before {
    width: 105%;
    top: 2rem;
    right: -1rem;
  }

  .lightbox__close {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='48' height='48' viewBox='0 0 48 48'%3E%3Cg id='Icon_close' transform='translate(-11395 -3529)'%3E%3Ccircle id='Ellisse_11' data-name='Ellisse 11' cx='24' cy='24' r='24' transform='translate(11395 3529)' fill='%23fff'/%3E%3Cg id='icon_balloon_close' transform='translate(10220.75 3301.659)'%3E%3Cg id='Raggruppa_116' data-name='Raggruppa 116' transform='translate(1190.25 243.341)'%3E%3Cline id='Linea_5' data-name='Linea 5' x2='16' y2='15.693' transform='translate(0 0)' fill='none' stroke='%23382e62' stroke-linecap='round' stroke-width='2'/%3E%3Cline id='Linea_6' data-name='Linea 6' x1='16' y2='15.693' transform='translate(0 0)' fill='none' stroke='%23382e62' stroke-linecap='round' stroke-width='2'/%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E%0A");
  }

  .contacts h2,
  .services__title {
    margin-bottom: 6rem;
  }

  .wpcf7 .input-row>p,
  .wpcf7 .input-bottom-row {
    flex-direction: column;
    gap: 5rem;
    margin-bottom: 5rem;
  }

  .wpcf7 .input-bottom-row {
    gap: 2rem;
    margin-bottom: 0;
  }

  .wpcf7 .input-bottom-row>*,
  .wpcf7 .input-bottom-row>p {
    margin: 0;
    width: 100%;
  }

  .site-footer .pre-footer .mw {
    margin-top: 10rem;
  }

  .site-footer .pre-footer .mw>div>.is-layout-flex {
    flex-direction: column;
    align-items: flex-start;
    gap: 5rem;
  }

  .site-footer .pre-footer .mw>div>.is-layout-flex>figure {
    margin: auto;
  }

  .site-footer .bg-text .padding-inline {
    padding-top: 4rem;
    padding-bottom: 10.4rem;
  }

  .site-footer .bg-text .mw>div>.is-layout-flex,
  .site-footer .bg-text .mw>div>.is-layout-flex>.is-layout-flex {
    flex-direction: column;
    gap: 2rem;
  }

  .site-footer .bg-text .mw>div>.is-layout-flex>.is-layout-flex {
    gap: 1.2rem;
  }

  .site-footer .bg-text p.font-14 {
    font-size: 1.6rem;
  }
}

@media screen and (max-width: 768px) {
  .partners__swiper {
    left: -4rem;
    width: calc(100% + 8rem);
    padding-inline: 4rem !important;
  }
}

@media screen and (max-width: 575px) {
  .service::before {
    content: '';
    position: absolute;
    top: 1rem;
    left: -2.4rem;
    display: block;
    width: calc(100% + 4.4rem);
    height: 363px;
    background-image: url("/wp-content/uploads/2024/04/Balloon_over.svg");
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    z-index: -1;
    transform: scale(0);
    pointer-events: none;
    transform-origin: center;
    transition: transform 0.4s ease;
  }

  .service.active::before {
    transform: scale(1);
  }

  .service {
    min-height: 363px;
  }
}

@media screen and (max-width: 375px) {
  .main-navigation.sub-menu-right ul li a {
    font-size: 4.4rem;
  }

  .main-navigation.sub-menu-right ul li {
    margin-bottom: 2rem;
  }
}

@media screen and (max-width: 280px) {
  .main-navigation .inside-navigation {
    padding-inline: 2.4rem;
  }

  .main-navigation.sub-menu-right ul li a {
    font-size: 4rem;
  }

  .padding-inline,
  .hero__text {
    padding-inline: 2.4rem;
  }

  .partners__swiper {
    left: -2.4rem;
    width: calc(100% + 4.8rem);
    padding-inline: 2.4rem !important;
  }

}