:root{--color-primary: #15803D;--color-on-primary: #FFFFFF;--color-secondary: #22C55E;--color-accent: #0369A1;--color-background: #F0FDF4;--color-foreground: #14532D;--color-muted: #E8F0F1;--color-border: #BBF7D0;--color-destructive: #DC2626;--color-ring: #15803D}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:16px}body{font-family:Inter,sans-serif;line-height:1.6;color:var(--color-foreground);background-color:var(--color-background);overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-weight:600;color:var(--color-foreground);line-height:1.2}h1{font-size:2.5rem}h2{font-size:2rem;margin-bottom:1rem}h3{font-size:1.5rem;margin-bottom:.5rem}.container{width:min(100%,1200px);margin:0 auto;padding:0 1rem}.site-header{background:var(--color-background);border-bottom:1px solid var(--color-border);position:sticky;top:0;z-index:1000}.nav{display:flex;align-items:center;justify-content:space-between;height:4rem}.logo{font-size:1.25rem;font-weight:700;color:var(--color-primary);text-decoration:none}.nav-toggle{display:none;background:none;border:none;cursor:pointer;color:var(--color-foreground)}.nav-menu{display:flex;gap:1.5rem;list-style:none}.nav-link{text-decoration:none;color:var(--color-foreground);font-weight:500;transition:color .2s ease}.nav-link:hover,.nav-link:focus{color:var(--color-primary)}.hero{position:relative;min-height:80vh;display:flex;align-items:center;color:var(--color-on-primary);overflow:hidden}.hero-bg{position:absolute;top:0;right:0;bottom:0;left:0;background-image:url(/photo-1.jpg);background-size:cover;background-position:center;z-index:-2}.hero:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(#0f172a8c,#0f172acc);z-index:-1}.hero-content{max-width:800px}.hero-title{font-size:2.5rem;margin-bottom:1rem}.hero-subtitle{font-size:1.125rem;margin-bottom:1.5rem}.btn{display:inline-block;padding:.75rem 1.5rem;border-radius:.375rem;font-weight:600;text-decoration:none;transition:background-color .2s ease,opacity .2s ease;cursor:pointer}.btn-primary{background:var(--color-primary);color:var(--color-on-primary)}.btn-primary:hover,.btn-primary:focus{background:#106030;opacity:.9}.btn-secondary{background:var(--color-accent);color:var(--color-on-primary);margin-left:1rem}.btn-secondary:hover,.btn-secondary:focus{background:#02558a;opacity:.9}section{padding:4rem 0}.section-title{text-align:center;margin-bottom:2rem;color:var(--color-primary)}.section-copy{max-width:800px;margin:0 auto;text-align:center}.services-grid{display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.service-card{background:var(--color-background);border:1px solid var(--color-border);border-radius:.5rem;padding:1.5rem;text-align:center;transition:transform .2s ease,box-shadow .2s ease}.service-card:hover,.service-card:focus-within{transform:translateY(-4px);box-shadow:0 4px 12px #0000001a}.service-icon{width:40px;height:40px;margin-bottom:.75rem;stroke:var(--color-primary)}.service-title{font-size:1.25rem;margin-bottom:.5rem;color:var(--color-foreground)}.service-desc{font-size:.95rem;color:var(--color-foreground)}.testimonials-grid{display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.testimonial{background:var(--color-muted);border-left:4px solid var(--color-primary);padding:1rem;border-radius:.25rem}.testimonial p{margin-bottom:.5rem;font-style:italic}.testimonial cite{display:block;font-size:.9rem;color:var(--color-foreground);text-align:right}.map-wrapper{margin-top:2rem}.map-cta{display:inline-block;margin-top:.5rem}.site-footer{background:var(--color-primary);color:var(--color-on-primary);padding:2rem 0;text-align:center;font-size:.9rem}@media(max-width:768px){.nav-menu[hidden]{display:none}.nav-menu.show{display:flex;transform:translate(0)}.nav-toggle{display:block}.nav-menu{position:absolute;top:100%;right:0;background:var(--color-background);flex-direction:column;width:200px;padding:1rem;box-shadow:0 2px 8px #00000026;transform:translate(100%);transition:transform .3s ease}.nav-menu[hidden]{display:flex;transform:translate(100%)}.nav-menu.show{transform:translate(0)}.hero-title{font-size:2rem}.hero-subtitle{font-size:1rem}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}
