/* ── Custom utility overrides & micro-interactions ── */

/* Selection color */
::selection {
  background: rgba(221, 90, 54, 0.2);
  color: #3d100a;
}

/* Focus visible for keyboard nav */
:focus-visible {
  outline: 2px solid #dd5a36;
  outline-offset: 2px;
}

/* Smooth image loading */
img {
  transition: opacity 0.3s ease;
}
img[loading="lazy"] {
  opacity: 0;
}
img[loading="lazy"].loaded {
  opacity: 1;
}

/* Subtle parallax-like effect on hero (pure CSS, no JS needed) */
@supports (background-attachment: fixed) {
  .hero-bg {
    background-attachment: fixed;
  }
}

/* Print styles */
@media print {
  header, footer, .reveal, #contact-form button {
    display: none !important;
  }
  body {
    color: #000;
    background: #fff;
  }
  .section-padding {
    padding: 2rem 1rem;
  }
}
