/* Focused audit repairs; preserve the black, gold, and serif design. */
:is(a, button, input, textarea, select):focus-visible {
  outline: 3px solid #f4d69d !important;
  outline-offset: 4px;
}
:is(input, textarea, select, button, a) { scroll-margin-block: 170px 24px; }
.php-email-form label { display: block; color: #e4ddd1; font-size: 14px; margin-bottom: 8px; }
.php-email-form input, .php-email-form textarea { font-size: 16px !important; border-color: #8f8472 !important; }
.php-email-form input::placeholder, .php-email-form textarea::placeholder { color: #bfb7aa !important; opacity: 1; }
.php-email-form button[type="submit"], .php-email-form button[type="submit"]:hover { color: #0c0b09 !important; }
.php-email-form .validate { color: #ffb5ab !important; }
.php-email-form .error-message { white-space: pre-line; background: #8b251b !important; }
.php-email-form .sent-message { background: #24653c !important; }
.why-us .box:hover :is(h3, span, p), .nav-menu .book-a-table a:hover,
#hero .btn-book:hover, .back-to-top:hover i { color: #0c0b09; }
.events .owl-dot { width: 32px; height: 32px; position: relative; background: transparent !important; }
.events .owl-dot.active { background: transparent !important; }
.events .owl-dot::after { content: ""; position: absolute; inset: 10px; border-radius: 50%; background: #777064; }
.events .owl-dot.active::after { background: #cda45e; }
.mobile-nav-close, .mobile-nav-toggle { min-width: 44px; min-height: 44px; }
.mobile-nav { transition-property: opacity; }
.mobile-nav .book-a-table a:hover { color: #0c0b09; }
/* Content remains available if animation scripts fail or JavaScript is disabled. */
html:not(.aos-ready) [data-aos] { opacity: 1 !important; transform: none !important; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto !important; } }
