/* Goel Law Professional Corporation — global styles */

html {
  scroll-behavior: smooth;
}

h1, h2, h3, h4, h5, h6 {
  font-family: 'Playfair Display', Georgia, serif;
}

/* Scroll-in fade/slide animation */
/* Offset anchor scroll (e.g. #contact-form) so the sticky header doesn't cover it */
#contact-form {
  scroll-margin-top: 100px;
}

/* Prevent iOS Safari from auto-zooming the page when a form field is focused.
   Any input/select/textarea under 16px triggers this on iPhone, which then
   leaves the page in a zoomed-in state that makes scrolling feel broken. */
input,
select,
textarea {
  font-size: 16px;
}
@media (min-width: 640px) {
  input,
  select,
  textarea {
    font-size: 0.875rem; /* restore the intended text-sm size on larger screens where iOS zoom doesn't apply */
  }
}

.reveal {
  opacity: 0;
  transform: translateY(24px);
  transition: opacity 0.7s ease, transform 0.7s ease;
}
.reveal.is-visible {
  opacity: 1;
  transform: translateY(0);
}
.reveal-delay-1 { transition-delay: 0.08s; }
.reveal-delay-2 { transition-delay: 0.16s; }
.reveal-delay-3 { transition-delay: 0.24s; }
.reveal-delay-4 { transition-delay: 0.32s; }
.reveal-delay-5 { transition-delay: 0.4s; }

/* Testimonial fade slider */
.testimonial-slide {
  display: none;
  opacity: 0;
  transition: opacity 0.5s ease;
}
.testimonial-slide.active {
  display: block;
  opacity: 1;
}

/* FAQ accordion */
.faq-answer {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.35s ease;
}
.faq-item.open .faq-answer {
  max-height: 400px;
}
.faq-item .faq-icon {
  transition: transform 0.3s ease;
}
.faq-item.open .faq-icon {
  transform: rotate(45deg);
}

/* Simple grayscale-on-hover image treatment for a monochrome brand feel */
.img-mono {
  filter: grayscale(100%) contrast(1.05);
}

::selection {
  background: #0A0A0A;
  color: #FFFFFF;
}
