:root{color-scheme: light dark}
html,body{height:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
img,video,picture{max-width:100%;height:auto;display:block;object-fit:cover}
.iconify{display:inline-block;vertical-align:middle}
body.no-scroll{overflow:hidden}
:focus{outline:none}
:focus-visible{outline:3px solid rgba(51,155,240,0.16);box-shadow:0 0 0 4px rgba(51,155,240,0.12);border-radius:8px}
#mobileMenu{transition:opacity 260ms ease,transform 260ms ease}
#mobileMenu.hidden{opacity:0;pointer-events:none}
#mobileMenu:not(.hidden){opacity:1}
#mobileOverlay{transition:opacity 260ms ease}
#mobileMenu .transform{transition:transform 260ms ease,opacity 260ms ease}
#mobileMenu.show .transform{transform:translateY(0);opacity:1}
#mobileMenu .transform{transform:translateY(8px);opacity:0}
#cookieConsent{transition:transform 240ms ease,opacity 240ms ease}
#cookieConsent.hidden{opacity:0;transform:translateY(8px);pointer-events:none}
button[disabled]{opacity:0.6;cursor:not-allowed}
.card-image{width:100%;height:10rem;object-fit:cover;border-radius:0.5rem}
.btn-primary{background-image:linear-gradient(90deg,#339bf0,#2e86d9);color:#ffffff;border-radius:12px;padding:0.6rem 1.1rem;font-weight:600}
.btn-secondary{background-color:#ffffff;border:1px solid rgba(27,64,110,0.08);color:#1b406e;border-radius:12px;padding:0.55rem 1rem;font-weight:600}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
@media (max-width:640px){html{font-size:16px}}