*{box-sizing:border-box;margin:0;padding:0}body{color:#333;font-family:Arial,sans-serif;line-height:1.6}.navbar{z-index:1000;background:#fff;align-items:center;gap:2rem;width:100%;display:flex;position:fixed;top:0;box-shadow:0 2px 5px #0000001a}.center-nav{justify-content:space-between;align-items:center;width:95%;margin:auto;display:flex}.logo h1{color:#000;font-family:Aldrich;font-size:2rem}.nav-links{flex:1;justify-content:center;list-style:none;display:flex}.nav-phone{white-space:nowrap}.nav-phone a{color:#333;font-size:1.5rem;font-weight:700;text-decoration:none}.nav-links li a{color:#333;padding:.5rem 1rem;font-size:1.5rem;text-decoration:none;transition:color .5s,font-weight .5s}.nav-links li a:hover{color:#000;font-weight:700}#hero{text-align:center;color:#fff;background-color:#0000;background-image:linear-gradient(#00000080,#00000080),url(/images/service_hero.jpg);background-position:50%;background-repeat:repeat,repeat;background-size:cover;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;justify-content:center;align-items:center;height:80vh;margin-top:60px;padding:0 1rem;display:flex}.hero-content h1{margin-bottom:1rem;font-size:3rem}.hero-content p{margin-bottom:2rem;font-size:1.2rem}.cta-buttons{flex-wrap:wrap;justify-content:center;gap:1rem;display:flex}.cta-primary,.cta-appt{border-radius:5px;padding:1rem 2rem;font-weight:700;text-decoration:none;transition:transform .3s}.cta-primary{color:#fff;background:#000}.cta-appt{color:#fff;background:#1a73e8}.cta-primary:hover,.cta-appt:hover{transform:translateY(-3px)}#features{background:#f8f9fa;padding:4rem 5%}.feature-container{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem;max-width:1200px;margin:0 auto;display:grid}.feature-box{text-align:center;background:#fff;border-radius:10px;padding:2rem;box-shadow:0 2px 5px #0000001a}.feature-box i{color:#000;margin-bottom:1rem;font-size:2.5rem}#services{padding:4rem 5%}#services h2{text-align:center;margin-bottom:2rem}.services-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;max-width:1200px;margin:0 auto;display:grid}.service-card{background:#fff;border-radius:10px;transition:transform .3s;overflow:hidden;box-shadow:0 5px 10px #0000001a}.service-card:hover{transform:translateY(-5px)}.service-card img{object-fit:cover;width:100%;height:350px}.service-card h3,.service-card p{padding:1rem}.quote-section{background:#f8f9fa;padding:4rem 5%}.quote-container{max-width:800px;margin:0 auto}.quote-container h2{text-align:center;margin-bottom:2rem}.quote-form{gap:1rem;display:grid}.form-group input,.form-group textarea{border:1px solid #ddd;border-radius:5px;width:100%;padding:.8rem;font-size:1rem}.form-group textarea{resize:vertical;height:150px}.submit-btn{color:#fff;cursor:pointer;background:#000;border:none;border-radius:5px;padding:1rem;font-size:1rem;font-weight:700;transition:background-color .3s}.submit-btn:hover{background:#1557b0}.form-message{margin-top:.5rem;font-weight:700}footer{color:#fff;background:#333;padding:3rem 5% 1rem}.footer-content{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:2rem;max-width:1200px;margin:0 auto;display:grid}.footer-section h3{margin-bottom:1rem}.social-links{gap:1rem;margin-top:1rem;display:flex}.social-links a{color:#fff;font-size:1.5rem;transition:color .3s}.social-links a:hover{color:#000}.footer-bottom{text-align:center;border-top:1px solid #555;margin-top:2rem;padding-top:1rem}.hamburger{cursor:pointer;background:0 0;border:none;flex-direction:column;padding:0;display:none}.hamburger span{background:#333;width:25px;height:3px;margin:2px 0;transition:all .3s}.services-main{margin-top:60px}.services-hero{color:#fff;text-align:center;background:linear-gradient(#000000b3,#000000b3) 50%/cover;padding:4rem 2rem}.services-hero h1{margin-bottom:1rem;font-size:2.5rem}.services-hero p{max-width:800px;margin:0 auto;font-size:1.2rem}.service-types{max-width:1200px;margin:0 auto;padding:4rem 5%}.service-category{background:#fff;border-radius:10px;margin-bottom:4rem;overflow:hidden;box-shadow:0 2px 15px #0000001a}.service-category h2{color:#fff;background:#000;margin:0;padding:1.5rem}.service-category h2 i{margin-right:10px}.service-content{grid-template-columns:1fr 1fr;gap:2rem;padding:2rem;display:grid}.service-content img{border-radius:5px;width:100%;height:auto}.service-details{flex-direction:column;justify-content:space-between;display:flex}.service-features{margin:1rem 0;padding:0;list-style:none}.service-features li{padding:.5rem 0 .5rem 1.5rem;position:relative}.service-features li:before{content:"✓";color:#000;position:absolute;left:0}.service-cta{color:#fff;background:#000;border-radius:5px;margin-top:1rem;padding:1rem 2rem;text-decoration:none;transition:background-color .3s;display:inline-block}.service-cta:hover{background:#1557b0}.heater-types{margin-top:4rem}.heater-types h2{margin-bottom:1rem}.type-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;margin-top:2rem;display:grid}.type-card{text-align:center;background:#fff;border-radius:10px;padding:2rem;box-shadow:0 2px 15px #0000001a}.type-card i{color:#000;margin-bottom:1rem;font-size:2.5rem}.type-card h3{margin-bottom:1rem}.type-card ul{text-align:left;margin:1rem 0;padding:0;list-style:none}.type-card ul li{padding:.5rem 0 .5rem 1.5rem;position:relative}.type-card ul li:before{content:"•";color:#000;position:absolute;left:0}.appointment-main{margin-top:60px}.appointment-hero{color:#fff;text-align:center;background:linear-gradient(#000000b3,#000000b3);padding:4rem 2rem}.appointment-hero h1{margin-bottom:1rem;font-size:2.5rem}.appointment-hero p{max-width:800px;margin:0 auto;font-size:1.2rem}.booking-instructions{max-width:1200px;margin:0 auto;padding:2.5rem 5% 0}.booking-instructions h2{margin-bottom:1.25rem;font-size:1.5rem}.booking-instructions ol{gap:.75rem;margin-bottom:1.25rem;padding-left:1.5rem;display:grid}.booking-instructions li{font-size:1rem;line-height:1.6}.booking-instructions p{color:#555;font-size:1rem}.booking-instructions p a{color:#1a73e8;font-weight:700;text-decoration:none}.booking-instructions p a:hover{text-decoration:underline}.cal-wrapper{max-width:1200px;min-height:700px;margin:0 auto;padding:2rem 5%}.nav-links.mobile-show{z-index:1001;background:#fff;flex-direction:column;width:100%;display:flex;position:absolute;top:100%;left:0;box-shadow:0 2px 5px #0003}.nav-links.mobile-show li{text-align:center;padding:1rem}.hamburger.open span:first-child{transform:rotate(45deg)translate(5px,5px)}.hamburger.open span:nth-child(2){opacity:0}.hamburger.open span:nth-child(3){transform:rotate(-45deg)translate(5px,-5px)}@media (max-width:768px){.nav-links,.nav-phone{display:none}.hamburger{display:flex}.hero-content h1{font-size:2rem}.cta-buttons{flex-direction:column}.feature-container,.service-content{grid-template-columns:1fr}.services-hero h1{font-size:2rem}.type-grid{grid-template-columns:1fr}}@media (max-width:480px){.navbar{padding:1rem}.logo h1{font-size:1.5rem}#hero{height:60vh}.services-hero{padding:3rem 1rem}.service-types{padding:2rem 5%}}
