:root{--ink:#14211b;--green:#16382a;--green-dark:#0b241a;--yellow:#ffd400;--paper:#fafaf7;--line:#dce2da;--muted:#4f5f55;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Public Sans",Arial,sans-serif;line-height:1.5}.shell{width:min(1240px,calc(100% - 48px));margin-inline:auto}.utility{padding:8px 24px;background:var(--green);color:#e9efe9;text-align:center;font:500 12px/1.4 "IBM Plex Mono",monospace;letter-spacing:.08em;text-transform:uppercase}.utility span{margin-left:24px;color:#b9c8be}.site-header{min-height:86px;display:flex;align-items:center;gap:28px}.brand{display:flex;flex-direction:column;color:var(--ink);text-decoration:none;line-height:1.1}.brand strong{font:800 20px Archivo,sans-serif}.brand small,.micro,.kicker,.section-heading>span{margin-top:4px;color:var(--muted);font:500 11px "IBM Plex Mono",monospace;letter-spacing:.1em;text-transform:uppercase}.site-header nav{display:flex;gap:26px;margin-left:auto}.site-header nav a,.text-link{color:var(--ink);font-weight:700;text-decoration:none}.site-header nav a:hover,.text-link:hover{text-decoration:underline;text-decoration-color:var(--yellow);text-decoration-thickness:3px}.header-call,.primary{display:inline-flex;justify-content:center;align-items:center;gap:9px;border-radius:5px;text-decoration:none;font-family:Archivo,sans-serif;font-weight:800}.header-call{padding:12px 18px;background:var(--green);color:#fff}.header-call:hover{background:var(--green-dark)}.hero{display:grid;grid-template-columns:1.04fr .96fr;gap:52px;align-items:center;padding-block:58px 72px;border-top:1px solid var(--line)}.eyebrow{display:inline-block;margin:0 0 26px;padding:7px 11px;background:var(--yellow);font:500 12px "IBM Plex Mono",monospace;letter-spacing:.08em;text-transform:uppercase}.hero h1,.section-heading h2,.local h2,.faq h2,.closing h2{font-family:Archivo,sans-serif;font-weight:800;letter-spacing:0;margin:0}.hero h1{font-size:61.2px;line-height:1.02}.lede{max-width:58ch;margin:22px 0 30px;color:#38483f;font-size:18px;line-height:1.65}.hero-actions{display:flex;gap:18px;align-items:center;flex-wrap:wrap}.primary{padding:16px 24px;background:var(--yellow);color:var(--ink);box-shadow:0 2px 0 var(--ink);font-size:17px}.primary:hover{transform:translateY(-2px);box-shadow:0 4px 0 var(--ink)}.text-link{padding:14px 2px;border-bottom:2px solid var(--green)}.micro{margin-top:24px}.hero-photo{position:relative;margin:0;min-height:500px;border:1px solid var(--line);overflow:hidden}.hero-photo img{position:absolute;width:100%;height:100%;object-fit:cover;object-position:57% center}.hero-photo figcaption{position:absolute;left:0;bottom:0;padding:10px 14px;background:var(--green);color:#e9efe9;font:500 11px "IBM Plex Mono",monospace;letter-spacing:.08em;text-transform:uppercase}.service-band{padding:68px 0 76px;background:var(--white);border-block:1px solid var(--line)}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:38px}.kicker{margin:0 0 12px;color:var(--green)}.section-heading h2,.local h2,.faq h2{font-size:42px;line-height:1.08}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.service-grid article,.service-grid aside{min-height:225px;padding:26px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.service-grid article b{display:inline-block;padding:3px 7px;background:var(--yellow);font:600 11px "IBM Plex Mono",monospace}.service-grid h3,.steps h3{margin:16px 0 8px;font:700 19px/1.2 Archivo,sans-serif}.service-grid p,.steps p{margin:0;color:#425148;font-size:14.5px;line-height:1.65}.service-grid aside{display:flex;flex-direction:column;justify-content:space-between;background:var(--green);color:#fff}.service-grid aside strong{font:700 20px/1.35 Archivo,sans-serif}.service-grid aside a{color:var(--yellow);font:500 13px "IBM Plex Mono",monospace}.process{padding-block:76px}.steps{display:grid;grid-template-columns:repeat(3,1fr);border-top:2px solid var(--ink)}.steps article{padding:28px 34px 0 0;margin-right:34px;border-right:1px solid var(--line)}.steps article:last-child{margin-right:0;border:0}.steps span{font:800 46px Archivo,sans-serif;color:var(--green)}.local{display:grid;grid-template-columns:.9fr 1.1fr;gap:58px;align-items:center;padding-bottom:78px}.local figure{margin:0;aspect-ratio:4/3;overflow:hidden;border:1px solid var(--line)}.local img{width:100%;height:100%;object-fit:cover}.local p:not(.kicker){max-width:62ch;color:#425148;font-size:16px;line-height:1.75}.faq-band{padding:68px 0 74px;background:#fff;border-top:1px solid var(--line)}.faq{display:grid;grid-template-columns:.75fr 1.25fr;gap:64px}.faq>div:first-child>p:last-child{color:var(--muted)}.questions{border-top:2px solid var(--ink)}details{border-bottom:1px solid var(--line)}summary{display:flex;justify-content:space-between;gap:18px;padding:20px 4px;cursor:pointer;list-style:none;font:700 17px Archivo,sans-serif}summary::-webkit-details-marker{display:none}summary span{color:var(--green)}details p{margin:0;padding:0 4px 20px;color:#425148;line-height:1.65}.closing{background:var(--green);color:#fff}.closing>.shell{display:flex;align-items:center;justify-content:space-between;gap:32px;padding-block:68px}.closing h2{font-size:48px}.closing p:not(.kicker){margin:10px 0 0;color:#c4d1c8}.closing .kicker{color:var(--yellow)}footer{display:flex;align-items:center;gap:20px;min-height:92px;color:var(--muted);font:500 12px "IBM Plex Mono",monospace}footer strong{color:var(--ink)}footer a{margin-left:auto;color:var(--green)}.mobile-call{display:none}
@media(max-width:920px){body{padding-bottom:78px}.shell{width:min(100% - 36px,740px)}.utility span,.site-header nav{display:none}.site-header{min-height:76px}.brand strong{font-size:17px}.header-call{margin-left:auto;padding:10px 12px;font-size:13px}.hero{grid-template-columns:1fr;gap:34px;padding-block:42px 50px}.hero h1{font-size:42.9px}.hero-photo{min-height:320px}.service-grid{grid-template-columns:repeat(2,1fr)}.steps,.local,.faq{grid-template-columns:1fr}.steps article{margin:0;padding:24px 0;border-right:0;border-bottom:1px solid var(--line)}.local{gap:34px}.closing>.shell{align-items:flex-start;flex-direction:column}footer{flex-wrap:wrap;padding-block:24px}footer a{margin-left:0}.mobile-call{display:block;position:fixed;z-index:50;left:12px;right:12px;bottom:12px}.mobile-call a{display:block;padding:16px;border-radius:5px;background:var(--yellow);color:var(--ink);text-align:center;text-decoration:none;font:800 18px Archivo,sans-serif;box-shadow:0 6px 22px #14211b55}}
@media(max-width:580px){.shell{width:calc(100% - 28px)}.utility{font-size:10px}.header-call span{display:none}.hero{gap:18px;padding-block:22px 18px}.hero h1{font-size:36px}.hero .eyebrow{margin-bottom:18px}.hero .lede{margin:18px 0 0;font-size:15px;line-height:1.5}.hero .hero-actions,.hero .micro{display:none}.hero-photo{min-height:190px}.service-band,.faq-band{padding-block:52px}.service-grid{grid-template-columns:1fr}.service-grid article,.service-grid aside{min-height:0}.section-heading{align-items:flex-start;flex-direction:column}.process{padding-block:56px}.local{padding-bottom:58px}.local figure{aspect-ratio:16/10}.faq{gap:30px}.closing>.shell{padding-block:54px}.closing .primary{display:none}.primary{width:100%}footer span{width:100%}}

.h1-location{display:block;margin-top:14px;font-family:inherit;font-size:16px;line-height:1.25;font-weight:700;letter-spacing:0;text-transform:uppercase}

@media(max-width:600px){.hero h1{font-size:38px!important;line-height:1!important}.hero{padding-top:28px!important;padding-bottom:28px!important}.section-heading h2,.local h2,.faq h2,.closing h2{font-size:36px!important;line-height:1.05!important}}


/* Audit-depth addition: practical homeowner guidance without unsupported claims. */
.service-field-guide{padding:clamp(3.5rem,7vw,6.5rem) 0;background:color-mix(in srgb,currentColor 4%,transparent)}
.service-field-guide .guide-shell{width:min(1120px,calc(100% - 40px));margin:auto}
.service-field-guide .guide-kicker{font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;opacity:.72}
.service-field-guide h2{max-width:18ch;margin:.65rem 0 1rem;font-size:3.4rem;line-height:1.03;letter-spacing:0}
.service-field-guide .guide-intro{max-width:72ch;font-size:1.08rem;line-height:1.75}
.service-field-guide .guide-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem 2rem;margin-top:2.5rem}
.service-field-guide article{padding-top:1.15rem;border-top:2px solid currentColor}
.service-field-guide article h3{margin:0 0 .55rem;font-size:1.22rem;letter-spacing:0}
.service-field-guide article p,.service-field-guide .guide-local p,.service-field-guide .guide-call p{line-height:1.7}
.service-field-guide .guide-lower{display:grid;grid-template-columns:1.25fr .75fr;gap:2rem;margin-top:2.5rem;align-items:start}
.service-field-guide .guide-local,.service-field-guide .guide-call{padding:1.4rem;border:1px solid currentColor;border-radius:6px}
.service-field-guide .guide-call a{display:inline-flex;margin-top:.75rem;font-weight:800;text-decoration:underline;text-underline-offset:4px}
@media(max-width:720px){.service-field-guide .guide-shell{width:min(100% - 28px,1120px)}.service-field-guide .guide-grid,.service-field-guide .guide-lower{grid-template-columns:1fr}.service-field-guide h2{font-size:2.25rem}.service-field-guide{padding:3.5rem 0 6.5rem}}

/* Contextual service photography: exterior line access */
.process{padding:clamp(38px,6vw,78px);background-image:linear-gradient(100deg,rgba(24,37,43,.94),rgba(24,37,43,.7)),url("/__site-assets/plumber-broomfieldco.com/images/broomfield-line-access-bg.jpg?v=2&cfv=assetfix-20260513d-1787852234727");background-position:center;background-size:cover;color:#fff}
.process .section-heading p{color:#dfe9ed}.process .steps>*{background:rgba(255,255,255,.94);color:#1c2d34}
/* Mobile readability guard: keep long display headings scannable without changing this site's visual identity. */
@media (max-width: 600px) {
  h1 {
    max-width: 100% !important;
    font-size: clamp(36px, 10.25vw, 42px) !important;
    line-height: 1.04 !important;
    overflow-wrap: normal;
    word-break: normal;
  }

  h2 {
    max-width: 100% !important;
    font-size: clamp(30px, 9vw, 38px) !important;
    line-height: 1.08 !important;
    overflow-wrap: normal;
    word-break: normal;
  }
}
