/* Media query per dispositivi piccoli desktop / laptop */
@media (max-width: 1024px) {
  /* About Section */
  .about-section {
    padding: 55px 20px;
  }

  .about-title {
    font-size: 26px;
  }

  .about-underline {
    width: 30%;
  }

  .about-text {
    font-size: 15.5px;
  }

  .about-display {
    flex-direction: row;
    gap: 35px;
  }

  .about-image {
    min-width: 280px;
  }

  /* Other sections */
  .gallery-section,
  .work-section,
  .contact-section {
    padding: 55px 20px;
  }

  .gallery-title,
  .work-title,
  .contact-title {
    font-size: 26px;
  }

  .gallery-description,
  .work-description,
  .contact-description {
    font-size: 15.5px;
  }

  .work-underline {
    width: 45%;
  }
  .gallery-underline {
    width: 30%;
  }
  .contact-underline {
    width: 35%;
  }

  .gallery-grid {
    gap: 13px;
  }

  .gallery-item {
    height: 190px;
  }

  .contact-container,
  .work-container {
    padding: 35px;
  }

  .work-form input,
  .contact-form input,
  .contact-form select,
  .contact-form textarea {
    font-size: 0.975rem;
    padding: 11px;
  }

  .send-button,
  .work-button {
    padding: 13px;
    font-size: 0.975rem;
  }

  .checkbox-container {
    font-size: 0.925rem;
    gap: 11px;
  }
  .checkbox-container input[type='checkbox'] {
    width: 17px;
    height: 17px;
  }
}

/* Media query per tablet (portrait/landscape) */
@media (max-width: 768px) {
  /* About Section */
  .about-section {
    padding: 50px 20px;
  }

  .about-title {
    font-size: 24px;
  }

  .about-underline {
    width: 35%;
  }

  .about-text {
    font-size: 15px;
  }

  .about-display {
    flex-direction: column;
    gap: 25px;
  }

  .about-image {
    min-width: 100%;
  }

  /* Other sections */
  .gallery-section,
  .work-section,
  .contact-section {
    padding: 50px 20px;
  }

  .gallery-title,
  .work-title,
  .contact-title {
    font-size: 24px;
  }

  .gallery-description,
  .work-description,
  .contact-description {
    font-size: 15px;
  }

  .work-underline {
    width: 40%;
  }
  .gallery-underline {
    width: 40%;
  }
  .contact-underline {
    width: 30%;
  }

  .gallery-grid {
    gap: 12px;
  }

  .gallery-item {
    height: 180px;
  }

  .contact-container,
  .work-container {
    padding: 30px;
  }

  .work-form input,
  .contact-form input,
  .contact-form select,
  .contact-form textarea {
    font-size: 0.95rem;
    padding: 11px;
  }

  .send-button,
  .work-button {
    padding: 13px;
    font-size: 0.95rem;
  }

  .lightbox-close {
    font-size: 45px;
  }

  .lightbox-arrow {
    width: 50px;
    height: 50px;
  }

  .checkbox-container {
    font-size: 0.9rem;
    gap: 10px;
  }
  .checkbox-container input[type='checkbox'] {
    width: 17px;
    height: 17px;
  }
}

/* Media query per dispositivi piccoli (mobile portrait) */
@media (max-width: 480px) {
  .about-section {
    padding: 40px 15px;
  }

  .about-title {
    font-size: 22px;
  }

  .about-underline {
    width: 55%;
  }

  .about-text {
    font-size: 14px;
  }

  .about-display {
    flex-direction: column;
    gap: 20px;
  }

  .about-image {
    min-width: 100%;
  }

  /* Other sections */
  .gallery-section,
  .work-section,
  .contact-section {
    padding: 40px 15px;
  }

  .privacy-group {
    margin: 10px 0 20px 0;
  }
  .checkbox-container {
    font-size: 0.85rem;
    gap: 8px;
  }
  .checkbox-container input[type='checkbox'] {
    width: 16px;
    height: 16px;
    margin-top: 1px;
  }

  .gallery-title,
  .work-title,
  .contact-title {
    font-size: 22px;
  }

  .gallery-description,
  .work-description,
  .contact-description {
    font-size: 14px;
  }

  .work-underline {
    width: 50%;
  }
  .gallery-underline {
    width: 60%;
  }
  .contact-underline {
    width: 40%;
  }

  .gallery-grid {
    gap: 10px;
  }

  .gallery-item {
    height: 150px;
  }

  .contact-container,
  .work-container {
    padding: 25px;
  }

  .work-form input,
  .contact-form input,
  .contact-form select,
  .contact-form textarea {
    font-size: 0.9rem;
    padding: 10px;
  }

  .send-button,
  .work-button {
    padding: 12px;
    font-size: 0.9rem;
  }

  .lightbox-content {
    max-width: 90%;
    max-height: 85%;
    width: auto;
    height: auto;
    object-fit: contain; /* mantiene le proporzioni */
  }

  .lightbox-arrow {
    width: 40px;
    height: 40px;
    min-width: 30px;
    font-size: 16px;
  }

  .lightbox-arrow-left {
    left: 5px;
  }

  .lightbox-arrow-right {
    right: 5px;
  }

  .lightbox-close {
    font-size: 50px;
    top: 5px;
    right: 30px;
  }
}
