html,body{font-size:16px;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,'Helvetica Neue',Arial,'Noto Sans',sans-serif;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:white;color:#0f172a}
.iconify{display:inline-block;vertical-align:middle}
img{max-width:100%;height:auto;display:block;object-fit:cover}
button:focus{outline:none}
.focus-ring{box-shadow:0 0 0 4px rgba(16,163,74,0.14);border-radius:0.75rem}
.container{max-width:1280px;margin-left:auto;margin-right:auto;padding-left:1rem;padding-right:1rem}
#mobileMenu{display:none}
#mobileMenu.open{display:block}
#mobileMenu nav{transform:translateY(6px) scale(.98);opacity:0;transition:transform .32s cubic-bezier(.2,.9,.3,1),opacity .28s ease;will-change:transform,opacity}
#mobileMenu.open nav{transform:none;opacity:1}
body.menu-open{overflow:hidden;height:100vh}
#mobileOverlay{opacity:0;transition:opacity .28s ease}
#mobileMenu.open #mobileOverlay{opacity:1}
#cookieBanner{max-width:360px;min-width:260px}
#cookieBanner button{cursor:pointer}
.modal{background-color:rgba(255,255,255,0.96);backdrop-filter:blur(6px)}
.icon-decorative{opacity:.9;transition:transform .28s ease,opacity .28s ease}
.icon-decorative:focus,.icon-decorative:hover{transform:rotate(6deg) scale(1.03);opacity:1}
.card-image{border-radius:0.75rem;overflow:hidden}
.header-sticky{position:sticky;top:0;z-index:40}
@media (min-width:1024px){.container{padding-left:2.5rem;padding-right:2.5rem}}
@media (prefers-reduced-motion:reduce){#mobileMenu nav, #mobileOverlay, .icon-decorative, .card-image, .focus-ring{transition:none}}
