:root{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
html,body{height:100%}
body{min-height:100vh;background-color:transparent}
img,svg,video{max-width:100%;height:auto;display:block;object-fit:cover}
.iconify{display:inline-block;vertical-align:middle}
a,button{transition:transform .18s ease,opacity .18s ease,color .18s ease}
:focus-visible{outline:3px solid rgba(59,130,246,.65);outline-offset:3px;border-radius:.5rem}
button:focus{box-shadow:0 0 0 4px rgba(59,130,246,.12)}
button[disabled],.btn-disabled{opacity:.5;pointer-events:none}
#mobileMenu{transition:opacity .28s ease,transform .28s ease}
#mobileMenu.hidden{opacity:0;pointer-events:none;transform:translateY(-8px)}
#mobileMenu:not(.hidden){opacity:1;pointer-events:auto;transform:translateY(0)}
body.menu-open{overflow:hidden;height:100%;touch-action:none}
.menu-panel{transform-origin:top center}
.cookie-dismiss{transition:transform .2s ease,opacity .2s ease}
.cookie-animate-in{transform:translateY(0);opacity:1}
.cookie-animate-out{transform:translateY(8px);opacity:0}
.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}
.container img, .container video, .container svg{max-width:100%;height:auto}
.card-media{width:100%;height:220px;object-fit:cover;border-radius:.75rem}
.hero-media{width:100%;height:16rem;object-fit:cover}
@media (min-width:768px){.hero-media{height:20rem}.card-media{height:240px}}
@media (min-width:1024px){.hero-media{height:28rem}.card-media{height:260px}}
@media (max-width:640px){footer .container{padding-left:1rem;padding-right:1rem}#cookieNotice{width:90vw}}
