html{font-size:16px}
body{min-height:100vh;background-color:#ffffff;color:#0f172a}
img,video{max-width:100%;height:auto;display:block;object-fit:cover}
.container{max-width:1200px}
:focus{outline:none}
.focus-ring{box-shadow:0 0 0 4px rgba(31,182,155,0.12);border-radius:8px}
#mobileMenu{display:none;opacity:0;pointer-events:none;transition:opacity 280ms ease,transform 320ms cubic-bezier(.2,.9,.3,1)}
#mobileMenu[data-open="true"]{display:block;opacity:1;pointer-events:auto}
#mobileBackdrop{transition:opacity 240ms ease}
#mobileMenu .animate-fadeIn{animation:fadeIn 420ms ease both}
@keyframes fadeIn{0%{opacity:0;transform:translateY(6px)}100%{opacity:1;transform:translateY(0)}}
button[disabled],.disabled{opacity:.5;cursor:not-allowed;transform:none}
#cookieNotice{max-width:360px;min-width:240px;border-radius:12px}
@media (max-width:640px){#cookieNotice{left:1rem;right:1rem;bottom:1rem;max-width:none}}
a{transition:color .18s ease,transform .18s ease}
.card-media{overflow:hidden;border-radius:16px}
.grid-auto-fit{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}
.iconify{display:inline-block;vertical-align:middle}
.btn-focus{box-shadow:0 0 0 4px rgba(22,122,98,0.12);border-radius:12px}
.header-shadow{backdrop-filter:saturate(120%) blur(6px)}
.hero-bg{background-image:linear-gradient(120deg,rgba(31,182,155,0.06),rgba(22,122,98,0.03))}
.rounded-card{border-radius:20px}
.card-hover{transition:transform .24s cubic-bezier(.2,.9,.3,1),box-shadow .24s ease}
.card-hover:hover{transform:translateY(-6px);box-shadow:0 18px 40px rgba(15,23,42,0.08)}
.footer-link:focus,.nav-link:focus{outline:none;box-shadow:0 0 0 4px rgba(31,182,155,0.08);border-radius:6px}
input,textarea,select{min-height:44px;padding:.6rem .75rem;border-radius:.5rem;border:1px solid rgba(15,23,42,0.06)}
input:focus,textarea:focus,select:focus{border-color:rgba(31,182,155,0.6);box-shadow:0 0 0 4px rgba(31,182,155,0.08)}
.cookie-action{border-radius:8px;padding:.5rem .75rem}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
