html{font-size:16px;box-sizing:border-box;-webkit-text-size-adjust:100%}
*,*::before,*::after{box-sizing:inherit}
body{min-height:100vh;line-height:1.5;font-family:Inter,ui-sans-serif,system-ui,Segoe UI,Roboto,"Helvetica Neue",Arial;background-clip:padding-box}
img,video,svg{max-width:100%;height:auto;display:block;object-fit:cover}
a{color:inherit;text-decoration:none}
button,input,textarea{font-family:inherit}
:focus{outline:none}
:focus-visible{outline:2px solid rgba(22,163,74,0.12);outline-offset:3px;box-shadow:0 0 0 4px rgba(22,163,74,0.08);border-radius:0.75rem}
.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}
.no-scroll{height:100vh;overflow:hidden}
#mobileMenu{opacity:0;pointer-events:none}
#mobileMenu[aria-hidden="false"]{opacity:1;pointer-events:auto}
.iconify{display:inline-block;vertical-align:middle}
.rounded-2xl img{border-radius:1rem}
.rounded-xl img{border-radius:0.75rem}
.cookie-toast-hidden{transform:translateY(12px);opacity:0;pointer-events:none}
.cookie-toast-visible{transform:none;opacity:1}
.form-error{color:#991b1b;font-size:0.9rem}
.form-success{color:#065f46;font-size:0.95rem}
input[type="text"],input[type="email"],input[type="tel"],textarea{font-size:1rem}
button:disabled{opacity:0.6;cursor:not-allowed}
@media (max-width:640px){h1{font-size:1.75rem}h2{font-size:1.125rem}}
@media (prefers-reduced-motion:reduce){*{animation-duration:0.001ms!important;animation-iteration-count:1!important;transition-duration:0.001ms!important;scroll-behavior:auto!important}}