"<!DOCTYPE html>\n<html lang=\"en\"><head>\n<meta charset=\"utf-8\">\n<meta name=\"viewport\" content=\"width=device-width, initial-scale=1\">\n<title>Burtech Plumbing | Licensed San Diego Plumber Since 1991</title>\n<meta name=\"description\" content=\"Burtech Plumbing is a licensed, family-owned plumbing company serving San Diego County since 1991. Drain cleaning, water heaters, sewer repair, hydro-jetting & more.\">\n<link rel=\"icon\" href=\"/favicon.svg\" type=\"image/svg+xml\">\n<link rel=\"alternate icon\" href=\"/favicon.svg\">\n<style>/* ============================================================\n   BURTECH PLUMBING \u2014 DESIGN SYSTEM ENTRY\n   Consumers link this one file. Import order matters:\n   fonts \u2192 tokens \u2192 base.\n   ============================================================ */\n/* ============================================================\n   BURTECH PLUMBING \u2014 FONTS\n   Family: Plus Jakarta Sans \u2014 clean, modern, friendly humanist\n   sans. One family across display + body keeps it approachable\n   and trustworthy. Loaded from Google Fonts (woff2).\n   NOTE: hosted by Google Fonts for portability. To fully\n   self-host, drop woff2 files in assets/fonts/ and repoint src.\n   ============================================================ */\n/* cyrillic-ext */\n@font-face {\n  font-family: 'Plus Jakarta Sans';\n  font-style: italic;\n  font-weight: 500;\n  font-display: swap;\n  src: url(\"203257e3-9c24-4c42-94c7-77bd646302db\") format('woff2');\n  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;\n}\n/* vietnamese */\n@font-face {\n  font-family: 'Plus Jakarta Sans';\n  font-style: italic;\n  font-weight: 500;\n  font-display: swap;\n  src: url(\"09d0fc53-1c06-4f84-8f5d-ba290ea2bf6e\") format('woff2');\n  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;\n}\n/* latin-ext */\n@font-face {\n  font-family: 'Plus Jakarta Sans';\n  font-style: italic;\n  font-weight: 500;\n  font-display: swap;\n  src: url(\"d6c09072-10f4-42bd-95dc-4c6dfac5541e\") format('woff2');\n  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n/* latin */\n@font-face {\n  font-family: 'Plus Jakarta Sans';\n  font-style: italic;\n  font-weight: 500;\n  font-display: swap;\n  src: url(\"98e27f9f-c445-429f-a575-835cc9264765\") format('woff2');\n  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n/* cyrillic-ext */\n@font-face {\n  font-family: 'Plus Jakarta Sans';\n  font-style: normal;\n  font-weight: 400;\n  font-display: swap;\n  src: url(\"41683473-cb44-42ef-8145-b5ab36ff00d7\") format('woff2');\n  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;\n}\n/* vietnamese */\n@font-face {\n  font-family: 'Plus Jakarta Sans';\n  font-style: normal;\n  font-weight: 400;\n  font-display: swap;\n  src: url(\"77860d16-ac24-4965-855e-83af6a5ff651\") format('woff2');\n  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;\n}\n/* latin-ext */\n@font-face {\n  font-family: 'Plus Jakarta Sans';\n  font-style: normal;\n  font-weight: 400;\n  font-display: swap;\n  src: url(\"96e8ca92-e82d-4397-b67d-e51ed64d7c1a\") format('woff2');\n  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n/* latin */\n@font-face {\n  font-family: 'Plus Jakarta Sans';\n  font-style: normal;\n  font-weight: 400;\n  font-display: swap;\n  src: url(\"75ec8bab-695f-4d15-a840-a922b2a0cd42\") format('woff2');\n  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n/* cyrillic-ext */\n@font-face {\n  font-family: 'Plus Jakarta Sans';\n  font-style: normal;\n  font-weight: 500;\n  font-display: swap;\n  src: url(\"41683473-cb44-42ef-8145-b5ab36ff00d7\") format('woff2');\n  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;\n}\n/* vietnamese */\n@font-face {\n  font-family: 'Plus Jakarta Sans';\n  font-style: normal;\n  font-weight: 500;\n  font-display: swap;\n  src: url(\"77860d16-ac24-4965-855e-83af6a5ff651\") format('woff2');\n  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;\n}\n/* latin-ext */\n@font-face {\n  font-family: 'Plus Jakarta Sans';\n  font-style: normal;\n  font-weight: 500;\n  font-display: swap;\n  src: url(\"96e8ca92-e82d-4397-b67d-e51ed64d7c1a\") format('woff2');\n  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n/* latin */\n@font-face {\n  font-family: 'Plus Jakarta Sans';\n  font-style: normal;\n  font-weight: 500;\n  font-display: swap;\n  src: url(\"75ec8bab-695f-4d15-a840-a922b2a0cd42\") format('woff2');\n  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n/* cyrillic-ext */\n@font-face {\n  font-family: 'Plus Jakarta Sans';\n  font-style: normal;\n  font-weight: 600;\n  font-display: swap;\n  src: url(\"41683473-cb44-42ef-8145-b5ab36ff00d7\") format('woff2');\n  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;\n}\n/* vietnamese */\n@font-face {\n  font-family: 'Plus Jakarta Sans';\n  font-style: normal;\n  font-weight: 600;\n  font-display: swap;\n  src: url(\"77860d16-ac24-4965-855e-83af6a5ff651\") format('woff2');\n  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;\n}\n/* latin-ext */\n@font-face {\n  font-family: 'Plus Jakarta Sans';\n  font-style: normal;\n  font-weight: 600;\n  font-display: swap;\n  src: url(\"96e8ca92-e82d-4397-b67d-e51ed64d7c1a\") format('woff2');\n  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n/* latin */\n@font-face {\n  font-family: 'Plus Jakarta Sans';\n  font-style: normal;\n  font-weight: 600;\n  font-display: swap;\n  src: url(\"75ec8bab-695f-4d15-a840-a922b2a0cd42\") format('woff2');\n  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n/* cyrillic-ext */\n@font-face {\n  font-family: 'Plus Jakarta Sans';\n  font-style: normal;\n  font-weight: 700;\n  font-display: swap;\n  src: url(\"41683473-cb44-42ef-8145-b5ab36ff00d7\") format('woff2');\n  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;\n}\n/* vietnamese */\n@font-face {\n  font-family: 'Plus Jakarta Sans';\n  font-style: normal;\n  font-weight: 700;\n  font-display: swap;\n  src: url(\"77860d16-ac24-4965-855e-83af6a5ff651\") format('woff2');\n  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;\n}\n/* latin-ext */\n@font-face {\n  font-family: 'Plus Jakarta Sans';\n  font-style: normal;\n  font-weight: 700;\n  font-display: swap;\n  src: url(\"96e8ca92-e82d-4397-b67d-e51ed64d7c1a\") format('woff2');\n  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n/* latin */\n@font-face {\n  font-family: 'Plus Jakarta Sans';\n  font-style: normal;\n  font-weight: 700;\n  font-display: swap;\n  src: url(\"75ec8bab-695f-4d15-a840-a922b2a0cd42\") format('woff2');\n  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n/* cyrillic-ext */\n@font-face {\n  font-family: 'Plus Jakarta Sans';\n  font-style: normal;\n  font-weight: 800;\n  font-display: swap;\n  src: url(\"41683473-cb44-42ef-8145-b5ab36ff00d7\") format('woff2');\n  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;\n}\n/* vietnamese */\n@font-face {\n  font-family: 'Plus Jakarta Sans';\n  font-style: normal;\n  font-weight: 800;\n  font-display: swap;\n  src: url(\"77860d16-ac24-4965-855e-83af6a5ff651\") format('woff2');\n  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;\n}\n/* latin-ext */\n@font-face {\n  font-family: 'Plus Jakarta Sans';\n  font-style: normal;\n  font-weight: 800;\n  font-display: swap;\n  src: url(\"96e8ca92-e82d-4397-b67d-e51ed64d7c1a\") format('woff2');\n  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n/* latin */\n@font-face {\n  font-family: 'Plus Jakarta Sans';\n  font-style: normal;\n  font-weight: 800;\n  font-display: swap;\n  src: url(\"75ec8bab-695f-4d15-a840-a922b2a0cd42\") format('woff2');\n  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n\n\n/* ============================================================\n   BURTECH PLUMBING \u2014 COLOR TOKENS\n   Direction: deep navy + bright aqua/teal. Fresh, premium,\n   trustworthy. Navy carries authority/heritage; aqua is the\n   energetic accent for CTAs, links, and highlights.\n   ============================================================ */\n:root {\n  /* --- Brand: Navy (primary / authority) --- */\n  --navy-950: #061626;\n  --navy-900: #0A2540; /* core brand navy */\n  --navy-800: #0E3152;\n  --navy-700: #13436C;\n  --navy-600: #1A5A8C;\n  --navy-500: #2374B0; /* heritage Burtech blue, modernized */\n  --navy-400: #4F95C9;\n  --navy-300: #8FBDDD;\n\n  /* --- Brand: Aqua / Teal (accent / action) --- */\n  --aqua-900: #064b54;\n  --aqua-800: #086874;\n  --aqua-700: #0A8593;\n  --aqua-600: #0C9FB0; /* solid CTA fill, white text passes AA */\n  --aqua-500: #12B5C9; /* core brand aqua */\n  --aqua-400: #3ECCDD;\n  --aqua-300: #79DEEB;\n  --aqua-200: #B4ECF2;\n  --aqua-100: #DCF6F9;\n  --aqua-50:  #EEFBFC;\n\n  /* --- Neutrals: cool slate --- */\n  --ink:       #0C1B2A; /* primary text */\n  --slate-800: #1C2E40;\n  --slate-700: #33475C;\n  --slate-600: #4E6478;\n  --slate-500: #6B8094;\n  --slate-400: #92A4B5;\n  --slate-300: #B9C7D3;\n  --slate-200: #DCE5EC;\n  --slate-100: #EDF2F6;\n  --slate-50:  #F5F8FB;\n  --white:     #FFFFFF;\n\n  /* --- Semantic accents --- */\n  --gold-600:  #C98A06; /* coupon / offer emphasis text */\n  --gold-500:  #F2A900; /* offer cards, savings highlight */\n  --gold-100:  #FCEFCD;\n  --star:      #F5A623; /* review stars */\n  --success-600: #138A5A;\n  --success-500: #1E9E6A;\n  --success-100: #D7F0E4;\n  --emergency-600: #C0331F; /* 24/7 emergency badges/CTAs */\n  --emergency-500: #DC4730;\n  --emergency-100: #FBE2DD;\n  --warning-500: #E0A100;\n\n  /* ============================================================\n     SEMANTIC ALIASES \u2014 reference these in components\n     ============================================================ */\n  /* Surfaces */\n  --surface-page:      var(--slate-50);\n  --surface-card:      var(--white);\n  --surface-raised:    var(--white);\n  --surface-sunken:    var(--slate-100);\n  --surface-navy:      var(--navy-900);\n  --surface-navy-soft: var(--navy-800);\n  --surface-aqua-soft: var(--aqua-50);\n  --surface-inverse:   var(--navy-900);\n\n  /* Text */\n  --text-strong:   var(--ink);\n  --text-body:     var(--slate-700);\n  --text-muted:    var(--slate-500);\n  --text-faint:    var(--slate-400);\n  --text-on-navy:  var(--white);\n  --text-on-navy-muted: var(--navy-300);\n  --text-on-aqua:  var(--white);\n  --text-link:     var(--aqua-700);\n  --text-link-hover: var(--aqua-800);\n\n  /* Brand */\n  --brand-primary:   var(--navy-900);\n  --brand-accent:    var(--aqua-500);\n  --brand-accent-ink: var(--aqua-700);\n\n  /* Borders / dividers */\n  --border-subtle: var(--slate-200);\n  --border-default: var(--slate-300);\n  --border-strong: var(--slate-400);\n  --border-aqua:   var(--aqua-300);\n  --border-on-navy: rgba(255,255,255,0.14);\n\n  /* Interactive: primary (aqua CTA) */\n  --action-bg:        var(--aqua-600);\n  --action-bg-hover:  var(--aqua-700);\n  --action-bg-active: var(--aqua-800);\n  --action-text:      var(--white);\n\n  /* Interactive: secondary (navy) */\n  --action-navy-bg:        var(--navy-900);\n  --action-navy-bg-hover:  var(--navy-800);\n  --action-navy-bg-active: var(--navy-700);\n\n  /* Focus ring */\n  --focus-ring: 0 0 0 3px var(--aqua-200), 0 0 0 1px var(--aqua-600);\n}\n\n/* ============================================================\n   BURTECH PLUMBING \u2014 TYPOGRAPHY TOKENS\n   ============================================================ */\n:root {\n  /* Families */\n  --font-sans: 'Plus Jakarta Sans', system-ui, -apple-system, 'Segoe UI', Helvetica, Arial, sans-serif;\n  --font-display: var(--font-sans);\n  --font-body: var(--font-sans);\n\n  /* Weights */\n  --fw-regular: 400; /* @kind font */\n  --fw-medium: 500; /* @kind font */\n  --fw-semibold: 600; /* @kind font */\n  --fw-bold: 700; /* @kind font */\n  --fw-extrabold: 800; /* @kind font */\n\n  /* Type scale (base 16px) */\n  --text-xs:   0.75rem;   /* 12 */\n  --text-sm:   0.875rem;  /* 14 */\n  --text-base: 1rem;      /* 16 */\n  --text-lg:   1.125rem;  /* 18 */\n  --text-xl:   1.375rem;  /* 22 */\n  --text-2xl:  1.75rem;   /* 28 */\n  --text-3xl:  2.25rem;   /* 36 */\n  --text-4xl:  3rem;      /* 48 */\n  --text-5xl:  3.75rem;   /* 60 */\n  --text-6xl:  4.5rem;    /* 72 */\n\n  /* Line heights */\n  --lh-tight:   1.05; /* @kind font */\n  --lh-snug:    1.2; /* @kind font */\n  --lh-normal:  1.5; /* @kind font */\n  --lh-relaxed: 1.65; /* @kind font */\n\n  /* Letter spacing */\n  --ls-tighter: -0.03em; /* @kind font */\n  --ls-tight:   -0.02em; /* @kind font */\n  --ls-normal:  0; /* @kind font */\n  --ls-wide:    0.04em; /* @kind font */\n  --ls-wider:   0.12em; /* @kind font */\n\n  /* Semantic roles */\n  --display-font:   var(--font-display);\n  --display-weight: var(--fw-extrabold);\n  --display-lh:     var(--lh-tight);\n  --display-ls:     var(--ls-tight);\n\n  --heading-font:   var(--font-display);\n  --heading-weight: var(--fw-bold);\n  --heading-lh:     var(--lh-snug);\n\n  --body-font:   var(--font-body);\n  --body-weight: var(--fw-regular);\n  --body-lh:     var(--lh-relaxed);\n\n  --eyebrow-weight: var(--fw-bold);\n  --eyebrow-ls:     var(--ls-wider);\n  --eyebrow-size:   var(--text-sm);\n}\n\n/* ============================================================\n   BURTECH PLUMBING \u2014 SPACING, SHAPE & ELEVATION TOKENS\n   ============================================================ */\n:root {\n  /* Spacing scale (4px base) */\n  --space-0: 0;\n  --space-1: 4px;\n  --space-2: 8px;\n  --space-3: 12px;\n  --space-4: 16px;\n  --space-5: 20px;\n  --space-6: 24px;\n  --space-7: 28px;\n  --space-8: 32px;\n  --space-10: 40px;\n  --space-12: 48px;\n  --space-16: 64px;\n  --space-20: 80px;\n  --space-24: 96px;\n  --space-32: 128px;\n\n  /* Section rhythm */\n  --section-pad-y: clamp(56px, 8vw, 112px);\n  --block-gap: clamp(28px, 4vw, 48px);\n\n  /* Layout */\n  --container-max: 1200px;\n  --container-wide: 1360px;\n  --container-narrow: 760px;\n  --gutter: clamp(20px, 5vw, 48px); /* @kind spacing */\n\n  /* Radii \u2014 friendly, moderate rounding */\n  --radius-xs: 6px;\n  --radius-sm: 10px;\n  --radius-md: 14px;\n  --radius-lg: 20px;\n  --radius-xl: 28px;\n  --radius-2xl: 36px;\n  --radius-pill: 999px;\n  --radius-button: 12px;\n  --radius-card: 18px;\n  --radius-input: 12px;\n\n  /* Borders */\n  --border-width: 1px;\n  --border-width-strong: 2px;\n\n  /* Elevation \u2014 soft, navy-tinted, cool shadows */\n  --shadow-xs: 0 1px 2px rgba(10,37,64,0.06);\n  --shadow-sm: 0 2px 6px rgba(10,37,64,0.08);\n  --shadow-md: 0 8px 24px rgba(10,37,64,0.10);\n  --shadow-lg: 0 18px 48px rgba(10,37,64,0.14);\n  --shadow-xl: 0 28px 70px rgba(10,37,64,0.18);\n  --shadow-cta: 0 10px 24px rgba(12,159,176,0.34);  /* aqua glow */\n  --shadow-navy-cta: 0 10px 24px rgba(10,37,64,0.28);\n  --shadow-inset: inset 0 1px 0 rgba(255,255,255,0.6);\n\n  /* Motion */\n  --ease-out: cubic-bezier(0.22, 1, 0.36, 1); /* @kind other */\n  --ease-in-out: cubic-bezier(0.65, 0, 0.35, 1); /* @kind other */\n  --dur-fast: 130ms; /* @kind other */\n  --dur: 200ms; /* @kind other */\n  --dur-slow: 360ms; /* @kind other */\n}\n\n/* ============================================================\n   BURTECH PLUMBING \u2014 BASE / RESET\n   Light element defaults so specimens & kits inherit the brand.\n   ============================================================ */\n*, *::before, *::after { box-sizing: border-box; }\n\nhtml { -webkit-text-size-adjust: 100%; }\n\nbody {\n  margin: 0;\n  font-family: var(--font-body);\n  font-weight: var(--body-weight);\n  line-height: var(--body-lh);\n  color: var(--text-body);\n  background: var(--surface-page);\n  -webkit-font-smoothing: antialiased;\n  text-rendering: optimizeLegibility;\n}\n\nh1, h2, h3, h4, h5, h6 {\n  margin: 0;\n  font-family: var(--heading-font);\n  color: var(--text-strong);\n  line-height: var(--heading-lh);\n  font-weight: var(--heading-weight);\n  text-wrap: balance;\n}\n\np { margin: 0; text-wrap: pretty; }\n\na { color: var(--text-link); text-decoration: none; }\na:hover { color: var(--text-link-hover); }\n\nimg, svg, video { display: block; max-width: 100%; }\n\nbutton { font-family: inherit; }\n\n:focus-visible {\n  outline: none;\n  box-shadow: var(--focus-ring);\n  border-radius: var(--radius-sm);\n}\n\n::selection { background: var(--aqua-200); color: var(--ink); }\n\n/* Shared helpers used by specimen cards */\n.bp-eyebrow {\n  font-weight: var(--eyebrow-weight);\n  letter-spacing: var(--eyebrow-ls);\n  font-size: var(--eyebrow-size);\n  text-transform: uppercase;\n  color: var(--brand-accent-ink);\n}\n.bp-container {\n  width: 100%;\n  max-width: var(--container-max);\n  margin-inline: auto;\n  padding-inline: var(--gutter);\n}\n\n</style>\n<style>\n  html { scroll-behavior: smooth; scroll-padding-top: 116px; }\n  body { margin: 0; background: var(--surface-page); }\n  @keyframes bpBlink { 0%, 60%, 100% { opacity: 0.25; transform: translateY(0); } 30% { opacity: 1; transform: translateY(-2px); } }\n  /* Shared responsive rules from every page, merged */\n  @media (max-width: 1000px) {\n    .bp-services-grid, .bp-reviews-grid, .bp-offers-grid, .bp-process-grid { grid-template-columns: 1fr 1fr !important; }\n    .bp-footer-grid { grid-template-columns: 1fr 1fr !important; }\n    .bp-stats-grid { grid-template-columns: 1fr 1fr !important; gap: 28px !important; }\n    .bp-stat-div { display: none !important; }\n    .bp-fin-grid, .bp-faq-grid { grid-template-columns: 1fr !important; }\n    .bp-trust-strip { justify-content: flex-start !important; gap: 14px 24px !important; }\n    .bp-sd-hero, .bp-sd-row { grid-template-columns: 1fr !important; direction: ltr !important; }\n    .bp-sd-feats { grid-template-columns: 1fr 1fr !important; }\n    .bp-careers-benefits, .bp-careers-values { grid-template-columns: 1fr 1fr !important; }\n    .bp-careers-form, .bp-app-grid, .bp-team-grid { grid-template-columns: 1fr !important; }\n    .bp-desktop-nav { display: none !important; }\n    .bp-burger { display: flex !important; }\n    .bp-hero-grid, .bp-why-grid, .bp-form-grid, .bp-member { grid-template-columns: 1fr !important; }\n    .bp-why-features { grid-template-columns: 1fr 1fr !important; }\n  }\n  @media (max-width: 700px) {\n    .bp-hero-tiles { transform: none !important; }\n    .bp-services-grid, .bp-reviews-grid, .bp-offers-grid, .bp-process-grid, .bp-stats-grid { grid-template-columns: 1fr !important; }\n    .bp-why-features { grid-template-columns: 1fr !important; }\n    .bp-footer-grid { grid-template-columns: 1fr !important; }\n  }\n  @media (max-width: 560px) {\n    .bp-sd-feats, .bp-sd-gallery, .bp-careers-benefits, .bp-careers-values { grid-template-columns: 1fr !important; }\n    .bp-call-btn { display: none !important; }\n    /* Prevent horizontal overflow */\n    body, html { overflow-x: hidden; }\n    /* Container: tighter side padding */\n    .bp-container { padding-left: 16px !important; padding-right: 16px !important; }\n    /* Trust bar: hide entirely on mobile (rating shown in hero) */\n    .bp-trust-bar { display: none !important; }\n    /* Nav badge: hide, show compact logo */\n    .bp-nav-badge { display: none !important; }\n    .bp-nav-logo-mobile { display: flex !important; }\n    /* Hero: shrink stacked photo, hide floating badges */\n    .bp-hero-photo { min-height: 220px !important; max-height: 280px !important; }\n    .bp-hero-badges { display: none !important; }\n    .bp-hero-content { padding-top: 32px !important; }\n    /* Hero tile banner: compact */\n    .bp-hero-tiles-inner { padding: 14px 16px !important; gap: 10px !important; flex-wrap: wrap !important; }\n    .bp-hero-tile-icon { width: 38px !important; height: 38px !important; border-radius: 10px !important; }\n    .bp-hero-tile-text { font-size: clamp(1rem, 4.5vw, 1.2rem) !important; }\n    /* VIP membership card */\n    .bp-member { padding: 28px 20px !important; }\n    .bp-vip-perks { grid-template-columns: 1fr !important; gap: 8px !important; max-width: 100% !important; }\n    /* Section padding: reduce on mobile */\n    :root { --section-pad-y: 44px; --block-gap: 24px; }\n  }\n  @media (max-width: 400px) {\n    .bp-hero-tile-text { font-size: 0.95rem !important; }\n    .bp-hero-tiles-inner { padding: 12px 14px !important; }\n    .bp-container { padding-left: 12px !important; padding-right: 12px !important; }\n  }\n  }\n</style>\n</head>\n<body>\n\n<div id=\"root\"></div>\n\n<script src=\"89fbea96-4b24-459b-bc21-61c35e2325f9\" integrity=\"sha384-hD6/rw4ppMLGNu3tX5cjIb+uRZ7UkRJ6BPkLpg4hAu/6onKUg4lLsHAs9EBPT82L\" crossorigin=\"anonymous\"></script>\n<script src=\"6dc6f21b-8f4a-402c-91ad-f830a7752007\" integrity=\"sha384-u6aeetuaXnQ38mYT8rp6sbXaQe3NL9t+IBXmnYxwkUI2Hw4bsp2Wvmx4yRQF1uAm\" crossorigin=\"anonymous\"></script>\n<script src=\"f9792b84-f9b1-450f-b3d5-3600cc9f0be6\" integrity=\"sha384-m08KidiNqLdpJqLq95G/LEi8Qvjl/xUYll3QILypMoQ65QorJ9Lvtp2RXYGBFj1y\" crossorigin=\"anonymous\"></script>\n<script src=\"d3c462de-37f0-48fd-8713-584b0685fdfc\"></script>\n<script src=\"0095ffe0-ce0e-469c-9827-2925ebbc072b\"></script>\n<script src=\"9b06f975-e4bb-4799-9180-0e8d9ab7b71b\"></script>\n<script src=\"79699f11-3625-4089-9bb5-f1514c11dbf9\"></script>\n\n<script type=\"text/babel\" src=\"f09a09d3-4a10-4200-afaa-f308dacc9f7a\"></script>\n<script type=\"text/babel\" src=\"7607fb19-cde9-4e45-bc66-c9ef7012bea5\"></script>\n<script type=\"text/babel\" src=\"6cbcf038-7b8a-4ae5-b8bd-b7f103c64747\"></script>\n<script type=\"text/babel\" src=\"6ea313f1-142b-4eff-bdc4-7b94e5e17b49\"></script>\n<script type=\"text/babel\" src=\"5e19b6ae-9e28-4889-820a-a397e2034746\"></script>\n<script type=\"text/babel\" src=\"0a4d6131-0148-4306-936f-9d22fa869dda\"></script>\n<script type=\"text/babel\" src=\"d31dd560-eecc-4e27-8a43-f37f280345e2\"></script>\n<script type=\"text/babel\" src=\"5091563c-918c-4f4a-b4fe-48009e22c392\"></script>\n<script type=\"text/babel\" src=\"a1f62376-ff46-4872-8f51-5953648f7b2b\"></script>\n<script type=\"text/babel\" src=\"d296d0b8-395b-4eaf-ab21-06dc9c9805c8\"></script>\n<script type=\"text/babel\" src=\"270f1c97-3b06-497e-82fc-33b6ed916c58\"></script>\n<script type=\"text/babel\" src=\"fd1712b2-7bcb-4c7a-ae25-b54abc472d77\"></script>\n<script type=\"text/babel\" src=\"ca35a1dc-fdcb-4c20-870d-703dc499c009\"></script>\n<script type=\"text/babel\" src=\"ea53af49-2b8b-44cd-8bbb-18a0823d4934\"></script>\n<script type=\"text/babel\" src=\"bd656da3-e6af-4e97-8f14-5ad714b05921\"></script>\n<script type=\"text/babel\" src=\"a0528439-86e4-4616-96c7-0fee38570322\"></script>\n<script type=\"text/babel\" src=\"ea8712c7-9d60-40fa-9af8-3cd20ce789e5\"></script>\n<script type=\"text/babel\" src=\"1aee6635-ce8c-4fa2-a807-851e468a2e6e\"></script>\n<script type=\"text/babel\" src=\"8ac9f916-dcb2-4f60-8abd-f60edb36fcf1\"></script>\n<script type=\"text/babel\" src=\"149a6999-0551-488e-92a6-1f5e1e64cc91\"></script>\n\n<script type=\"text/babel\" data-presets=\"react\">\n  const SPECIAL = { 'careers': 'Careers', 'application': 'Application', 'meet-the-team': 'MeetTheTeam' };\n\n  // Per-route <title>/description, mirrored from the server's route inventory\n  // (server.js) so client-side navigations keep tab titles and social/share\n  // metadata in sync with whatever page is actually showing.\n  window.PAGE_META = Object.assign({\n    home: { title: 'Burtech Plumbing | Licensed San Diego Plumber Since 1991', description: 'Burtech Plumbing is a licensed, family-owned plumbing company serving San Diego County since 1991. Drain cleaning, water heaters, sewer repair, hydro-jetting & more.' },\n    careers: { title: 'Careers | Burtech Plumbing', description: \"Build a career with San Diego's most trusted plumbing team. Paid training, health benefits, 401(k), and no commission pressure. See open roles at Burtech Plumbing.\" },\n    application: { title: 'Job Application | Burtech Plumbing Careers', description: 'Apply for a plumbing or customer service role at Burtech Plumbing, San Diego County\\u2019s trusted family-owned plumbing company since 1991.' },\n    'meet-the-team': { title: 'Meet the Team | Burtech Plumbing', description: \"Meet the licensed plumbers and staff behind Burtech Plumbing, San Diego County's most trusted plumbing team since 1991.\" },\n  }, (function () {\n    const out = {};\n    const sp = window.SERVICE_PAGES || {};\n    for (const slug in sp) {\n      const p = sp[slug];\n      out[slug] = { title: p.title + ' | Burtech Plumbing', description: (p.lead || '').slice(0, 155) };\n    }\n    return out;\n  })());\n\n  function routeFromHref(href) {\n    // returns { page, section } or null to ignore\n    if (!href) return null;\n    if (/^(https?:|tel:|mailto:)/.test(href)) return null;\n    if (href.startsWith('#')) return null; // in-page anchor, let browser handle\n    if (/\\/(privacy-policy|terms-of-service)(\\/?|#.*)?$/.test(href)) return null;\n    const [path, section] = href.split('#');\n    let slug = path.replace(/\\.html$/, '').replace(/^\\.?\\//, '');\n    if (slug === '' || slug === 'index' || slug === 'Review') slug = 'home';\n    return { page: slug, section: section || '' };\n  }\n\n  function scrollToSection(section) {\n    let tries = 0;\n    const tick = () => {\n      if (!section || section === 'top') { window.scrollTo({ top: 0, behavior: 'auto' }); return; }\n      const el = document.getElementById(section);\n      if (el) {\n        const y = el.getBoundingClientRect().top + window.pageYOffset - 116;\n        window.scrollTo({ top: y, behavior: 'smooth' });\n      } else if (tries++ < 40) { setTimeout(tick, 60); }\n    };\n    setTimeout(tick, 90);\n  }\n\n  // Real, crawlable paths (e.g. /careers.html) are the source of truth for\n  // routing. Hash fragments (#/careers) are only honored for old bookmarks.\n  function pageFromPath(pathname) {\n    let slug = decodeURIComponent(pathname || '/').replace(/^\\/+/, '').replace(/\\.html$/, '');\n    if (slug === '' || slug === 'index' || slug === 'Review') slug = 'home';\n    return slug;\n  }\n\n  function pathForPage(page) {\n    return page === 'home' ? '/' : '/' + page + '.html';\n  }\n\n  function Site() {\n    const [route, setRoute] = React.useState(() => ({ page: pageFromPath(location.pathname), section: '' }));\n    const [schedule, setSchedule] = React.useState(false);\n    const [chat, setChat] = React.useState(false);\n    const [initialService, setInitialService] = React.useState('');\n    const openSchedule = (svc) => { setInitialService(typeof svc === 'string' ? svc : ''); setSchedule(true); };\n\n    const go = React.useCallback((page, section, opts) => {\n      setRoute({ page, section: section || '' });\n      const path = pathForPage(page) + (section ? '#' + section : '');\n      if (opts && opts.replace) window.history.replaceState(null, '', path);\n      else window.history.pushState(null, '', path);\n      if (section) scrollToSection(section);\n      else window.scrollTo({ top: 0, behavior: 'auto' });\n    }, []);\n\n    // Intercept internal .html link clicks anywhere in the app\n    React.useEffect(() => {\n      const handler = (e) => {\n        if (e.defaultPrevented || e.button !== 0 || e.metaKey || e.ctrlKey || e.shiftKey) return;\n        const a = e.target.closest && e.target.closest('a');\n        if (!a) return;\n        if (a.target === '_blank') return;\n        const r = routeFromHref(a.getAttribute('href'));\n        if (!r) return;\n        e.preventDefault();\n        var __e = document.getElementById('__bundler_err'); if (__e) __e.remove();\n        go(r.page, r.section);\n      };\n      document.addEventListener('click', handler);\n      return () => document.removeEventListener('click', handler);\n    }, [go]);\n\n    // Support browser Back/Forward across real paths.\n    React.useEffect(() => {\n      const onPopState = () => {\n        var __e = document.getElementById('__bundler_err'); if (__e) __e.remove();\n        setRoute({ page: pageFromPath(location.pathname), section: '' });\n        window.scrollTo({ top: 0, behavior: 'auto' });\n      };\n      window.addEventListener('popstate', onPopState);\n      return () => window.removeEventListener('popstate', onPopState);\n    }, []);\n\n    // Keep <title>/description in sync on client-side navigations so tabs,\n    // history, and social shares reflect the page actually being viewed.\n    React.useEffect(() => {\n      const meta = (window.PAGE_META && window.PAGE_META[route.page]) || window.PAGE_META?.home;\n      if (meta) {\n        document.title = meta.title;\n        let tag = document.querySelector('meta[name=\"description\"]');\n        if (!tag) { tag = document.createElement('meta'); tag.setAttribute('name', 'description'); document.head.appendChild(tag); }\n        tag.setAttribute('content', meta.description);\n      }\n      let canonical = document.querySelector('link[rel=\"canonical\"]');\n      if (!canonical) { canonical = document.createElement('link'); canonical.setAttribute('rel', 'canonical'); document.head.appendChild(canonical); }\n      canonical.setAttribute('href', location.origin + pathForPage(route.page));\n    }, [route.page]);\n\n    // Capture booking-link intent from the very first URL, e.g. ?schedule=1 or\n    // #schedule, before any routing effect below rewrites location.hash.\n    // Lets staff text customers a direct booking link from a phone call.\n    const [wantsSchedule] = React.useState(() => {\n      const params = new URLSearchParams(location.search);\n      const rawHash = location.hash.replace(/^#\\/?/, '');\n      return params.get('schedule') === '1' || rawHash === 'schedule';\n    });\n\n    // Back-compat: honor a legacy hash on first load, e.g. #/careers, when\n    // the path itself didn't already resolve a page (real paths take\n    // priority since they're what search engines and shared links use now).\n    React.useEffect(() => {\n      if (wantsSchedule) return;\n      if (route.page !== 'home') return;\n      const h = location.hash.replace(/^#\\//, '');\n      if (h) { const [p, s] = h.split('#'); go(p || 'home', s || '', { replace: true }); }\n    }, []); // eslint-disable-line\n\n    // Auto-open the booking modal when the captured intent says so.\n    React.useEffect(() => {\n      if (wantsSchedule) openSchedule();\n    }, []); // eslint-disable-line\n\n    const W = window;\n    const page = route.page;\n\n    let content;\n    if (SPECIAL[page]) {\n      const Comp = W[SPECIAL[page]];\n      content = (\n        <React.Fragment>\n          <W.Header onSchedule={openSchedule} />\n          <Comp onSchedule={openSchedule} />\n          <W.Footer onSchedule={openSchedule} />\n        </React.Fragment>\n      );\n    } else if (W.SERVICE_PAGES && W.SERVICE_PAGES[page]) {\n      window.SERVICE_PAGE = W.SERVICE_PAGES[page];\n      content = (\n        <React.Fragment>\n          <W.Header onSchedule={openSchedule} />\n          <W.ServiceDetail key={page} onSchedule={openSchedule} />\n          <W.Footer onSchedule={openSchedule} />\n        </React.Fragment>\n      );\n    } else {\n      // Homepage\n      content = (\n        <React.Fragment>\n          <W.Header onSchedule={openSchedule} />\n          <W.Hero onSchedule={openSchedule} onChat={() => setChat(true)} />\n          <W.Stats />\n          <W.Services onSchedule={openSchedule} />\n          <W.Process onSchedule={openSchedule} />\n          <W.WhyUs />\n          <W.TrustStrip />\n          <W.Financing onSchedule={openSchedule} />\n          <W.Offers onSchedule={openSchedule} />\n          <W.Reviews />\n          <W.Faq onSchedule={openSchedule} />\n          <W.RequestForm />\n          <W.Footer onSchedule={openSchedule} />\n          <W.Chatbot open={chat} onOpen={() => setChat(true)} onClose={() => setChat(false)} onSchedule={() => { setChat(false); openSchedule(); }} />\n        </React.Fragment>\n      );\n    }\n\n    return (\n      <React.Fragment>\n        {content}\n        <W.ScheduleModal open={schedule} onClose={() => setSchedule(false)} initialService={initialService} />\n      </React.Fragment>\n    );\n  }\n\n  ReactDOM.createRoot(document.getElementById('root')).render(<Site />);\n</script>\n\n\n</body></html>"