/* Mealor Enterprises site styles. Layered on top of Tailwind (navy + white). */

.font-display {
  font-feature-settings: 'liga' 1, 'kern' 1;
  font-optical-sizing: auto;
  letter-spacing: -0.015em;
}

html { scroll-behavior: smooth; }

/* Font-weight helpers mapped to the loaded Public Sans / Newsreader weights */
.font-400 { font-weight: 400; }
.font-500 { font-weight: 500; }
.font-600 { font-weight: 600; }
.font-700 { font-weight: 700; }
.font-800 { font-weight: 800; }

/* Nav gains a soft shadow once the page scrolls */
#nav.scrolled { box-shadow: 0 6px 24px -12px rgba(11, 37, 69, 0.25); }

/* Scroll-reveal: fade and lift into place on viewport entry */
[data-reveal] {
  opacity: 0;
  transform: translateY(18px);
  transition: opacity 0.6s ease, transform 0.6s ease;
  will-change: opacity, transform;
}
[data-reveal].is-visible { opacity: 1; transform: none; }

input:focus, textarea:focus { outline: none; }

/* Custom accordion markers */
details > summary { list-style: none; }
details > summary::-webkit-details-marker { display: none; }

/* Brand selection color (navy) */
::selection { background: #0B2545; color: #ffffff; }

/* Respect reduced motion */
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  [data-reveal] { opacity: 1; transform: none; transition: none; }
  * { animation-duration: 0.01ms !important; transition-duration: 0.01ms !important; }
}

/* Print: hide marketing chrome */
@media print {
  nav, footer, .bg-navy, .bg-navydeep { display: none !important; }
}
