/* Shared keyboard, zoom and small-screen support. */
:focus-visible { outline: 3px solid #9b4300 !important; outline-offset: 4px; }
.skip-link { position: absolute; left: 1rem; top: -10rem; z-index: 9999; background: #fff; color: #173b28; padding: .8rem 1rem; }
.skip-link:focus { top: 1rem; }
html { scroll-padding-top: 1rem; }
body { overflow-wrap: anywhere; }
input, select, textarea, button { max-width: 100%; }
button, .btn, input:not([type=hidden]), select { min-height: 44px; }
img { max-width: 100%; }
.table-responsive:focus { outline: 3px solid #9b4300; }
@media (max-width: 576px) {
    .container { max-width: 100%; }
    .checkout-actions, .form-actions-bar { flex-wrap: wrap; gap: .75rem; }
    .checkout-card, .summary-card, .confirmation-card { padding: 1rem; }
    .info-grid { grid-template-columns: 1fr; }
    .navbar .navbar-nav { gap: .5rem !important; }
}
@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; transition-duration: .01ms !important; }
}
