@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Libre+Franklin:wght@400;500;600;700;800&family=Newsreader:opsz,wght@6..72,400;6..72,500;6..72,600&display=swap');
:root{font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);font-size:16px;line-height:1.55}a{color:inherit}img{display:block;max-width:100%}.skip{position:absolute;left:-999px;top:0}.skip:focus{left:1rem;z-index:20;background:white;padding:.7rem}.sale{min-height:40px;padding:9px max(4vw,20px);display:flex;justify-content:space-between;gap:20px;align-items:center;background:#101f3b;color:white;font:600 12px/1.3 'Libre Franklin',sans-serif}.sale a{font-weight:700;text-decoration:underline;text-underline-offset:2px}.mast{height:82px;padding:0 max(4vw,20px);display:flex;align-items:center;justify-content:space-between;gap:24px;background:#fff}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font:700 24px/1.05 var(--display);letter-spacing:-.035em}.mark{display:grid;place-items:center;width:46px;height:46px;border:2px solid var(--accent);color:var(--accent);font:700 30px var(--body)}nav{display:flex;gap:28px}nav a{text-decoration:none;font-size:14px;font-weight:600}nav a:hover,nav a:focus-visible{text-decoration:underline;text-underline-offset:5px}.head-call,.button{display:inline-flex;align-items:center;justify-content:center;gap:22px;min-height:48px;padding:12px 22px;text-decoration:none;background:var(--accent);color:var(--button);border-radius:var(--radius);font-weight:700;line-height:1.2}.button:hover,.head-call:hover{filter:brightness(.9)}.hero{min-height:580px;display:grid;grid-template-columns:45% 55%;background:var(--hero)}.hero-copy{padding:clamp(55px,6vw,100px) clamp(22px,5vw,80px);align-self:center}.hero h1{font:var(--heading);letter-spacing:-.045em;margin:0 0 28px;max-width:680px}.lead{font-size:clamp(18px,1.65vw,22px);line-height:1.5;max-width:620px;margin:0 0 28px}.call-note{font-size:13px;font-weight:700;margin:18px 0 0}.visual{min-height:580px;position:relative;overflow:hidden}.photo img{width:100%;height:100%;object-fit:cover}.topics,.prep,.faq{padding:72px max(4vw,20px)}.section-title{display:flex;align-items:end;justify-content:space-between;gap:36px;margin-bottom:26px}.section-title h2,.prep h2,.faq h2,.contact h2{font:var(--section);letter-spacing:-.035em;line-height:1.1;margin:0}.section-title p{max-width:390px;margin:0}.topic-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.topic-grid article{min-height:210px;padding:28px;background:#fff;border:1px solid var(--line);border-radius:var(--card-radius)}.card-n{display:block;color:var(--accent);font-weight:800;font-size:12px;letter-spacing:.1em;margin-bottom:22px}.topic-grid h3,.faq h3{font-size:21px;line-height:1.2;margin:0 0 10px}.topic-grid p,.faq p{margin:0;color:var(--muted)}.prep{display:grid;grid-template-columns:1fr 1.3fr;gap:10vw;background:var(--prep)}.prep p{max-width:450px}.prep ol{list-style:none;margin:0;padding:0}.prep li{display:flex;gap:24px;padding:22px 0;border-top:1px solid var(--line);font-size:18px;font-weight:600}.prep li span{color:var(--accent);font-weight:800;font-size:13px}.faq>div{display:grid;grid-template-columns:1fr 1fr;gap:42px;margin-top:30px}.faq article{padding-top:20px;border-top:1px solid var(--line)}.contact{padding:70px max(4vw,20px);background:var(--dark);color:white;display:flex;align-items:center;justify-content:space-between;gap:40px}.contact p{max-width:750px}.contact .button{background:white;color:var(--dark)}footer{padding:28px max(4vw,20px);display:flex;justify-content:space-between;gap:40px;background:#09182e;color:#e8edf4;font-size:12px}footer span:last-child{max-width:460px}
.pest{--paper:#eef2e5;--ink:#1e311f;--muted:#50614f;--accent:#f1c958;--button:#192c20;--hero:#f2f4e7;--prep:#dfe9d6;--dark:#203b27;--line:#bbcdb6;--body:'DM Sans',sans-serif;--display:'DM Sans',sans-serif;--heading:800 clamp(42px,4.7vw,72px)/1.04 'DM Sans',sans-serif;--section:800 clamp(31px,3vw,44px)/1.1 'DM Sans',sans-serif;--radius:99px;--card-radius:16px}.pest .mast{background:#f8faef}.pest .mark{border:0;font-size:37px}.notebook{display:grid;place-items:center;background:radial-gradient(circle at 80% 20%,#b6c9a3 0,transparent 33%),linear-gradient(135deg,#e5e9d2,#afc29a)}.notebook:before{content:'';position:absolute;inset:0;background:repeating-linear-gradient(45deg,transparent 0 36px,#ffffff20 36px 37px)}.notebook-cover,.notebook-page{position:absolute;width:42%;height:68%;top:15%;padding:34px;box-shadow:0 18px 42px #233c2c3b}.notebook-cover{left:10%;border-radius:14px 0 0 14px;background:#e8dfa6;transform:rotate(-3deg);border-left:14px solid #d3b85e;display:flex;flex-direction:column;justify-content:center}.notebook-cover span,.notebook-cover p{font-size:17px}.notebook-cover strong{font:500 clamp(24px,3vw,42px)/1.15 'Newsreader',serif;margin:20px 0}.notebook-page{right:10%;border-radius:0 14px 14px 0;background:#fdfbf2;display:flex;flex-direction:column;gap:12px;transform:rotate(1deg)}.notebook-page span{font-size:15px;font-weight:700}.notebook-page i{border-bottom:1px solid #a5b49f;height:28px}.notebook-page b{font:italic 22px 'Newsreader',serif;margin-top:auto;color:#59805d}
.electric{--paper:#f7f9fb;--ink:#112c4b;--muted:#486177;--accent:#236fbd;--button:#fff;--hero:#edf4f9;--prep:#e5f0f8;--dark:#122f50;--line:#cddce8;--body:'Libre Franklin',sans-serif;--display:'Libre Franklin',sans-serif;--heading:800 clamp(42px,4.6vw,69px)/1.08 'Libre Franklin',sans-serif;--section:800 clamp(30px,3vw,43px)/1.12 'Libre Franklin',sans-serif;--radius:7px;--card-radius:7px}.electric .hero{grid-template-columns:49% 51%}.electric .photo{background:#dce8ed}.electric .room img{object-position:30% center}.electric .topic-grid article{box-shadow:0 5px 16px #172f4c0b}.electric .mark{border-radius:8px}
.plumbing{--paper:#f7f7f3;--ink:#142f34;--muted:#566b69;--accent:#4e8279;--button:#fff;--hero:#faf9f5;--prep:#dce9e5;--dark:#18383b;--line:#c7d7d4;--body:'DM Sans',sans-serif;--display:'Newsreader',serif;--heading:400 clamp(52px,5.3vw,88px)/.98 'Newsreader',serif;--section:400 clamp(39px,4vw,60px)/1.05 'Newsreader',serif;--radius:99px;--card-radius:0}.plumbing .brand{font-size:31px}.plumbing .mark{font:400 35px 'Newsreader',serif;border:0}.plumbing .hero{grid-template-columns:51% 49%}.plumbing .topic-grid article{border:0;border-left:1px solid var(--line);background:transparent}.plumbing .topic-grid h3{font:400 36px 'Newsreader',serif}.plumbing .sink img{object-position:36% center}
.paving{--paper:#f5f7f9;--ink:#172f43;--muted:#526676;--accent:#345d78;--button:#fff;--hero:#e9eef2;--prep:#e9eff2;--dark:#193950;--line:#c8d5dd;--body:'Libre Franklin',sans-serif;--display:'Newsreader',serif;--heading:500 clamp(48px,5vw,80px)/1 'Newsreader',serif;--section:500 clamp(38px,4vw,58px)/1.05 'Newsreader',serif;--radius:99px;--card-radius:3px}.paving .hero{grid-template-columns:42% 58%}.paving .walkway img{object-position:center}.paving .topic-grid article{box-shadow:0 1px 8px #132d3a10}
@media(max-width:950px){.mast{height:auto;min-height:75px;flex-wrap:wrap;padding-top:14px;padding-bottom:14px}nav{order:3;width:100%;justify-content:space-between;gap:12px}.head-call{margin-left:auto}.hero{grid-template-columns:1fr!important}.hero-copy{padding:55px 5vw}.visual{min-height:450px}.topics,.prep,.faq{padding:56px 5vw}.section-title{display:block}.section-title p{margin-top:15px}.contact{padding:55px 5vw}}@media(max-width:600px){.sale{font-size:11px;flex-wrap:wrap;padding:9px 5vw}.mast{gap:14px}.brand{font-size:21px}.brand .mark{width:35px;height:35px;font-size:25px}.head-call{font-size:12px;padding:10px 12px;min-height:39px}.mast nav{font-size:12px;overflow-x:auto}.mast nav a{font-size:12px;white-space:nowrap}.hero h1{font-size:clamp(42px,11vw,64px)}.lead{font-size:17px}.visual{min-height:340px}.notebook-cover,.notebook-page{height:75%;top:12%;padding:18px}.notebook-cover strong{font-size:23px}.notebook-page span{font-size:11px}.notebook-page b{font-size:15px}.topic-grid,.faq>div,.prep{grid-template-columns:1fr}.topic-grid article{min-height:0}.prep{gap:20px}.contact{display:block}.contact .button{margin-top:15px}footer{display:block}footer span{display:block;margin-bottom:14px}}