
    :root { --bg-main: #f0f4f8; --card-bg: #ffffff; --primary: #1e3a8a; --primary-light: #2563eb; --accent: #ea580c; --text: #334155; --border: #cbd5e1; }
    body { background: var(--bg-main); color: var(--text); font-family: system-ui, -apple-system, sans-serif; line-height: 1.7; margin: 0; padding: 0; }
    
    /* Solid Header */
    header { background: var(--card-bg); padding: 20px 0; border-bottom: 5px solid var(--primary); position: sticky; top:0; z-index: 100; box-shadow: 0 2px 10px rgba(0,0,0,0.1); }
    .header-inner { max-width: 1200px; margin: 0 auto; padding: 0 20px; display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 10px; }
    
    .logo { font-size: 2rem; font-weight: 800; color: var(--primary); text-decoration: none; letter-spacing: -0.5px; text-transform: uppercase; }
    .logo span { color: var(--accent); font-weight: 800; text-transform: lowercase; }
    
    /* Flat Orange Trade Button */
    .cta-btn { background: var(--accent); color: #fff; padding: 14px 30px; text-decoration: none; font-weight: 700; display: inline-flex; align-items: center; font-size: 1.1rem; text-transform: uppercase; letter-spacing: 0.5px; transition: background 0.2s ease; }
    .cta-btn:hover { background: #c2410c; color: #fff; }
    
    /* Completely New Split Hero Layout */
    .split-hero { display: flex; flex-wrap: wrap; background: var(--primary); min-height: 500px; border-bottom: 8px solid var(--accent); }
    .hero-content { flex: 1; min-width: 300px; padding: 80px 40px; display: flex; flex-direction: column; justify-content: center; align-items: flex-start; color: white; }
    .hero-image { flex: 1; min-width: 300px; background: url('commercial-shop-front-installers-and-glazing-repairs.webp') center/cover no-repeat; }
    
    .hero-content h1 { font-size: 3.5rem; font-weight: 800; margin-top: 0; margin-bottom: 20px; line-height: 1.1; text-transform: uppercase; }
    .hero-content p { font-size: 1.25rem; font-weight: 400; margin: 0 0 30px 0; color: #e0e7ff; max-width: 600px; }
    
    /* Trust Bar Grid */
    .trust-bar { background: var(--primary-light); padding: 15px 0; color: #fff; display: flex; justify-content: center; flex-wrap: wrap; gap: 30px; font-weight: 600; text-transform: uppercase; letter-spacing: 1px; font-size: 0.95rem; }
    
    .container { max-width: 1200px; margin: 60px auto; padding: 0 20px; display: grid; grid-template-columns: 2.5fr 1fr; gap: 40px; }
    
    /* Flat White Cards with Top Borders */
    .card { background: var(--card-bg); padding: 40px; margin-bottom: 30px; border: 1px solid var(--border); border-top: 5px solid var(--primary); box-shadow: 0 4px 6px -1px rgba(0,0,0,0.03); }
    .card h2, .card h3 { color: var(--primary); margin-top: 0; font-size: 2rem; font-weight: 800; letter-spacing: -0.5px; margin-bottom: 20px; }
    .card h3 { font-size: 1.4rem; margin-bottom: 15px; color: var(--text); border-bottom: 2px solid var(--bg-main); padding-bottom: 10px; }
    
    /* Solid Navy Sidebar */
    .sidebar-card { background: var(--primary); color: #fff; padding: 35px; margin-bottom: 30px; border-top: 5px solid var(--accent); }
    .sidebar-card h3 { color: #fff; font-size: 1.5rem; font-weight: 800; margin-top: 0; text-transform: uppercase; margin-bottom: 20px; }
    
    ul.data-list { list-style: none; padding: 0; margin-bottom: 0; }
    ul.data-list li { padding-left: 35px; position: relative; margin-bottom: 16px; font-size: 1.1rem; color: var(--text); }
    ul.data-list li::before { content: "✓"; position: absolute; left: 0; top: 0; font-size: 1.1rem; font-weight: bold; color: #fff; background: var(--accent); width: 24px; height: 24px; display: flex; align-items: center; justify-content: center; border-radius: 50%; }
    
    .faq-item { padding: 25px 0; border-bottom: 1px solid var(--border); }
    .faq-item:first-of-type { padding-top: 0; }
    .faq-item:last-of-type { border-bottom: none; padding-bottom: 0; }
    .faq-item h4 { color: var(--primary); margin: 0 0 10px 0; font-size: 1.25rem; font-weight: 700; }
    
    .local-services { background: #0f172a; color: #94a3b8; padding: 80px 20px 40px; margin-top: 60px; font-size: 0.95rem; border-top: 6px solid var(--primary); }
    .local-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 15px; }
    .local-grid span { display: block; padding-bottom: 10px; border-bottom: 1px solid #1e293b; }
    
    details { background: var(--card-bg); border: 1px solid var(--border); padding: 25px; margin-top: 40px; cursor: pointer; border-left: 5px solid var(--primary); }
    summary { font-weight: 800; color: var(--primary); font-size: 1.2rem; list-style: none; text-align: center; outline: none; text-transform: uppercase; letter-spacing: 0.5px; }
    summary::-webkit-details-marker { display: none; }
    summary:hover { color: var(--accent); }
    .directory-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(160px, 1fr)); gap: 10px; margin-top: 25px; }
    .directory-link { display: block; padding: 10px; background: var(--bg-main); border: 1px solid var(--border); text-align: center; text-decoration: none; color: var(--text); font-weight: 600; font-size: 0.95rem; transition: all 0.2s; }
    .directory-link:hover { background: var(--primary); color: #fff; border-color: var(--primary); }

    @media(max-width: 900px) { .container { grid-template-columns: 1fr; display: flex; flex-direction: column; } .hero-content h1 { font-size: 2.6rem; } .hero-content { padding: 50px 20px; text-align: center; align-items: center; } }
    