/* ===== GLOBAL MOBILE FIX ===== */
@media (max-width: 768px) {
  body {
    margin: 0;
    padding: 0;
    overflow-x: hidden;
  }
  .container {
    max-width: 100% !important;
    width: 100% !important;
    margin: 32px auto 0 !important;
    padding: 0 16px !important;
    box-sizing: border-box;
  }
  /* HEADER */
  #header {
    margin-top: 20px !important;
    padding: 0 16px;
    box-sizing: border-box;
  }
  #logo img {
    width: 220px !important;
    max-width: 80vw !important;
    height: auto !important;
  }
  /* NAV */
  #topNav {
    margin-top: 14px !important;
    padding: 0 8px;
  }
  #topNav ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 8px 14px;
    padding: 0;
    margin: 0;
  }
  #topNav li {
    display: block !important;
    margin: 0 !important;
  }
  #topNav a {
    font-size: 11px !important;
    letter-spacing: 0.8px !important;
    line-height: 1.4 !important;
    display: inline-block;
  }
  /* GALLERY */
  .gallery {
    margin-top: 28px !important;
  }
  .full img,
  .gallery .full img {
    width: 100% !important;
    height: auto !important;
    display: block;
    margin-bottom: 20px !important;
  }
  /* IMMAGINI E WRAPPER SHRINK -> FULL WIDTH SOLO SU MOBILE */
  .gallery > img.shrink-60,
  .gallery > img.shrink-65,
  .gallery > img.shrink-70,
  .gallery > img.shrink-75,
  .gallery > img.shrink-80,
  .gallery > div.shrink-60,
  .gallery > div.shrink-65,
  .gallery > div.shrink-70,
  .gallery > div.shrink-75,
  .gallery > div.shrink-80 {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
  /* TUTTE LE GRIGLIE A 2 COLONNE -> 1 COLONNA */
  .two-col,
  .two-col-23,
  .two-col-56,
  .gallery .two-col,
  .project-text {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 18px !important;
    margin-bottom: 20px !important;
  }
  /* FIX VERTICAL PAIR */
  .vertical-pair {
    display: flex !important;
    flex-direction: column !important;
    gap: 20px !important;
    margin-bottom: 20px !important;
  }
  .vertical-pair img {
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    display: block !important;
  }
  /* FIX IMMAGINI DENTRO BOX ALTI */
  .img-box {
    height: auto !important;
    width: 100% !important;
    overflow: visible !important;
  }
  .img-box img,
  .two-col img,
  .two-col-23 img,
  .two-col-56 img {
    width: 100% !important;
    height: auto !important;
    display: block;
    object-fit: contain !important;
    object-position: center center !important;
    transform: none !important;
  }
  .monceau5 img {
    transform: none !important;
  }
  /* TITOLI */
  .project-title {
    font-size: 22px !important;
    line-height: 1.25 !important;
    margin-bottom: 0 !important;
  }
  .project-subtitle {
    font-size: 14px !important;
    margin-left: 0 !important;
    display: block;
  }
  /* TESTO PROGETTO */
  .project-text {
    font-size: 14px !important;
    line-height: 1.7 !important;
  }
  .project-text > div {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }
  .project-text > div:last-child {
    text-align: left !important;
  }
  /* eventuali blocchi inline style flex del titolo */
  div[style*="display:flex"] {
    display: block !important;
  }
  /* BEFORE / AFTER */
  .ba-wrapper {
    margin-bottom: 20px !important;
  }
  .ba-handle::before,
  .ba-handle::after {
    width: 32px !important;
    height: 32px !important;
    margin-top: -16px !important;
  }
  .ba-arrows {
    width: 32px !important;
    height: 32px !important;
  }
  .ba-arrows svg {
    width: 22px !important;
    height: 22px !important;
  }

  /* STUDIO PHOTOS GRID */
  .page-wrapper {
    width: 100% !important;
    max-width: 100% !important;
    padding: 0 16px !important;
    box-sizing: border-box !important;
  }
  .studio-photos {
    display: flex !important;
    flex-direction: column !important;
    gap: 14px !important;
    margin-top: 24px !important;
    width: 100% !important;
  }
  .studio-photos a {
    display: block !important;
    width: 100% !important;
  }
  .studio-photos .photo-wrap {
    position: relative !important;
    width: 100% !important;
    padding-bottom: 66% !important;
    overflow: hidden !important;
  }
  .studio-photos .photo-wrap img {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
  }
}
