/* Behaviour and accessibility additions; original visual theme is retained. */
[hidden] { display: none !important; }
.form-trap { position: absolute; left: -10000px; width: 1px; height: 1px; overflow: hidden; }
.form-feedback { margin-top: 1rem; white-space: pre-line; }
.form-feedback[data-state="error"] { color: #bf293a; }
.form-feedback[data-state="success"] { color: #18864b; }
.form-feedback[data-state="demo"] { color: #8a6114; }
.footer-4 .form-feedback { color: #fff; font-size: 14px; }
button:disabled { opacity: .65; cursor: wait; }
.lang-container { display: flex; align-items: center; }
@media (max-width: 991px) { .lang-container { justify-content: center; } }
html { scroll-behavior: smooth; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }
.analytics-settings { border: 0; padding: 0; margin-left: .5rem; color: inherit; background: none; text-decoration: underline; font: inherit; cursor: pointer; }
.analytics-banner { position: fixed; z-index: 2000; bottom: 16px; left: 16px; right: 16px; max-width: 660px; margin: 0 auto; padding: 20px; border: 1px solid #ddd; border-radius: 12px; background: #fff; box-shadow: 0 4px 24px #0002; }
.analytics-banner p { color: #333; margin-bottom: 14px; font-size: 15px; line-height: 1.5; }
.analytics-actions { display: flex; flex-wrap: wrap; gap: 10px; }
.analytics-actions .btn { padding: 9px 18px; font-size: 14px; }
