*{margin:0;padding:0;box-sizing:border-box}:root{--primary-color: #2c5f4f;--secondary-color: #4a8b73;--accent-color: #ff6b35;--text-dark: #1a1a1a;--text-light: #4a4a4a;--bg-light: #f8f9fa;--white: #ffffff;--border-color: #e0e0e0;--shadow: 0 2px 8px rgba(0, 0, 0, .1);--shadow-hover: 0 4px 16px rgba(0, 0, 0, .15);--link-color: #2563eb;--link-hover: #1d4ed8}html{scroll-behavior:smooth}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;line-height:1.6;color:var(--text-dark);background-color:var(--white)}.container{max-width:1200px;margin:0 auto;padding:0 24px}.header{background-color:var(--white);box-shadow:var(--shadow);position:sticky;top:0;z-index:1000}.header .container{display:flex;justify-content:space-between;align-items:center;padding:16px 24px}.logo{display:flex;align-items:center}.logo-img{height:80px;width:auto;display:block}.main-nav ul{display:flex;list-style:none;gap:8px;align-items:center}.main-nav li{position:relative}.nav-link{display:block;padding:10px 16px;text-decoration:none;color:var(--text-dark);font-weight:500;font-size:15px;transition:color .3s ease;border-radius:6px}.nav-link:hover{color:var(--primary-color);background-color:var(--bg-light)}.dropdown{position:relative}.dropdown-menu{position:absolute;top:100%;left:0;background-color:var(--white);border-radius:8px;box-shadow:var(--shadow-hover);min-width:220px;opacity:0;visibility:hidden;transform:translateY(-10px);transition:all .3s ease;padding:8px 0;z-index:1001}.dropdown:hover .dropdown-menu{opacity:1;visibility:visible;transform:translateY(0)}.dropdown-menu a{display:block;padding:12px 20px;text-decoration:none;color:var(--text-dark);font-size:14px;transition:background-color .2s ease,color .2s ease}.dropdown-menu a:hover{background-color:var(--bg-light);color:var(--primary-color)}.hero{background:linear-gradient(135deg,#2c5f4fd9,#4a8b73d9),url(/assets/plumber-working-on-sink-in-bathroom-pvyqddc_optimized-C38ndmT2.jpg) center/cover;color:var(--white);padding:80px 24px;text-align:center;position:relative}.hero-content h2{font-size:42px;font-weight:700;margin-bottom:16px;line-height:1.2}.hero-content p{font-size:18px;margin-bottom:32px;opacity:.95}.cta-button{display:inline-block;padding:14px 32px;background-color:var(--accent-color);color:var(--white);text-decoration:none;border-radius:8px;font-weight:600;font-size:16px;transition:all .3s ease;box-shadow:0 4px 12px #ff6b354d}.cta-button:hover{background-color:#e55a2b;transform:translateY(-2px);box-shadow:0 6px 16px #ff6b3566}.intro-section{padding:64px 24px;background-color:var(--white)}.intro-content h2{font-size:32px;margin-bottom:16px;color:var(--primary-color);text-align:center}.intro-content>p{font-size:17px;color:var(--text-light);text-align:center;max-width:800px;margin:0 auto 48px}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px;margin-top:32px}.feature-card{background-color:var(--bg-light);padding:28px;border-radius:12px;transition:all .3s ease;border:1px solid var(--border-color)}.feature-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-hover);border-color:var(--primary-color)}.feature-card h3{font-size:20px;margin-bottom:12px;color:var(--primary-color)}.feature-card p{font-size:15px;color:var(--text-light);line-height:1.6}.services-preview{padding:64px 24px;background-color:var(--bg-light)}.services-preview h2{font-size:32px;text-align:center;margin-bottom:48px;color:var(--primary-color)}.services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:24px}.service-card{background-color:var(--white);padding:0;border-radius:12px;box-shadow:var(--shadow);transition:all .3s ease;text-align:center;overflow:hidden}.service-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-hover)}.service-image{width:100%;height:200px;object-fit:cover;display:block}.service-card h3{font-size:22px;margin:20px 24px 12px;color:var(--primary-color)}.service-card p{font-size:15px;color:var(--text-light);margin:0 24px 20px;line-height:1.6}.service-card .page-link{display:inline-block;color:var(--accent-color);text-decoration:none;font-weight:600;font-size:15px;transition:color .3s ease;margin-bottom:24px}.service-card .page-link:hover{color:var(--primary-color)}.quote-section{padding:64px 24px;background-color:var(--white)}.quote-form-wrapper{max-width:700px;margin:0 auto;background-color:var(--bg-light);padding:40px;border-radius:12px;box-shadow:var(--shadow)}.quote-form-wrapper h2{font-size:28px;margin-bottom:8px;color:var(--primary-color);text-align:center}.quote-form-wrapper>p{text-align:center;color:var(--text-light);margin-bottom:32px}.lead-form{display:flex;flex-direction:column;gap:20px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.form-group{display:flex;flex-direction:column}.form-group.full-width{grid-column:1 / -1}.form-group label{font-size:14px;font-weight:600;margin-bottom:8px;color:var(--text-dark)}.form-group input,.form-group textarea{padding:12px;border:1px solid var(--border-color);border-radius:6px;font-size:15px;font-family:inherit;transition:border-color .3s ease,box-shadow .3s ease;background-color:var(--white)}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #2c5f4f1a}.submit-btn{padding:14px 32px;background-color:var(--primary-color);color:var(--white);border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s ease;margin-top:8px}.submit-btn:hover{background-color:var(--secondary-color);transform:translateY(-2px);box-shadow:0 4px 12px #2c5f4f4d}.faq-section{padding:64px 24px;background-color:var(--bg-light)}.faq-section h2{font-size:32px;text-align:center;margin-bottom:48px;color:var(--primary-color)}.faq-container{max-width:800px;margin:0 auto}.faq-item{background-color:var(--white);border-radius:8px;margin-bottom:12px;overflow:hidden;box-shadow:var(--shadow);transition:box-shadow .3s ease}.faq-item:hover{box-shadow:var(--shadow-hover)}.faq-question{width:100%;padding:18px 24px;background:none;border:none;text-align:left;cursor:pointer;display:flex;justify-content:space-between;align-items:center;font-size:16px;font-weight:600;color:var(--text-dark);transition:background-color .3s ease}.faq-question:hover{background-color:var(--bg-light)}.faq-icon{font-size:24px;font-weight:300;color:var(--primary-color);transition:transform .3s ease;flex-shrink:0;margin-left:16px}.faq-item.active .faq-icon{transform:rotate(45deg)}.faq-answer{max-height:0;overflow:hidden;transition:max-height .4s ease,padding .4s ease;padding:0 24px}.faq-item.active .faq-answer{max-height:500px;padding:0 24px 20px}.faq-answer p{font-size:15px;line-height:1.7;color:var(--text-light)}.footer{background-color:var(--primary-color);color:var(--white);padding:48px 24px 24px}.footer-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:32px;margin-bottom:32px}.footer-col h3{font-size:18px;margin-bottom:16px;font-weight:600}.footer-col ul{list-style:none}.footer-col ul li{margin-bottom:10px}.footer-col a{color:#ffffffd9;text-decoration:none;font-size:14px;transition:color .3s ease}.footer-col a:hover{color:var(--white)}.footer-col p{font-size:14px;line-height:1.6;opacity:.85;margin-bottom:8px}.footer-bottom{text-align:center;padding-top:24px;border-top:1px solid rgba(255,255,255,.2)}.footer-bottom>p{font-size:14px;opacity:.8;margin-top:16px}.disclaimer{background-color:#0003;padding:20px;border-radius:8px;margin-bottom:16px}.disclaimer p{font-size:12px;line-height:1.6;opacity:.9;text-align:left;margin:0}.disclaimer strong{font-weight:600}.modal{display:none;position:fixed;z-index:2000;left:0;top:0;width:100%;height:100%;background-color:#0009;animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-content{background-color:var(--white);margin:10% auto;padding:0;border-radius:12px;max-width:500px;box-shadow:0 8px 32px #0003;position:relative;animation:slideDown .4s ease}@keyframes slideDown{0%{transform:translateY(-50px);opacity:0}to{transform:translateY(0);opacity:1}}.close-modal{position:absolute;top:16px;right:20px;font-size:28px;font-weight:300;color:var(--text-light);cursor:pointer;transition:color .3s ease}.close-modal:hover{color:var(--text-dark)}.modal-body{padding:48px 40px 40px;text-align:center}.modal-body h2{font-size:28px;color:var(--primary-color);margin-bottom:16px}.modal-body p{font-size:16px;color:var(--text-light);margin-bottom:28px;line-height:1.6}.modal-btn{padding:12px 28px;background-color:var(--primary-color);color:var(--white);border:none;border-radius:6px;font-size:15px;font-weight:600;cursor:pointer;transition:background-color .3s ease}.modal-btn:hover{background-color:var(--secondary-color)}.page-hero{background:linear-gradient(135deg,var(--primary-color) 0%,var(--secondary-color) 100%);color:var(--white);padding:64px 24px;text-align:center}.page-hero h1{font-size:38px;font-weight:700;margin-bottom:12px}.page-hero p{font-size:18px;opacity:.95}.content-section{padding:64px 24px;background-color:var(--white)}.content-wrapper,.service-detail{max-width:900px;margin:0 auto}.about-image-wrapper{width:100%;max-width:700px;margin:32px auto;border-radius:12px;overflow:hidden;box-shadow:var(--shadow)}.about-image{width:100%;height:auto;display:block}.content-wrapper h2,.service-detail h2{font-size:28px;color:var(--primary-color);margin-top:40px;margin-bottom:16px}.content-wrapper h2:first-child,.service-detail h2:first-child{margin-top:0}.content-wrapper p,.service-detail p{font-size:16px;line-height:1.7;color:var(--text-light);margin-bottom:16px}.benefits-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:24px;margin:32px 0}.benefit-item{background-color:var(--bg-light);padding:24px;border-radius:8px;border:1px solid var(--border-color)}.benefit-item h3{font-size:18px;color:var(--primary-color);margin-bottom:10px}.benefit-item p{font-size:15px;color:var(--text-light);margin:0}.process-list{margin:24px 0;padding-left:24px}.process-list li{font-size:16px;line-height:1.7;color:var(--text-light);margin-bottom:16px}.process-list strong{color:var(--primary-color)}.contact-section{padding:64px 24px;background-color:var(--bg-light)}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;max-width:1100px;margin:0 auto}.contact-info h2{font-size:28px;color:var(--primary-color);margin-bottom:16px}.contact-info>p{font-size:16px;color:var(--text-light);margin-bottom:32px;line-height:1.7}.contact-details{display:flex;flex-direction:column;gap:24px}.contact-item h3{font-size:18px;color:var(--primary-color);margin-bottom:8px}.contact-item p{font-size:15px;color:var(--text-light);margin:2px 0}.contact-form-container{background-color:var(--white);padding:36px;border-radius:12px;box-shadow:var(--shadow)}.contact-form-container h2{font-size:24px;color:var(--primary-color);margin-bottom:24px}.service-list ul{list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;margin:24px 0}.service-list li{padding:12px 16px;background-color:var(--bg-light);border-radius:6px;font-size:15px;color:var(--text-dark);border-left:3px solid var(--primary-color)}.process-steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:24px;margin:32px 0}.step{background-color:var(--bg-light);padding:24px;border-radius:8px;text-align:center}.step h3{font-size:18px;color:var(--primary-color);margin-bottom:12px}.step p{font-size:15px;color:var(--text-light);margin:0}.cta-section{background-color:var(--bg-light);padding:40px;border-radius:12px;text-align:center;margin-top:48px}.cta-section h2{font-size:26px;color:var(--primary-color);margin-bottom:12px}.intro-content a,.content-wrapper a,.service-detail a,.faq-answer a,.service-list a{color:var(--link-color);text-decoration:underline;transition:color .2s ease}.intro-content a:hover,.content-wrapper a:hover,.service-detail a:hover,.faq-answer a:hover,.service-list a:hover{color:var(--link-hover);text-decoration:underline}.cta-section p{font-size:16px;color:var(--text-light);margin-bottom:24px}@media (max-width: 768px){.header .container{flex-direction:column;gap:16px}.logo-img{height:48px}.main-nav ul{flex-wrap:wrap;justify-content:center}.hero-content h2{font-size:32px}.form-row{grid-template-columns:1fr}.contact-grid{grid-template-columns:1fr;gap:32px}.page-hero h1{font-size:28px}}@media (max-width: 480px){.hero-content h2{font-size:26px}.hero-content p{font-size:16px}.quote-form-wrapper{padding:24px}}
