/* Core site styles extracted from former inline <style> for CSP hardening */
html { scroll-behavior: smooth; }
html, body { overflow-x: hidden !important; }
body { font-family: 'Inter', system-ui, -apple-system, Segoe UI, Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif; scrollbar-width: thin; scrollbar-color: #14B8A6 #F0FDFA; }
/* Hide elements until Alpine initializes */
[x-cloak] { display: none !important; }
main a:not(.focus-ring):not(.bg-primary):not(.border-primary):not(.text-white) { color: #0D9488; }
main a:hover { color: #14B8A6; }
.brand-heading { color: #14B8A6; }
.brand-subheading { color: #0D9488; }
.brand-border { border-color: #14B8A6 !important; }
.brand-gradient { background-image: linear-gradient(135deg, #99F6E4 0%, #14B8A6 60%, #0D9488 100%); }
.brand-icon { color: #0D9488; }
.focus-ring:focus { outline: 3px solid #14B8A6; outline-offset: 2px; }
.skip-link { position: absolute; left: -9999px; top: auto; width: 1px; height: 1px; overflow: hidden; }
.skip-link:focus { position: fixed; left: 1rem; top: 1rem; width: auto; height: auto; padding: 0.5rem 1rem; background: #14B8A6; color: #fff; border-radius: 0.5rem; z-index: 1000; }
@media (prefers-reduced-motion: reduce) { html:focus-within { scroll-behavior: auto; } *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; scroll-behavior: auto !important; } }
::-webkit-scrollbar { width: 12px; height: 12px; }
::-webkit-scrollbar-track { background: #F0FDFA; }
::-webkit-scrollbar-thumb { background-color: #14B8A6; border-radius: 6px; border: 3px solid #F0FDFA; }
::-webkit-scrollbar-thumb:hover { background: #0D9488; }
@media print { nav, header, footer, #backToTop, .skip-link, a.fixed { display:none !important; } #legal { box-shadow:none !important; border:none !important; } body { font-size:12pt; } }
