html,body{height:100%}body{font-size:16px;line-height:1.5;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,'Noto Sans',sans-serif;color:#1f2937;background-color:#ffffff;min-width:320px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{font-family:Merriweather,serif;color:#2E8B57;margin-top:0}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto;display:block;object-fit:cover}button{font-family:inherit}:focus{outline:none}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid rgba(46,139,87,0.16);box-shadow:0 0 0 4px rgba(46,139,87,0.12);border-radius:8px}.iconify{display:inline-block;vertical-align:middle}header .container{padding-left:1rem;padding-right:1rem}@media(min-width:640px){header .container{padding-left:1.5rem;padding-right:1.5rem}}@media(min-width:1024px){header .container{padding-left:2.5rem;padding-right:2.5rem}}/****** Layout helpers ******/.rounded-2xl{border-radius:1rem}.rounded-xl{border-radius:.75rem}.shadow-lg{box-shadow:0 10px 25px rgba(31,41,55,0.08)}.shadow-md{box-shadow:0 6px 18px rgba(31,41,55,0.06)}.focus-ring{box-shadow:0 0 0 4px rgba(46,139,87,0.12)}.bg-brand-gradient{background:linear-gradient(90deg,#58bf74 0%,#2E8B57 100%)}.btn-primary{background-image:linear-gradient(90deg,#58bf74,#2E8B57);color:#ffffff;padding:.6rem 1.2rem;border-radius:1rem;border:0;display:inline-flex;align-items:center;gap:.5rem}@media(prefers-reduced-motion:reduce){.animate-fade-in,.animate-beam{animation:none!important}}.animate-fade-in{animation:fadeIn 800ms ease-out both}.animate-beam{animation:beam 600ms ease-out both}@keyframes fadeIn{0%{opacity:0}100%{opacity:1}}@keyframes beam{0%{opacity:0;transform:translateY(8px)}100%{opacity:1;transform:translateY(0)}}/****** Cookie banner adjustments ******/#cookieBanner{max-width:22rem;min-width:18rem;box-shadow:0 12px 30px rgba(2,6,23,0.08)}@media(min-width:640px){#cookieBanner{max-width:24rem}}/****** Mobile menu backdrop and focus lock styles ******/#mobileMenu{touch-action:manipulation}#mobileMenu [role="button"]{touch-action:manipulation}#menuBackdrop{opacity:.6}#mobileMenu .animate-fade-in{animation-duration:320ms}footer address{font-style:normal}input,textarea,select{font-family:inherit;font-size:1rem;border-radius:8px;border:1px solid #e6eaf0;padding:.5rem .75rem;color:#0f172a;background:#ffffff}input:disabled,textarea:disabled{opacity:.6}label{display:block;margin-bottom:.375rem;color:#0f172a;font-weight:600}form .error{color:#b91c1c;font-size:.9rem;margin-top:.375rem}form .success{color:#065f46;font-size:.95rem;margin-top:.375rem}article,section,nav,main,header,footer{scroll-behavior:smooth}svg{max-width:100%}kbd{background:#111827;color:#fff;padding:.125rem .4rem;border-radius:.35rem;font-size:.85em}/* Ensure high contrast for interactive text */a,button,input,textarea,select{color-contrast: from(#2E8B57 on #ffffff)  >= 4.5 ? #2E8B57 : #064e3b}/* Avoid overflow issues */*{box-sizing:border-box}container{max-width:100%}