html { font-size: 16px; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
body { font-family: Inter, system-ui, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif; color: #0f172a; background-color: #ffffff; line-height: 1.6; }
img { max-width: 100%; height: auto; display: block; object-fit: cover; }
.iconify { display: inline-block; vertical-align: middle; }
:focus { outline: none; }
:focus-visible { box-shadow: 0 0 0 4px rgba(124,58,237,0.16); border-radius: 0.5rem; }
button:disabled, a[aria-disabled="true"] { opacity: 0.6; pointer-events: none; }
.no-scroll { overflow: hidden; }
#mobileMenu[aria-hidden="false"] { display: block; }
#mobileMenu[aria-hidden="false"] > div > div[role="dialog"] { transform: translateY(0) scale(1); opacity: 1; }
#mobileMenu[aria-hidden="true"] > div > div[role="dialog"] { transform: translateY(8px) scale(0.98); opacity: 0; }
.container { max-width: 80rem; margin-left: auto; margin-right: auto; padding-left: 1rem; padding-right: 1rem; }
@media (min-width: 640px) { .container { padding-left: 1.5rem; padding-right: 1.5rem; } }
@media (min-width: 1024px) { .container { padding-left: 2.5rem; padding-right: 2.5rem; } }
.cookie-compact { max-width: 20rem; }
footer a { color: inherit; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
@keyframes subtle-tilt { 0% { transform: rotate(-1deg); } 50% { transform: rotate(1deg); } 100% { transform: rotate(-1deg); } }
.animated-decor { animation: subtle-tilt 8s ease-in-out infinite; transform-origin: center; }
@media (prefers-reduced-motion: reduce) { .animated-decor { animation: none; } }
