/* Custom styles that complement Tailwind — minimal overrides */

/* Ensure smooth rendering on all devices */
* {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* Selection color */
::selection {
  background: rgba(44, 79, 33, 0.15);
  color: #1c3515;
}

/* Subtle scrollbar */
::-webkit-scrollbar {
  width: 6px;
}
::-webkit-scrollbar-track {
  background: #f5f3ed;
}
::-webkit-scrollbar-thumb {
  background: #b9d0ae;
  border-radius: 3px;
}
::-webkit-scrollbar-thumb:hover {
  background: #8fb57d;
}

/* Prevent form autofill from breaking styles */
input:-webkit-autofill,
textarea:-webkit-autofill,
select:-webkit-autofill {
  -webkit-box-shadow: 0 0 0 30px #faf9f6 inset !important;
  -webkit-text-fill-color: #1c3515 !important;
  caret-color: #1c3515;
}

input:-webkit-autofill:focus,
textarea:-webkit-autofill:focus {
  -webkit-box-shadow: 0 0 0 30px #faf9f6 inset !important;
}

/* Image aspect ratios */
img {
  display: block;
}

/* Focus visible for accessibility */
a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible {
  outline: 2px solid #4a7a36;
  outline-offset: 2px;
  border-radius: 4px;
}

/* Print styles */
@media print {
  header, footer, .reveal {
    opacity: 1 !important;
    transform: none !important;
  }
  .hero-gradient {
    background: #2c4f21 !important;
  }
}
