html{font-size:16px}
body{min-height:100vh;font-size:1rem;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
img,video{max-width:100%;height:auto;display:block;object-fit:cover}
.container{max-width:1200px;margin-left:auto;margin-right:auto;padding-left:1rem;padding-right:1rem}
:focus{outline:transparent}
:focus-visible{box-shadow:0 0 0 4px rgba(99,102,241,0.18);border-radius:8px}
button:disabled,button[aria-disabled="true"]{opacity:.6;cursor:not-allowed;transform:none}
.no-scroll{overflow:hidden;height:100%}
.iconify{vertical-align:middle;display:inline-block}
#mobileMenu{transition:opacity .28s ease,visibility .28s ease}
#mobileMenu.hidden{visibility:hidden;opacity:0;pointer-events:none}
#mobileMenu:not(.hidden){visibility:visible;opacity:1}
#mobileMenu > .fixed.inset-0.flex.items-center.justify-center > div{transition:transform .36s cubic-bezier(.2,.9,.3,1),opacity .28s ease}
#mobileMenu.hidden > .fixed.inset-0.flex.items-center.justify-center > div{transform:translateY(8px);opacity:0}
#mobileMenu:not(.hidden) > .fixed.inset-0.flex.items-center.justify-center > div{transform:translateY(0);opacity:1}
#mobileOverlay{transition:opacity .28s ease}
#mobileMenu.hidden #mobileOverlay{opacity:0}
#mobileMenu:not(.hidden) #mobileOverlay{opacity:.5}
#cookieBanner{transition:transform .24s ease,opacity .24s ease}
#cookieBanner.hidden{transform:translateY(12px);opacity:0;pointer-events:none}
#cookieBanner:not(.hidden){transform:translateY(0);opacity:1}
a{color:inherit}
header img,footer img{display:block}
.card-img{max-height:320px}
.rounded-xl{border-radius:1rem}
.rounded-2xl{border-radius:1.25rem}
.shadow-md{box-shadow:0 6px 18px rgba(17,24,39,0.06)}
.shadow-lg{box-shadow:0 12px 30px rgba(17,24,39,0.08)}
.h-80{height:20rem}
@media (max-width:640px){.container{padding-left:1rem;padding-right:1rem}.h-80{height:14rem}}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
