/* UltraSoft Solutions — site styles that sit alongside the Tailwind utilities */
html { scroll-behavior: smooth; }
body { margin: 0; background: #fff; -webkit-font-smoothing: antialiased; }

/* Scroll-in animation (matches the original fade-up: 20px rise, 0.6s ease-out) */
[data-reveal] {
  opacity: 0;
  transform: translateY(20px);
  transition: opacity 0.6s ease-out, transform 0.6s ease-out;
  will-change: opacity, transform;
}
[data-reveal].is-visible { opacity: 1; transform: none; }
.no-js [data-reveal] { opacity: 1; transform: none; }

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  [data-reveal] { opacity: 1; transform: none; transition: none; }
}

/* Mobile: fixed backgrounds are unreliable on iOS, so let them scroll */
@media (max-width: 1023px) {
  section[style*="background-attachment: fixed"] { background-attachment: scroll !important; }
}

/* Form confirmation */
.form-status { border-radius: 0.5rem; padding: 1rem 1.25rem; font-size: 1rem; }
.form-status.ok { background: #ecfdf3; color: #166534; border: 1px solid #bbf7d0; }
.form-status.err { background: #fef2f2; color: #991b1b; border: 1px solid #fecaca; }
