*{box-sizing:border-box;margin:0;padding:0;font-family:Arial,Helvetica,sans-serif;}
body{line-height:1.6;color:#333;background:#fafafa;}
.container{max-width:1200px;margin:0 auto;padding:0 1rem;}
header.site-header{background:#1f2937;color:#fff;}
header .logo{font-size:1.5rem;font-weight:bold;color:#fff;text-decoration:none;}
header nav a{color:#fff;margin:0 0.5rem;text-decoration:none;padding:1rem 0;display:inline-block;}
.top-cta .phone{font-weight:bold;}
.slider{position:relative;overflow:hidden;height:60vh;min-height:400px;}
.slider img{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity 1s;}
.slider img.active{opacity:1;}
.hero-text{position:absolute;bottom:2rem;
    left:50%;
    transform:translateX(-50%);left:2rem;color:#fff;background:rgba(0,0,0,0.5);padding:1rem;border-radius:4px;}
.btn{display:inline-block;background:#ef4444;color:#fff;padding:0.75rem 1.25rem;border:none;border-radius:4px;text-decoration:none;}
.btn.secondary{background:#2563eb;}
section.copy{padding:3rem 0;}
.long-copy p{margin-bottom:1rem;text-align:justify;}
.service-list article{margin-bottom:2rem;}
.page-header{background:#111827;color:#fff;padding:2rem;text-align:left;}
.callout{background:#dc2626;color:#fff;text-align:center;padding:2rem;}
.contact-section{{display:flex;flex-wrap:wrap;gap:2rem;padding:3rem 0;}}
form#contactForm{{flex:1 1 300px;display:flex;flex-direction:column;gap:1rem;background:#fff;padding:1.5rem;border-radius:4px;box-shadow:0 2px 4px rgba(0,0,0,0.1);}}
form#contactForm label{{display:flex;flex-direction:column;font-weight:600;font-size:0.9rem;}}
form#contactForm input,form#contactForm textarea{{padding:0.5rem;border:1px solid #ccc;border-radius:3px;}}
form#contactForm textarea{{min-height:120px;resize:vertical;}}
.map-wrap iframe{{width:100%;border:0;border-radius:4px;}}
footer.site-footer{{background:#1f2937;color:#fff;text-align:center;padding:2rem 1rem;margin-top:3rem;}}