* { box-sizing: border-box }
html, body { height: 100% }
body { -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale }
#site-header { background: #ffffff; color: #0f172a }
#site-header a { color: #0f172a }
.header-solid { background: #ffffff; box-shadow: 0 10px 25px -10px rgba(2,6,23,.15) }
.card { border: 1px solid #e2e8f0; border-radius: 0.75rem; background-color: #fff; transition: box-shadow .2s ease, transform .2s ease }
.card:hover { box-shadow: 0 25px 50px -12px rgba(2,6,23,.25); transform: translateY(-2px) }
.fade-in { opacity: 0; transform: translateY(8px); animation: fadeIn .4s ease forwards }
@keyframes fadeIn { to { opacity: 1; transform: translateY(0) } }
.img-cover { width: 100%; height: 100%; object-fit: cover }
.img-contain { width: 100%; height: 100%; object-fit: contain; background-color: #f1f5f9 }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); border: 0 }
html, body { -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none }
input, textarea, select { -webkit-user-select: text; -moz-user-select: text; -ms-user-select: text; user-select: text }
button, a { -webkit-tap-highlight-color: transparent }
