/* ====== ADDITIONAL OVERRIDES & FINE-TUNING ====== */

/* Smooth focus styles for accessibility */
a:focus-visible,
button:focus-visible {
  outline: 2px solid #325021;
  outline-offset: 4px;
  border-radius: 4px;
}

/* Selection color */
::selection {
  background: rgba(84, 130, 52, 0.2);
  color: #29401c;
}

/* ====== MOBILE NAV ANIMATION ====== */
body.menu-open {
  overflow: hidden;
}

/* ====== SCROLLBAR STYLING ====== */
::-webkit-scrollbar {
  width: 8px;
}
::-webkit-scrollbar-track {
  background: #fdf9ed;
}
::-webkit-scrollbar-thumb {
  background: #c6d9b0;
  border-radius: 4px;
}
::-webkit-scrollbar-thumb:hover {
  background: #9ebe78;
}

/* ====== REDUCED MOTION ====== */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
  html { scroll-behavior: auto; }
  .hero-image img { transition: none; }
  .room-card:hover { transform: none; }
  .room-card-image img { transition: none; }
  .gallery-item img { transition: none; }
  .experience-card:hover { transform: none; }
}

/* ====== PRINT STYLES ====== */
@media print {
  .navbar, .mobile-menu, .mobile-overlay, .cta-section { display: none; }
  body { color: #000; background: #fff; }
  .hero { min-height: auto; }
  section { padding: 2rem 1rem; }
}
