/**
 * Safari / iOS WebKit fixes
 * Ensures consistent behavior on Safari desktop and iOS
 */

/* Global: prevent iOS text auto-scaling */
html {
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

@supports (-webkit-touch-callout: none) {
  /* iOS Safari: 100vh includes address bar, use fill-available */
  html {
    height: -webkit-fill-available;
    min-height: -webkit-fill-available;
  }
  body {
    min-height: 100vh;
    min-height: 100dvh;
    min-height: -webkit-fill-available;
  }
  .work-page-body {
    min-height: 100vh;
    min-height: 100dvh;
    min-height: -webkit-fill-available;
  }
}

/* Safari: consistent button/input appearance */
.contact-call-btn,
.contact-text-btn,
.contact-submit,
.btn,
.mobile-cta-btn {
  -webkit-appearance: none;
  appearance: none;
  -webkit-tap-highlight-color: transparent;
  touch-action: manipulation;
}

/* Safari: prevent input zoom on focus (16px minimum) */
.contact-form input,
.contact-form textarea,
.contact-form select {
  font-size: 16px !important;
}

@media (max-width: 920px) {
  .contact-form input,
  .contact-form textarea {
    font-size: 16px !important;
  }
}

/* Safari: smooth scrolling */
html {
  -webkit-overflow-scrolling: touch;
}

/* Safari: prevent overscroll bounce on fixed elements */
.mobile-cta {
  overscroll-behavior: contain;
  -webkit-overflow-scrolling: touch;
}
