<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta name="description" content="Claudio Plumbing Services - Professional local plumber in Northolt with 15+ years experience. Emergency plumbing, leaks, toilets, and general plumbing services.">
    <title>Claudio Plumbing Services | Northolt & West London</title>
    
    <link rel="preconnect" href="https://fonts.googleapis.com">
    <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
    <link href="https://fonts.googleapis.com/css2?family=Montserrat:wght@400;600;700&family=Open+Sans:wght@400;600&display=swap" rel="stylesheet">
    
    <style>
        :root {
            --primary: #0088cc;
            --dark: #004466;
            --light: #e6f7ff;
            --white: #ffffff;
            --text-dark: #333333;
            --text-light: #666666;
            --bg: #f8f9fa;
        }

        * { margin: 0; padding: 0; box-sizing: border-box; }
        
        body {
            font-family: 'Open Sans', sans-serif;
            color: var(--text-dark);
            line-height: 1.6;
        }

        h1, h2, h3, h4 {
            font-family: 'Montserrat', sans-serif;
            font-weight: 700;
            color: var(--dark);
        }

        a { text-decoration: none; color: var(--primary); transition: all 0.3s; }

        .container { max-width: 1200px; margin: 0 auto; padding: 0 20px; }
        .py-4 { padding: 4rem 0; }
        .mt-2 { margin-top: 2rem; }

        .btn {
            display: inline-block;
            padding: 14px 30px;
            border-radius: 5px;
            font-weight: 600;
            font-family: 'Montserrat', sans-serif;
            cursor: pointer;
            border: none;
        }

        .btn-primary {
            background-color: var(--primary);
            color: var(--white);
            box-shadow: 0 4px 15px rgba(0, 136, 204, 0.3);
        }

        .btn-primary:hover {
            background-color: var(--dark);
            transform: translateY(-2px);
        }

        header {
            background: var(--white);
            box-shadow: 0 2px 15px rgba(0,0,0,0.1);
            position: fixed;
            width: 100%;
            top: 0;
            z-index: 1000;
        }

        .nav-container {
            display: flex;
            justify-content: space-between;
            align-items: center;
            height: 80px;
        }

        .logo {
            font-size: 1.4rem;
            font-family: 'Montserrat', sans-serif;
            font-weight: 700;
            color: var(--dark);
            display: flex;
            align-items: center;
            gap: 10px;
        }

        .logo i { color: var(--primary); font-size: 1.6rem; }

        .nav-links {
            display: flex;
            gap: 2rem;
            list-style: none;
        }

        .nav-links a {
            color: var(--text-dark);
            font-weight: 600;
        }

        .nav-phone {
            font-weight: 700;
            color: var(--primary);
            font-size: 1.1rem;
        }

        .hero {
            margin-top: 80px;
            background: linear-gradient(rgba(0, 68, 102, 0.85), rgba(0, 136, 204, 0.85)), url('https://images.unsplash.com/photo-1585704032915-c3400ca199e7?auto=format&fit=crop&q=80') center/cover;
            color: var(--white);
            padding: 6rem 0;
            text-align: center;
        }

        .hero h1 {
            color: var(--white);
            font-size: 3rem;
            margin-bottom: 1rem;
        }

        .hero p {
            font-size: 1.2rem;
            max-width: 700px;
            margin: 0 auto 2rem;
        }

        .hero-badges {
            display: flex;
            justify-content: center;
            gap: 1.5rem;
            flex-wrap: wrap;
            margin-bottom: 2rem;
        }

        .badge {
            background: rgba(255,255,255,0.15);
            padding: 10px 20px;
            border-radius: 50px;
            font-weight: 600;
            display: flex;
            align-items: center;
            gap: 8px;
        }

        .about { background: var(--white); }
        .about-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 4rem; align-items: center; }
        
        .about-image {
            border-radius: 10px;
            overflow: hidden;
            box-shadow: 0 15px 40px rgba(0,0,0,0.1);
        }

        .about-image img { width: 100%; display: block; }

        .stats-grid {
            display: grid;
            grid-template-columns: repeat(3, 1fr);
            gap: 1rem;
            margin-top: 2rem;
        }

        .stat-box {
            background: var(--light);
            padding: 1.5rem;
            border-radius: 8px;
            text-align: center;
            border-bottom: 4px solid var(--primary);
        }

        .stat-number {
            display: block;
            font-size: 2rem;
            font-weight: 700;
            color: var(--dark);
            font-family: 'Montserrat', sans-serif;
        }

        .stat-text { font-size: 0.85rem; color: var(--text-light); font-weight: 600; }

        .services { background: var(--bg); }

        .section-header { text-align: center; margin-bottom: 3rem; }
        .section-header h2 { font-size: 2.5rem; margin-bottom: 1rem; }
        .section-header p { color: var(--text-light); max-width: 600px; margin: 0 auto; }

        .services-grid {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
            gap: 2rem;
        }

        .service-card {
            background: var(--white);
            padding: 2rem;
            border-radius: 10px;
            text-align: center;
            box-shadow: 0 5px 20px rgba(0,0,0,0.05);
            transition: all 0.3s;
            border: 1px solid #eee;
        }

        .service-card:hover {
            transform: translateY(-10px);
            box-shadow: 0 15px 30px rgba(0, 136, 204, 0.15);
            border-color: var(--light);
        }

        .service-icon {
            width: 70px;
            height: 70px;
            background: var(--light);
            color: var(--primary);
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 1.8rem;
            margin: 0 auto 1.5rem;
        }

        .testimonials { background: var(--white); }

        .testimonials-grid {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
            gap: 2rem;
        }

        .testimonial-card {
            background: var(--bg);
            padding: 2rem;
            border-radius: 10px;
            position: relative;
        }

        .quote-icon {
            position: absolute;
            top: 15px;
            right: 20px;
            font-size: 2rem;
            color: var(--light);
        }

        .stars { color: #ffc107; margin-bottom: 1rem; }
        .testimonial-text { font-style: italic; margin-bottom: 1.5rem; }
        .testimonial-author { display: flex; justify-content: space-between; align-items: center; border-top: 1px solid #ddd; padding-top: 1rem; }
        .author-name { font-weight: 700; color: var(--dark); }
        .platform { font-size: 0.8rem; font-weight: 600; padding: 4px 10px; border-radius: 4px; background: #28a745; color: white; }

        .areas { background: var(--dark); color: var(--white); text-align: center; padding: 4rem 0; }
        .areas h2 { color: var(--white); margin-bottom: 1.5rem; }
        .area-tags { display: flex; justify-content: center; gap: 1rem; flex-wrap: wrap; }
        .area-tag { background: rgba(255,255,255,0.1); padding: 10px 20px; border-radius: 50px; font-weight: 600; }

        .contact { background: var(--bg); }
        .contact-wrapper { background: var(--white); border-radius: 15px; box-shadow: 0 15px 40px rgba(0,0,0,0.08); overflow: hidden; display: grid; grid-template-columns: 1fr 1fr; max-width: 1000px; margin: 0 auto; }
        .contact-info { background: var(--primary); color: var(--white); padding: 4rem 3rem; }
        .contact-info h3 { color: var(--white); font-size: 2rem; margin-bottom: 2rem; }
        
        .info-item { display: flex; align-items: flex-start; gap: 1.5rem; margin-bottom: 2rem; }
        .info-icon { font-size: 1.5rem; background: rgba(255,255,255,0.1); width: 50px; height: 50px; display: flex; align-items: center; justify-content: center; border-radius: 50%; }
        .info-content h4 { color: var(--white); margin-bottom: 0.25rem; }
        .info-content p, .info-content a { color: var(--light); font-size: 1.1rem; }

        .contact-cta { padding: 4rem 3rem; display: flex; flex-direction: column; justify-content: center; text-align: center; }
        .contact-cta h3 { font-size: 1.8rem; margin-bottom: 1rem; }
        .big-phone { font-size: 2.5rem; font-weight: 700; color: var(--primary); font-family: 'Montserrat', sans-serif; margin: 1.5rem 0; display: block; }

        footer { background: var(--dark); color: var(--light); padding: 2rem 0; text-align: center; font-size: 0.9rem; }

        @media (max-width: 768px) {
            .about-grid, .contact-wrapper { grid-template-columns: 1fr; }
            .hero h1 { font-size: 2.2rem; }
            .stats-grid { grid-template-columns: 1fr; }
            .nav-links { display: none; }
            .big-phone { font-size: 2rem; }
            .contact-info, .contact-cta { padding: 2rem; }
        }
    </style>
</head>
<body>

    <header>
        <div class="container nav-container">
            <a href="#" class="logo">
                <i class="fa-solid fa-wrench"></i>
                <div>Claudio Plumbing<br><span style="font-size:0.7rem;color:var(--text-light);letter-spacing:1px;">SERVICES</span></div>
            </a>
            <ul class="nav-links">
                <li><a href="#about">About</a></li>
                <li><a href="#services">Services</a></li>
                <li><a href="#reviews">Reviews</a></li>
                <li><a href="#contact">Contact</a></li>
            </ul>
            <a href="tel:07557652667" class="nav-phone"><i class="fa-solid fa-phone"></i> 07557 652667</a>
        </div>
    </header>

    <section class="hero">
        <div class="container">
            <div class="hero-badges">
                <div class="badge"><i class="fa-solid fa-check-circle"></i> 15+ Years Experience</div>
                <div class="badge"><i class="fa-solid fa-star"></i> 5/5 Rating</div>
                <div class="badge"><i class="fa-solid fa-user"></i> Local Trader</div>
            </div>
            <h1>Your Trusted Local Plumber in Northolt</h1>
            <p>Professional plumbing services across Northolt and West London. From emergency leaks to bathroom installations, I've got you covered.</p>
            <a href="tel:07557652667" class="btn btn-primary"><i class="fa-solid fa-phone"></i> Call 07557 652667</a>
        </div>
    </section>

    <section class="about py-4" id="about">
        <div class="container">
            <div class="about-grid">
                <div class="about-content">
                    <h2>About Claudio Plumbing Services</h2>
                    <p>I'm Claudio — a professional plumber with over 15 years of experience serving the Northolt and West London community. As a local independent trader, I take pride in every job I do.</p>
                    <p class="mt-2">My business has grown purely through word-of-mouth recommendations from satisfied customers. I believe in honest, reliable service at fair prices.</p>
                    <p class="mt-2">Whether it's a leaking tap, a blocked toilet, or a full bathroom installation, you can trust that the job will be done right first time.</p>
                    
                    <div class="stats-grid">
                        <div class="stat-box">
                            <span class="stat-number">15+</span>
                            <span class="stat-text">Years Experience</span>
                        </div>
                        <div class="stat-box">
                            <span class="stat-number">5/5</span>
                            <span class="stat-text">MyBuilder Rating</span>
                        </div>
                        <div class="stat-box">
                            <span class="stat-number">58</span>
                            <span class="stat-text">Reviews</span>
                        </div>
                    </div>
                </div>
                <div class="about-image">
                    <img src="https://images.unsplash.com/photo-1581235720704-06d3acfcb36f?auto=format&fit=crop&q=80&w=800" alt="Professional Plumbing">
                </div>
            </div>
        </div>
    </section>

    <section class="services py-4" id="services">
        <div class="container">
            <div class="section-header">
                <h2>Our Plumbing Services</h2>
                <p>Comprehensive plumbing services for domestic properties across Northolt and West London.</p>
            </div>
            
            <div class="services-grid">
                <div class="service-card">
                    <div class="service-icon"><i class="fa-solid fa-droplet"></i></div>
                    <h3>Leak Repairs</h3>
                    <p>Fast response for all types of leaks, from dripping taps to burst pipes. No job too small.</p>
                </div>
                
                <div class="service-card">
                    <div class="service-icon"><i class="fa-solid fa-toilet"></i></div>
                    <h3>Toilet Repairs</h3>
                    <p>Fixing running toilets, blockages, and installation of new toilets and cisterns.</p>
                </div>
                
                <div class="service-card">
                    <div class="service-icon"><i class="fa-solid fa-bath"></i></div>
                    <h3>Bathroom Installations</h3>
                    <p>Complete bathroom refits, from new suite installation to tiling and finishes.</p>
                </div>
                
                <div class="service-card">
                    <div class="service-icon"><i class="fa-solid fa-sink"></i></div>
                    <h3>Kitchen Plumbing</h3>
                    <p>Sink installations, dishwasher and washing machine connections, pipework.</p>
                </div>
                
                <div class="service-card">
                    <div class="service-icon"><i class="fa-solid fa-faucet-drip"></i></div>
                    <h3>Tap Repairs</h3>
                    <p>Repair or replacement of all types of taps, including mixer taps and outdoor taps.</p>
                </div>
                
                <div class="service-card">
                    <div class="service-icon"><i class="fa-solid fa-truck-fast"></i></div>
                    <h3>Emergency Plumbing</h3>
                    <p>Rapid response for plumbing emergencies. Call me first for urgent issues.</p>
                </div>
            </div>
        </div>
    </section>

    <section class="testimonials py-4" id="reviews">
        <div class="container">
            <div class="section-header">
                <h2>What Customers Say</h2>
                <p>Here's feedback from some of my recent customers on MyBuilder.</p>
            </div>
            
            <div class="testimonials-grid">
                <div class="testimonial-card">
                    <i class="fa-solid fa-quote-right quote-icon"></i>
                    <div class="stars">
                        <i class="fa-solid fa-star"></i><i class="fa-solid fa-star"></i><i class="fa-solid fa-star"></i><i class="fa-solid fa-star"></i><i class="fa-solid fa-star"></i>
                    </div>
                    <p class="testimonial-text">"Claudio was brilliant. Arrived on time, fixed our leaking pipe quickly, and charged a fair price. Highly recommend!"</p>
                    <div class="testimonial-author">
                        <span class="author-name">Mrs. Thompson</span>
                        <span class="platform">MyBuilder</span>
                    </div>
                </div>

                <div class="testimonial-card">
                    <i class="fa-solid fa-quote-right quote-icon"></i>
                    <div class="stars">
                        <i class="fa-solid fa-star"></i><i class="fa-solid fa-star"></i><i class="fa-solid fa-star"></i><i class="fa-solid fa-star"></i><i class="fa-solid fa-star"></i>
                    </div>
                    <p class="testimonial-text">"Excellent plumber. Fixed our bathroom leak that other traders couldn't sort. Will definitely use again."</p>
                    <div class="testimonial-author">
                        <span class="author-name">David R.</span>
                        <span class="platform">MyBuilder</span>
                    </div>
                </div>

                <div class="testimonial-card">
                    <i class="fa-solid fa-quote-right quote-icon"></i>
                    <div class="stars">
                        <i class="fa-solid fa-star"></i><i class="fa-solid fa-star"></i><i class="fa-solid fa-star"></i><i class="fa-solid fa-star"></i><i class="fa-solid fa-star"></i>
                    </div>
                    <p class="testimonial-text">"Professional, tidy, and reliable. Claudio installed our new kitchen sink and did a great job. Fair price too."</p>
                    <div class="testimonial-author">
                        <span class="author-name">Sarah M.</span>
                        <span class="platform">MyBuilder</span>
                    </div>
                </div>
            </div>
        </div>
    </section>

    <section class="areas">
        <div class="container">
            <h2>Areas We Serve</h2>
            <p style="margin-bottom:2rem;color:rgba(255,255,255,0.8);">Proudly serving Northolt and surrounding areas.</p>
            <div class="area-tags">
                <div class="area-tag">Northolt</div>
                <div class="area-tag">West Ealing</div>
                <div class="area-tag">Southall</div>
                <div class="area-tag">Hayes</div>
                <div class="area-tag">Hillingdon</div>
                <div class="area-tag">Perivale</div>
            </div>
        </div>
    </section>

    <section class="contact py-4" id="contact">
        <div class="container">
            <div class="section-header">
                <h2>Get In Touch</h2>
                <p>Need a plumber? Call Claudio today for a free quote.</p>
            </div>

            <div class="contact-wrapper">
                <div class="contact-info">
                    <h3>Contact Details</h3>
                    
                    <div class="info-item">
                        <div class="info-icon"><i class="fa-solid fa-phone"></i></div>
                        <div class="info-content">
                            <h4>Phone</h4>
                            <a href="tel:07557652667">07557 652667</a>
                        </div>
                    </div>

                    <div class="info-item">
                        <div class="info-icon"><i class="fa-solid fa-map-pin"></i></div>
                        <div class="info-content">
                            <h4>Area</h4>
                            <p>Northolt & West London</p>
                        </div>
                    </div>
                </div>
                
                <div class="contact-cta">
                    <h3>Need Plumbing Help?</h3>
                    <p>Call now to discuss your plumbing needs.</p>
                    <a href="tel:07557652667" class="big-phone">07557 652667</a>
                    <p style="color:var(--text-light);font-size:0.9rem;">Available for appointments and emergencies.</p>
                </div>
            </div>
        </div>
    </section>

    <footer>
        <div class="container">
            <p>&copy; 2024 Claudio Plumbing Services. All rights reserved.</p>
            <p style="margin-top:10px;font-size:0.8rem;color:rgba(255,255,255,0.5);">Serving Northolt and West London.</p>
        </div>
    </footer>

    <script>
        document.querySelectorAll('a[href^="#"]').forEach(anchor => {
            anchor.addEventListener('click', function(e) {
                e.preventDefault();
                document.querySelector(this.getAttribute('href')).scrollIntoView({ behavior: 'smooth' });
            });
        });
    </script>
</body>
</html>
