html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;}body{min-height:100vh;line-height:1.6;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial;word-wrap:break-word;background-attachment:fixed;}img,video{max-width:100%;height:auto;display:block;object-fit:cover;border-style:none;}a,button,input,textarea{font-family:inherit}a:focus,button:focus,input:focus,textarea:focus{outline:none;box-shadow:0 0 0 4px rgba(42,168,111,0.12);border-radius:0.5rem;}button,select,input[type=button],input[type=submit]{cursor:pointer}button[disabled],input[disabled]{opacity:.6;cursor:not-allowed}#mobileMenu[aria-hidden="false"]{display:block}#mobileMenu[aria-hidden="true"]{display:none}body.lock-scroll,html.lock-scroll{height:100vh;overflow:hidden}.cookie-hidden{display:none!important}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}input[type=email],input[type=tel],input[type=text],textarea{min-height:44px;padding:.5rem .75rem;border-radius:.5rem;border:1px solid rgba(15,23,42,0.06)}.focus-ring{box-shadow:0 0 0 4px rgba(42,168,111,0.12);outline:none;border-radius:.5rem}.rounded-2xl{border-radius:1rem}.rounded-xl{border-radius:.75rem}.shadow-md{box-shadow:0 8px 20px rgba(2,6,23,0.06)}.shadow-lg{box-shadow:0 18px 50px rgba(2,6,23,0.08)}.hover-lift{transition:transform .28s cubic-bezier(.16,.84,.44,1),box-shadow .28s cubic-bezier(.16,.84,.44,1)}.hover-lift:hover{transform:translateY(-8px)}@keyframes fade-in{0%{opacity:0}100%{opacity:1}}@keyframes slide-up{0%{transform:translateY(12px);opacity:0}100%{transform:translateY(0);opacity:1}}@keyframes beam{0%{transform:translateY(0);opacity:0}100%{transform:translateY(-8px);opacity:1}}.animate-in-fade{animation:fade-in .6s ease both}.animate-up-slow{animation:slide-up .7s ease both}.animate-beam{animation:beam .9s cubic-bezier(.22,.9,.38,1) both}footer address,footer a,footer p{font-size:.95rem;color:#374151}@media (max-width:640px){.container{padding-left:1rem;padding-right:1rem}}