patx/voldservices
Refine site typography and remove repetitive decorative styling
Commit 141e7c3 · patx · 2026-09-21T19:29:31-04:00
Comments
No comments yet.
Diff
diff --git a/docs/assets/home-hero.js b/docs/assets/home-hero.js
index b242aa9..9546875 100644
--- a/docs/assets/home-hero.js
+++ b/docs/assets/home-hero.js
@@ -10,7 +10,7 @@ if (!document.getElementById('hero-sticky')) return;
var heroCinematic = document.getElementById('top');
var heroSticky = document.getElementById('hero-sticky');
var heroCue = heroSticky.querySelector('.hero-cue');
- var heroEyebrow = heroSticky.querySelector('.hero-eyebrow');
+ var heroLocation = heroSticky.querySelector('.hero-location');
var heroLead = heroSticky.querySelector('.hero-lead');
var heroActions = document.getElementById('hero-actions');
var heroMedia = heroSticky.querySelector('.hero-media');
@@ -201,7 +201,7 @@ if (!document.getElementById('hero-sticky')) return;
var runway = Math.max(heroCinematic.offsetHeight - window.innerHeight, 1);
var progress = clamp01(-heroCinematic.getBoundingClientRect().top / runway);
syncHeroVideo(progress, false);
- var eyebrowIn = smoothstep((progress - 0.1) / 0.15);
+ var locationIn = smoothstep((progress - 0.1) / 0.15);
var leadIn = smoothstep((progress - 0.28) / 0.18);
var actionsIn = smoothstep((progress - 0.42) / 0.18);
var cueOut = smoothstep(progress / 0.12);
@@ -211,7 +211,7 @@ if (!document.getElementById('hero-sticky')) return;
heroSticky.style.setProperty('--hero-scrim-opacity', (0.3 + (0.7 * scrimIn)).toFixed(4));
heroSticky.style.setProperty('--hero-cue-opacity', (1 - cueOut).toFixed(4));
- paintReveal(heroEyebrow, eyebrowIn, 20);
+ paintReveal(heroLocation, locationIn, 20);
paintReveal(heroLead, leadIn, 30);
paintReveal(heroActions, actionsIn, 24);
diff --git a/docs/assets/pages.css b/docs/assets/pages.css
index 85bd07d..fd6bd4d 100644
--- a/docs/assets/pages.css
+++ b/docs/assets/pages.css
@@ -1,18 +1,18 @@
.inner-page .nav { background: var(--ink); border-bottom-color: var(--line); }
-.page-hero { padding: 180px 0 72px; background: linear-gradient(180deg, var(--ink-2), var(--ink)); }
-.breadcrumbs { display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 40px; color: var(--muted); font-family: var(--mono); font-size: .72rem; }
+.page-hero { padding: 180px 0 72px; background: var(--ink-2); }
+.breadcrumbs { display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 40px; color: var(--muted); font-family: var(--body); font-size: .9rem; }
.breadcrumbs a { text-decoration: none; }
.breadcrumbs a:hover { color: var(--lift); }
.page-hero-grid { display: grid; grid-template-columns: 1.2fr 1fr; gap: 56px; align-items: center; }
.page-hero-copy { min-width: 0; }
.page-hero h1 { font-size: clamp(3.5rem, 5.8vw, 6rem); }
-.page-hero h1 .accent { display: block; }
+.page-hero h1 .page-title-location { display: block; }
.page-hero .lead { margin-top: 24px; }
.page-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 28px; }
-.page-hero-note { margin: 24px 0 0; color: var(--muted); font-family: var(--mono); font-size: .72rem; }
+.page-hero-note { margin: 24px 0 0; color: var(--muted); font-family: var(--body); font-size: .9rem; }
.page-hero-photo { margin: 0; border: 1px solid var(--line); background: var(--ink-2); }
.page-hero-photo img { display: block; width: 100%; height: 480px; object-fit: cover; }
-.page-hero-photo figcaption, .page-comparison figcaption { padding: 15px 18px; font-family: var(--mono); font-size: .72rem; line-height: 1.7; color: var(--muted); }
+.page-hero-photo figcaption, .page-comparison figcaption { padding: 15px 18px; font-family: var(--body); font-size: .9rem; line-height: 1.7; color: var(--muted); }
.page-hero--background { position: relative; isolation: isolate; min-height: 720px; min-height: min(850px, 92svh); overflow: hidden; }
.page-hero-background { position: absolute; inset: 0; z-index: -2; width: 100%; height: 100%; object-fit: cover; object-position: center; }
.page-hero--background::before { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg, rgba(8,8,8,.9), rgba(8,8,8,.7) 50%, rgba(8,8,8,.25)), linear-gradient(0deg, var(--ink), transparent 35%); }
@@ -23,12 +23,12 @@
.page-detail-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 56px; align-items: start; }
.page-detail-grid .lead { margin: 0; }
.page-detail-grid .area .lead { font-size: .98rem; margin-top: 16px; }
-.page-detail-grid .area h3 { font-size: 2rem; }
+.page-detail-grid .area h3 { font-size: 1.5rem; }
.page-surface-list { display: grid !important; gap: 12px !important; margin-top: 20px !important; }
.page-surface-list li::after { content: none; }
-.page-three-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
-.page-two-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
-.page-link { display: inline-block; color: var(--lift); font-family: var(--mono); font-size: .78rem; text-underline-offset: 5px; margin-top: 24px; }
+.page-three-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 36px; }
+.page-two-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 36px; }
+.page-link { display: inline-block; color: var(--lift); font-family: var(--body); font-size: .9rem; text-underline-offset: 5px; margin-top: 24px; }
.page-link:hover { color: var(--bone); }
.inner-page .service .page-link { margin-top: auto; padding-top: 24px; }
.page-comparison { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
@@ -51,13 +51,13 @@
@media (max-width: 700px) {
.page-hero--background::before { background: linear-gradient(180deg, rgba(8,8,8,.75), rgba(8,8,8,.8) 75%, var(--ink)); }
.page-hero { padding: 150px 0 48px; }
- .breadcrumbs { margin-bottom: 28px; font-size: .65rem; }
+ .breadcrumbs { margin-bottom: 28px; font-size: .9rem; }
.page-hero-grid, .page-detail-grid, .page-two-grid { grid-template-columns: 1fr; }
.page-hero h1 { font-size: clamp(3rem, 12vw, 4.6rem); }
.page-hero-photo img { height: 340px; }
.page-actions .btn { flex: 1 1 auto; }
.page-comparison { gap: 12px; }
.page-comparison img { height: 260px; }
- .page-comparison figcaption { padding: 12px; font-size: .65rem; }
+ .page-comparison figcaption { padding: 12px; font-size: .9rem; }
.page-cities { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 20px; }
}
diff --git a/docs/assets/site.css b/docs/assets/site.css
index c517ffe..4056307 100644
--- a/docs/assets/site.css
+++ b/docs/assets/site.css
@@ -11,15 +11,14 @@
--spray: #c9efff;
--bone: #f2f0e9;
--muted: #aaa89f;
- --muted-dim: #77766f;
+ --muted-dim: #aaa89f;
--line: rgba(242, 240, 233, 0.17);
--line-soft: rgba(242, 240, 233, 0.08);
--panel: rgba(255, 255, 255, 0.035);
--display: "Teko", Impact, sans-serif;
- --body: "Manrope", system-ui, sans-serif;
- --mono: "Roboto Mono", ui-monospace, monospace;
+ --body: "Source Sans 3", Arial, sans-serif;
--gutter: clamp(20px, 4vw, 44px);
--wrap: 1240px;
@@ -59,8 +58,8 @@
background: var(--brand);
color: #fff;
padding: 12px 18px;
- font-family: var(--mono);
- font-size: .8rem;
+ font-family: var(--body);
+ font-size: .9rem;
text-decoration: none;
transition: top .18s ease;
}
@@ -71,60 +70,37 @@
margin-inline: auto;
}
- /* Section rhythm. The hairline at the top of each band is the
- "wand pass" — the same gesture as the before/after handle. */
+ /* Section spacing keeps related content together. */
.band {
position: relative;
- padding: clamp(76px, 9.5vw, 132px) 0;
+ padding: clamp(56px, 6vw, 88px) 0;
/* Anchor jumps clear the fixed nav instead of landing behind it. The
logo can push the bar past --nav-h on wide screens, so leave slack. */
scroll-margin-top: calc(var(--nav-h) + 24px);
}
- .band::before {
- content: "";
- position: absolute;
- inset: 0 0 auto 0;
- height: 1px;
- background: var(--line);
- }
- .band--tinted { background: linear-gradient(180deg, var(--ink-2), var(--ink)); }
- .band--flush::before { display: none; }
- /* ── type ───────────────────────────────────────────────────── */
- .eyebrow {
- font-family: var(--mono);
- font-size: .74rem;
- letter-spacing: .2em;
- text-transform: uppercase;
- color: var(--lift);
- margin: 0 0 18px;
- display: flex;
- align-items: center;
- gap: 12px;
- }
- .eyebrow::before {
- content: "";
- width: 26px;
- height: 1px;
- background: var(--brand);
- flex: 0 0 auto;
- }
+ .band--tinted { background: var(--ink-2); }
+ /* ── type ───────────────────────────────────────────────────── */
h1, h2, h3, h4 {
- font-family: var(--display);
+ font-family: var(--body);
font-weight: 600;
- letter-spacing: -.015em;
- line-height: .88;
- text-transform: uppercase;
+ letter-spacing: -.02em;
+ line-height: 1.15;
margin: 0;
text-wrap: balance;
}
+ h1 {
+ font-family: var(--display);
+ font-weight: 600;
+ line-height: .95;
+ text-transform: uppercase;
+ }
h1 { font-size: clamp(4.2rem, 9.3vw, 8.4rem); }
- .h2 { font-size: clamp(3.1rem, 6vw, 5.4rem); }
- .h3 { font-size: clamp(1.85rem, 2.8vw, 2.35rem); letter-spacing: -.01em; }
+ .h2 { font-size: clamp(1.9rem, 3.3vw, 3rem); max-width: 30ch; }
+ .h3 { font-size: clamp(1.35rem, 2vw, 1.65rem); letter-spacing: -.01em; }
- .accent { color: var(--lift); }
.lead {
max-width: 60ch;
@@ -148,20 +124,18 @@
padding: 0 26px;
border: 1px solid transparent;
border-radius: 0;
- font-family: var(--display);
+ font-family: var(--body);
font-weight: 700;
font-size: .88rem;
- letter-spacing: .06em;
- text-transform: uppercase;
+ letter-spacing: 0;
+ text-transform: none;
text-decoration: none;
cursor: pointer;
white-space: nowrap;
transition: background .18s ease, border-color .18s ease, color .18s ease, transform .18s ease;
}
- .btn:hover { transform: translateY(-1px); }
- .btn:active { transform: translateY(0); }
- .btn--primary { background: var(--brand); color: #fff; }
+ .btn--primary { background: var(--brand-deep); color: #fff; }
.btn--primary:hover { background: var(--lift); color: var(--ink); }
.btn--ghost {
@@ -218,9 +192,9 @@
align-items: stretch;
gap: 0;
padding: 9px 20px 20px;
- font-family: var(--mono);
+ font-family: var(--body);
font-size: .86rem;
- letter-spacing: .06em;
+ letter-spacing: 0;
background: var(--ink);
border: 1px solid var(--line);
border-top: 0;
@@ -264,10 +238,10 @@
gap: 9px;
background: var(--brand);
color: #fff;
- font-family: var(--display);
+ font-family: var(--body);
font-weight: 700;
font-size: var(--nav-live-call-font, 1rem);
- letter-spacing: .02em;
+ letter-spacing: 0;
text-decoration: none;
padding: var(--nav-live-call-y, 14px) var(--nav-live-call-x, 22px);
border-radius: 0;
@@ -316,7 +290,7 @@
width: 100%;
transform: scaleX(0);
transform-origin: left;
- background: linear-gradient(90deg, var(--brand), var(--spray));
+ background: var(--brand);
opacity: 0;
transition: opacity .3s ease;
}
@@ -403,15 +377,6 @@
opacity: var(--hero-scrim-opacity);
}
- .hero-grain {
- position: absolute;
- inset: 0;
- z-index: 2;
- pointer-events: none;
- opacity: .2;
- mix-blend-mode: overlay;
- background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)' opacity='.5'/%3E%3C/svg%3E");
- }
.hero-inner {
position: relative;
@@ -433,13 +398,14 @@
transform: translate3d(0, 0, 0);
will-change: transform, opacity;
}
- .hero .lead { max-width: 48ch; margin-top: 26px; }
+ .hero-location { margin: 24px 0 0; color: var(--bone); font-size: 1rem; }
+ .hero .lead { max-width: 48ch; margin-top: 12px; }
- .hero-inner .eyebrow,
+ .hero-inner .hero-location,
.hero h1,
.hero .lead { text-shadow: 0 2px 26px rgba(0, 0, 0, .7); }
- .hero-eyebrow,
+ .hero-location,
.hero-lead,
.hero-primary-actions {
opacity: 1;
@@ -456,10 +422,10 @@
display: flex;
align-items: center;
gap: 10px;
- font-family: var(--mono);
- font-size: .68rem;
- letter-spacing: .18em;
- text-transform: uppercase;
+ font-family: var(--body);
+ font-size: .9rem;
+ letter-spacing: 0;
+ text-transform: none;
color: var(--muted-dim);
text-decoration: none;
opacity: var(--hero-cue-opacity);
@@ -475,89 +441,26 @@
transform: rotate(45deg) translate(-2px, -2px);
}
- /* ── credential strip ───────────────────────────────────────── */
- .strip {
- border-block: 1px solid var(--line-soft);
- background: #0d0d0c;
- }
- .strip-viewport { overflow: hidden; }
- .strip-inner {
- display: flex;
- align-items: center;
- padding: 17px 0;
- font-family: var(--mono);
- font-size: .74rem;
- letter-spacing: .09em;
- text-transform: uppercase;
- color: var(--muted-dim);
- }
- .strip-group {
- display: flex;
- flex-wrap: wrap;
- align-items: center;
- justify-content: space-between;
- gap: 14px 30px;
- width: 100%;
- }
- .strip-group--clone { display: none; }
- .strip-inner span { display: inline-flex; align-items: center; gap: 9px; }
- .strip-inner span::before {
- content: "";
- width: 5px;
- height: 5px;
- border-radius: 50%;
- background: var(--brand);
- flex: 0 0 auto;
- }
- .strip-inner a { color: var(--bone); text-decoration: none; }
- .strip-inner a:hover { color: var(--lift); }
- @keyframes credential-ticker {
- to { transform: translate3d(-50%, 0, 0); }
- }
-
/* ── services ───────────────────────────────────────────────── */
.service-grid {
display: grid;
grid-template-columns: repeat(2, minmax(0, 1fr));
- gap: 18px;
- margin-top: 52px;
+ gap: 12px 48px;
+ margin-top: 32px;
}
.service {
position: relative;
display: flex;
flex-direction: column;
- padding: 32px 30px 30px;
- border: 1px solid var(--line);
+ padding: 28px 0;
+ border: 0;
+ border-top: 1px solid var(--line);
border-radius: 0;
- background: var(--panel);
+ background: none;
overflow: hidden;
- transition: border-color .24s ease, transform .24s ease;
+ transition: border-color .18s ease;
}
- .service:hover { border-color: rgba(88, 189, 236, .44); transform: translateY(-3px); }
- .service::before {
- content: "";
- position: absolute;
- inset: 0 0 auto 0;
- height: 2px;
- background: var(--tint, var(--brand));
- opacity: .85;
- }
- .service--wash { --tint: var(--brand); }
- .service--seal { --tint: var(--brand); }
- .service--repair { --tint: var(--brand); }
- .service--roof { --tint: var(--brand); }
-
- .service-icon {
- width: 42px;
- height: 42px;
- margin-bottom: 22px;
- color: var(--lift);
- }
- .service--seal .service-icon,
- .service--repair .service-icon,
- .service--roof .service-icon { color: var(--lift); }
- .service-icon svg { width: 100%; height: 100%; }
-
+ .service:hover { border-color: var(--line); }
.service h3 { margin-bottom: 12px; }
.service p {
margin: 0;
@@ -567,23 +470,19 @@
}
.service-list {
margin: 22px 0 0;
- padding: 20px 0 0;
- border-top: 1px solid var(--line-soft);
+ padding: 0;
+ border-top: 0;
list-style: none;
display: grid;
gap: 9px;
- font-family: var(--mono);
- font-size: .78rem;
+ font-family: var(--body);
+ font-size: .9rem;
color: var(--muted-dim);
}
.service-list li { display: flex; gap: 10px; align-items: flex-start; }
- .service-list li::before { content: "—"; color: var(--brand); flex: 0 0 auto; }
+ .service-list li::before { content: "–"; color: var(--muted); flex: 0 0 auto; }
- /* ─────────────────────────────────────────────────────────────
- Signature: the wand line. A drag reveals the cleaned surface
- behind a lit seam — the same edge you see on a real job.
- A range input drives it so keyboard and screen readers work.
- ───────────────────────────────────────────────────────────── */
+ /* Before/after photos share a keyboard-accessible range control. */
.results-head { max-width: 780px; }
.results-head .lead { max-width: 56ch; }
.wand-comparisons {
@@ -621,24 +520,10 @@
.wand-seam {
position: absolute;
- top: 0;
- bottom: 0;
- left: var(--pos);
+ inset: 0 auto 0 var(--pos);
width: 2px;
margin-left: -1px;
- background: linear-gradient(180deg, rgba(184, 236, 255, .35), var(--spray) 42%, rgba(184, 236, 255, .35));
- box-shadow: 0 0 18px 3px rgba(184, 236, 255, .5);
- pointer-events: none;
- }
- /* Fan of spray thrown just ahead of the seam. */
- .wand-seam::before {
- content: "";
- position: absolute;
- top: 0;
- bottom: 0;
- left: 1px;
- width: 66px;
- background: linear-gradient(90deg, rgba(184, 236, 255, .3), transparent 78%);
+ background: var(--bone);
pointer-events: none;
}
@@ -693,10 +578,10 @@
position: absolute;
top: 14px;
z-index: 2;
- font-family: var(--mono);
- font-size: .7rem;
- letter-spacing: .16em;
- text-transform: uppercase;
+ font-family: var(--body);
+ font-size: .9rem;
+ letter-spacing: 0;
+ text-transform: none;
padding: 6px 12px;
border-radius: 999px;
background: rgba(8, 8, 8, .82);
@@ -727,11 +612,11 @@
padding-bottom: 5px;
border-bottom: 1px solid rgba(88, 189, 236, .42);
color: var(--lift);
- font-family: var(--mono);
- font-size: .75rem;
- letter-spacing: .08em;
+ font-family: var(--body);
+ font-size: .9rem;
+ letter-spacing: 0;
text-decoration: none;
- text-transform: uppercase;
+ text-transform: none;
}
.work-instagram svg { width: 15px; height: 15px; }
.work-instagram:hover { color: var(--bone); border-bottom-color: var(--bone); }
@@ -760,7 +645,7 @@
object-fit: cover;
transition: transform .5s ease;
}
- .work-tile:hover img { transform: scale(1.05); }
+ .work-tile:hover, .work-tile:focus-visible { border-color: var(--lift); }
.work-tile::after {
content: "";
position: absolute;
@@ -775,18 +660,18 @@
}
.work-cap b {
display: block;
- font-family: var(--display);
+ font-family: var(--body);
font-weight: 700;
font-size: 1rem;
letter-spacing: -.01em;
}
.work-cap span {
display: block;
- font-family: var(--mono);
- font-size: .7rem;
- letter-spacing: .08em;
+ font-family: var(--body);
+ font-size: .9rem;
+ letter-spacing: 0;
color: var(--lift);
- text-transform: uppercase;
+ text-transform: none;
margin-top: 2px;
}
@@ -794,23 +679,22 @@
.areas-grid {
display: grid;
grid-template-columns: 1.35fr 1fr 1fr;
- gap: 20px;
- margin-top: 50px;
+ gap: 36px;
+ margin-top: 32px;
align-items: start;
}
.area {
- padding: 30px 28px;
- border: 1px solid var(--line);
+ padding: 8px 0;
+ border: 0;
border-radius: 4px;
- background: linear-gradient(180deg, var(--panel), transparent);
+ background: none;
}
- .area--primary { border-color: rgba(7, 142, 209, .42); }
- .area h3 { font-size: 1.24rem; margin-bottom: 6px; }
+ .area h3 { font-size: 1.35rem; margin-bottom: 16px; }
.area-note {
- font-family: var(--mono);
- font-size: .72rem;
- letter-spacing: .08em;
- text-transform: uppercase;
+ font-family: var(--body);
+ font-size: .9rem;
+ letter-spacing: 0;
+ text-transform: none;
color: var(--lift);
margin: 0 0 18px;
}
@@ -831,15 +715,15 @@
.reviews {
display: grid;
grid-template-columns: repeat(3, minmax(0, 1fr));
- gap: 18px;
- margin-top: 50px;
+ gap: 36px;
+ margin-top: 32px;
}
.review {
margin: 0;
- padding: 30px 28px;
- border: 1px solid var(--line);
+ padding: 8px 0;
+ border: 0;
border-radius: 4px;
- background: var(--panel);
+ background: none;
display: flex;
flex-direction: column;
}
@@ -853,20 +737,19 @@
margin-top: auto;
padding-top: 18px;
border-top: 1px solid var(--line-soft);
- font-family: var(--mono);
- font-size: .76rem;
+ font-family: var(--body);
+ font-size: .9rem;
color: var(--muted-dim);
- letter-spacing: .04em;
+ letter-spacing: 0;
}
- .stars { color: var(--lift); letter-spacing: .18em; margin-bottom: 14px; font-size: .84rem; }
+ .stars { color: var(--bone); letter-spacing: .12em; margin-bottom: 14px; font-size: .9rem; }
.placeholder-note {
margin-top: 22px;
- font-family: var(--mono);
- font-size: .74rem;
+ font-family: var(--body);
+ font-size: .9rem;
color: var(--muted-dim);
- border-left: 2px solid var(--brand);
- padding-left: 14px;
+ padding-left: 0;
}
/* ── quote ──────────────────────────────────────────────────── */
@@ -883,22 +766,25 @@
padding: 32px 30px;
background: var(--panel);
}
- .quote-side { background: linear-gradient(180deg, rgba(7, 142, 209, .11), var(--panel) 46%); }
+ .quote-side { border: 0; padding: 0 24px 0 0; background: none; }
+ .quote-credentials { margin: 0 0 28px; color: var(--bone); }
+ .quote-label { color: var(--muted); }
+
.quote-row { padding: 20px 0; border-top: 1px solid var(--line-soft); }
.quote-row:first-of-type { border-top: 0; padding-top: 0; }
.quote-label {
- font-family: var(--mono);
- font-size: .72rem;
- letter-spacing: .14em;
- text-transform: uppercase;
- color: var(--lift);
+ font-family: var(--body);
+ font-size: .9rem;
+ letter-spacing: 0;
+ text-transform: none;
+ color: var(--muted);
margin-bottom: 7px;
}
.quote-value { color: var(--bone); text-decoration: none; font-size: .97rem; }
a.quote-value:hover { color: var(--lift); }
.quote-phone {
- font-family: var(--display);
+ font-family: var(--body);
font-weight: 800;
font-size: clamp(1.6rem, 3vw, 2rem);
letter-spacing: -.02em;
@@ -944,10 +830,10 @@
.field label {
display: block;
margin-bottom: 7px;
- font-family: var(--mono);
- font-size: .72rem;
- letter-spacing: .1em;
- text-transform: uppercase;
+ font-family: var(--body);
+ font-size: .9rem;
+ letter-spacing: 0;
+ text-transform: none;
color: var(--muted-dim);
}
.field input, .field select, .field textarea {
@@ -994,7 +880,7 @@
background: rgba(8, 8, 8, .64);
color: var(--muted);
font-family: inherit;
- font-size: .78rem;
+ font-size: .9rem;
letter-spacing: 0;
text-transform: none;
cursor: pointer;
@@ -1009,10 +895,10 @@
border-radius: 2px;
background: rgba(7, 142, 209, .14);
color: var(--bone);
- font-family: var(--mono);
- font-size: .72rem;
- letter-spacing: .08em;
- text-transform: uppercase;
+ font-family: var(--body);
+ font-size: .9rem;
+ letter-spacing: 0;
+ text-transform: none;
transition: border-color .18s ease, background .18s ease, color .18s ease;
}
.photo-picker__note { text-align: right; }
@@ -1033,8 +919,8 @@
}
.field-help, .photo-status {
margin: 7px 0 0;
- font-family: var(--mono);
- font-size: .7rem;
+ font-family: var(--body);
+ font-size: .9rem;
line-height: 1.55;
color: var(--muted-dim);
}
@@ -1062,7 +948,7 @@
display: block;
overflow: hidden;
color: var(--bone);
- font-size: .82rem;
+ font-size: .9rem;
text-overflow: ellipsis;
white-space: nowrap;
}
@@ -1070,10 +956,10 @@
display: block;
margin-top: 2px;
color: var(--muted-dim);
- font-family: var(--mono);
- font-size: .65rem;
- letter-spacing: .06em;
- text-transform: uppercase;
+ font-family: var(--body);
+ font-size: .9rem;
+ letter-spacing: 0;
+ text-transform: none;
}
.photo-remove {
padding: 6px 8px;
@@ -1081,10 +967,10 @@
border-radius: 2px;
background: transparent;
color: var(--muted);
- font-family: var(--mono);
- font-size: .66rem;
- letter-spacing: .07em;
- text-transform: uppercase;
+ font-family: var(--body);
+ font-size: .9rem;
+ letter-spacing: 0;
+ text-transform: none;
cursor: pointer;
}
.photo-remove:hover, .photo-remove:focus-visible {
@@ -1094,8 +980,8 @@
}
.form-note {
- font-family: var(--mono);
- font-size: .72rem;
+ font-family: var(--body);
+ font-size: .9rem;
color: var(--muted-dim);
margin: 0;
}
@@ -1105,7 +991,7 @@
border-radius: 3px;
background: rgba(141, 42, 26, .18);
color: #ffd8d1;
- font-size: .84rem;
+ font-size: .9rem;
line-height: 1.55;
}
.quote-form[aria-busy="true"] .btn { cursor: wait; }
@@ -1134,8 +1020,8 @@
background: rgba(7, 142, 209, .14);
}
.success-mark svg { width: 25px; height: 25px; }
- .form-success .eyebrow { margin-bottom: 17px; }
- .form-success h3 { font-size: clamp(2.3rem, 5vw, 4rem); }
+ .form-success .request-status { margin-bottom: 17px; }
+ .form-success h3 { font-size: clamp(1.8rem, 4vw, 2.8rem); }
.form-success p {
max-width: 46ch;
margin: 20px 0 0;
@@ -1145,8 +1031,8 @@
display: inline-block;
margin-top: 22px;
color: var(--lift);
- font-family: var(--mono);
- font-size: .76rem;
+ font-family: var(--body);
+ font-size: .9rem;
}
/* ── footer ─────────────────────────────────────────────────── */
@@ -1166,12 +1052,12 @@
.footer .social-link { width: 38px; height: 38px; }
.footer .social-link svg { width: 17px; height: 17px; }
.footer h4 {
- font-size: .8rem;
- font-family: var(--mono);
+ font-size: .9rem;
+ font-family: var(--body);
font-weight: 500;
- letter-spacing: .14em;
- text-transform: uppercase;
- color: var(--lift);
+ letter-spacing: 0;
+ text-transform: none;
+ color: var(--bone);
margin-bottom: 14px;
}
.footer ul { margin: 0; padding: 0; list-style: none; display: grid; gap: 9px; }
@@ -1185,8 +1071,8 @@
flex-wrap: wrap;
gap: 12px 26px;
justify-content: space-between;
- font-family: var(--mono);
- font-size: .74rem;
+ font-family: var(--body);
+ font-size: .9rem;
color: var(--muted-dim);
}
@@ -1268,14 +1154,12 @@
gap: 10px;
padding: 11px var(--gutter) calc(11px + env(safe-area-inset-bottom));
background: rgba(8, 8, 8, .97);
- backdrop-filter: blur(16px);
border-top: 1px solid var(--line);
- box-shadow: 0 -14px 40px rgba(0, 0, 0, .46);
transform: translateY(110%);
transition: transform .32s cubic-bezier(.4,0,.2,1);
}
.sticky-cta.is-up { transform: none; }
- .sticky-cta .btn { flex: 1 1 0; min-height: 50px; padding: 0 14px; font-size: .84rem; }
+ .sticky-cta .btn { flex: 1 1 0; min-height: 50px; padding: 0 14px; font-size: .9rem; }
.sticky-cta .btn--primary { flex: 1.35 1 0; }
body { padding-bottom: 78px; }
}
@@ -1291,29 +1175,6 @@
.work-heading { align-items: flex-start; flex-direction: column; gap: 17px; }
.work-instagram { margin-bottom: 0; }
.work-grid { margin-top: 34px; }
- .strip-inner {
- width: max-content;
- max-width: none;
- margin-inline: 0;
- flex-wrap: nowrap;
- align-items: center;
- justify-content: flex-start;
- gap: 0;
- padding-block: 15px;
- animation: credential-ticker 24s linear infinite;
- will-change: transform;
- }
- .strip-group {
- width: max-content;
- flex: 0 0 auto;
- flex-wrap: nowrap;
- justify-content: flex-start;
- gap: 32px;
- padding: 0 32px 0 var(--gutter);
- }
- .strip-group--clone { display: flex; }
- .strip-inner span { width: auto; white-space: nowrap; }
- .strip-viewport:hover .strip-inner { animation-play-state: paused; }
.btn-row .btn { width: 100%; }
.hero { height: 300vh; height: 300svh; }
.hero-sticky {
@@ -1324,7 +1185,7 @@
.hero-inner { width: 100%; }
.hero h1 { font-size: clamp(2.7rem, 12.25vw, 3.45rem); }
.hero .lead { margin-top: 19px; font-size: .94rem; line-height: 1.62; }
- .hero .eyebrow { margin-bottom: 14px; font-size: .65rem; }
+ .hero .hero-location { margin-top: 18px; font-size: .9rem; }
.hero .hero-primary-actions { margin-top: 22px; }
.hero .hero-primary-actions .btn { width: auto; min-height: 48px; padding-inline: 18px; }
.hero .hero-primary-actions .btn--ghost { display: none; }
@@ -1350,17 +1211,10 @@
.hero-media video,
.hero-media img.hero-fallback { transform: none; will-change: auto; }
.hero-title-inner,
- .hero-eyebrow,
+ .hero-location,
.hero-lead,
.hero-primary-actions { opacity: 1 !important; transform: none !important; will-change: auto; }
.reveal { opacity: 1; transform: none; transition: none; }
.nav, .sticky-cta, .work-tile img, .btn, .service { transition: none; }
.work-tile:hover img, .btn:hover, .service:hover { transform: none; }
}
-
- @media (max-width: 720px) and (prefers-reduced-motion: reduce) {
- .strip-viewport { overflow-x: auto; scrollbar-width: none; }
- .strip-viewport::-webkit-scrollbar { display: none; }
- .strip-inner { animation: none; will-change: auto; }
- .strip-group--clone { display: none; }
- }
diff --git a/docs/index.html b/docs/index.html
index 2aaba9e..93b82ed 100644
--- a/docs/index.html
+++ b/docs/index.html
@@ -38,7 +38,7 @@
<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=Manrope:wght@400;500;600&family=Roboto+Mono:wght@400;500&family=Teko:wght@500;600&display=swap" rel="stylesheet" />
+ <link href="https://fonts.googleapis.com/css2?family=Source+Sans+3:wght@400;500;600;700&family=Teko:wght@500;600&display=swap" rel="stylesheet" />
<link rel="preload" as="image" href="https://voldservices.com/img/hero-poster-v2.jpg" />
<link rel="stylesheet" href="/assets/site.css" />
@@ -90,18 +90,17 @@
disablepictureinpicture disableremoteplayback
aria-hidden="true" tabindex="-1"></video>
</div>
- <div class="hero-grain" aria-hidden="true"></div>
<div class="wrap">
<div class="hero-inner">
- <p class="eyebrow hero-eyebrow">Broward · Miami-Dade · Palm Beach</p>
<h1>
<span class="hero-title-line"><span class="hero-title-inner">Pressure washing.</span></span>
<span class="hero-title-line"><span class="hero-title-inner">Paver sealing.</span></span>
- <span class="hero-title-line accent"><span class="hero-title-inner">Roof cleaning.</span></span>
+ <span class="hero-title-line"><span class="hero-title-inner">Roof cleaning.</span></span>
</h1>
+ <p class="hero-location">Serving Broward, Miami-Dade, and Palm Beach counties.</p>
<p class="lead hero-lead">
- <strong>Exterior cleaning and sealing</strong> for South Florida homes and commercial properties. Boost your property value, restore curb appeal and protect your investment with VOLD Services.
+ Pressure washing, paver sealing and repair, and roof cleaning for South Florida homes and commercial properties.
</p>
<div class="btn-row hero-primary-actions" id="hero-actions" aria-hidden="true" inert>
@@ -115,29 +114,11 @@
</div>
</section>
- <!-- ── credential strip ────────────────────────────────────── -->
- <div class="strip">
- <div class="strip-viewport">
- <div class="wrap strip-inner">
- <div class="strip-group">
- <span>South Florida homes & businesses</span>
- <span>Licensed & insured</span>
- <span>Free estimates</span>
- </div>
- <div class="strip-group strip-group--clone" aria-hidden="true">
- <span>South Florida homes & businesses</span>
- <span>Licensed & insured</span>
- <span>Free estimates</span>
- </div>
- </div>
- </div>
- </div>
-
<!-- ── services ────────────────────────────────────────────── -->
<section class="band" id="services">
<div class="wrap">
<div class="section-head reveal">
- <h2 class="h2">Residential & commercial services offered</h2>
+ <h2 class="h2">Services for homes and businesses</h2>
<p class="lead">
Concrete, pavers, paint, tile, and shingles do not get cleaned the same way.
We choose the pressure and treatment for the material, then protect the areas around it.
@@ -146,13 +127,6 @@
<div class="service-grid">
<a class="service service--wash reveal card-link" href="/services/pressure-washing/" aria-labelledby="pressure-washing-title">
- <div class="service-icon" aria-hidden="true">
- <svg viewBox="0 0 48 48" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">
- <path d="M30 12h10l4 6-4 6H30z"/><path d="M30 18h-8v-4a3 3 0 0 0-3-3h-3"/>
- <path d="M22 18v18a4 4 0 0 1-4 4h-2a4 4 0 0 1-4-4V18z"/>
- <path d="M8 26h-3M8 32h-5M8 20h-4"/>
- </svg>
- </div>
<h3 class="h3" id="pressure-washing-title">Pressure washing</h3>
<p>
We use surface cleaners on concrete and lower pressure on painted or porous areas.
@@ -168,12 +142,6 @@
</a>
<a class="service service--seal reveal card-link" href="/services/paver-sealing/" aria-labelledby="paver-sealing-title">
- <div class="service-icon" aria-hidden="true">
- <svg viewBox="0 0 48 48" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">
- <path d="M24 6s10 11 10 17a10 10 0 0 1-20 0c0-6 10-17 10-17z"/>
- <path d="M6 40h36M6 44h36"/>
- </svg>
- </div>
<h3 class="h3" id="paver-sealing-title">Paver sealing</h3>
<p>
Good sealing starts with clean, dry pavers and full joints. We wash the surface,
@@ -189,14 +157,6 @@
</a>
<a class="service service--repair reveal card-link" href="/services/paver-repair/" aria-labelledby="paver-repair-title">
- <div class="service-icon" aria-hidden="true">
- <svg viewBox="0 0 48 48" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">
- <rect x="5" y="7" width="17" height="12" rx="1"/>
- <rect x="26" y="7" width="17" height="12" rx="1"/>
- <rect x="5" y="24" width="17" height="12" rx="1"/>
- <path d="M27 34h16M35 24v18M30 29l5-5 5 5"/>
- </svg>
- </div>
<h3 class="h3" id="paver-repair-title">Paver repair</h3>
<p>
Loose, sunken, or separated pavers need more than fresh sand. We lift the affected
@@ -212,12 +172,6 @@
</a>
<a class="service service--roof reveal card-link" href="/services/roof-cleaning/" aria-labelledby="roof-cleaning-title">
- <div class="service-icon" aria-hidden="true">
- <svg viewBox="0 0 48 48" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">
- <path d="M4 24 24 8l20 16"/><path d="M8 22v18h32V22"/>
- <path d="M16 40V28h8v12"/><path d="M30 28h6v6h-6z"/>
- </svg>
- </div>
<h3 class="h3" id="roof-cleaning-title">Roof cleaning</h3>
<p>
Black roof streaks are algae. We clean tile, shingle, and metal roofs with a
@@ -239,7 +193,7 @@
<section class="band band--tinted" id="results">
<div class="wrap">
<div class="section-head results-head reveal">
- <h2 class="h2">Real results: See the before and after</h2>
+ <h2 class="h2">Before and after</h2>
</div>
<div class="wand-comparisons">
@@ -307,7 +261,7 @@
<div class="wrap">
<div class="work-heading reveal">
<div class="section-head">
- <h2 class="h2">View some of our recent work</h2>
+ <h2 class="h2">Recent work</h2>
</div>
<a class="work-instagram" href="https://www.instagram.com/voldservices/" target="_blank" rel="noopener noreferrer">
More jobs on Instagram
@@ -352,9 +306,9 @@
<section class="band band--tinted" id="areas">
<div class="wrap">
<div class="section-head reveal">
- <h2 class="h2">Areas Serviced</h2>
+ <h2 class="h2">Service areas</h2>
<p class="lead">
- We service all of Broward, Palm Beach, and Miami-Dade. No matter where you are located in South Florida, we can make your space shine!
+ We serve homes and businesses throughout Broward, Palm Beach, and Miami-Dade counties.
</p>
</div>
@@ -425,7 +379,7 @@
<section class="band band--tinted" id="quote">
<div class="wrap">
<div class="section-head reveal">
- <h2 class="h2">Contact us today!</h2>
+ <h2 class="h2">Request an estimate</h2>
<p class="lead">
Send the address, the surface, and any details you know. We'll call or text to confirm
the job and arrange a walkthrough if one is needed.
@@ -434,6 +388,7 @@
<div class="quote-grid reveal">
<div class="quote-side">
+ <p class="quote-credentials">Licensed & insured. Free estimates.</p>
<div class="quote-row">
<div class="quote-label">Call or text</div>
<a class="quote-phone" href="tel:+19544013301">(954) 401-3301</a>
@@ -555,7 +510,7 @@
<path d="m5 12 4 4L19 6" />
</svg>
</div>
- <p class="eyebrow">Request received</p>
+ <p class="request-status">Request received</p>
<h3>Thanks, <span id="success-name">we’ve got it</span>.</h3>
<p>We’ll call or text to confirm the details and arrange a walkthrough if one is needed.</p>
<a class="quote-value" href="tel:+19544013301">Need us sooner? Call (954) 401-3301</a>
diff --git a/docs/service-areas/broward-county/index.html b/docs/service-areas/broward-county/index.html
index 3273da6..a4d40e1 100644
--- a/docs/service-areas/broward-county/index.html
+++ b/docs/service-areas/broward-county/index.html
@@ -22,7 +22,7 @@
<link rel="apple-touch-icon" href="/favicon.png" />
<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=Manrope:wght@400;500;600&family=Roboto+Mono:wght@400;500&family=Teko:wght@500;600&display=swap" rel="stylesheet" />
+ <link href="https://fonts.googleapis.com/css2?family=Source+Sans+3:wght@400;500;600;700&family=Teko:wght@500;600&display=swap" rel="stylesheet" />
<link rel="stylesheet" href="/assets/site.css" />
<link rel="stylesheet" href="/assets/pages.css" />
<noscript><style>.reveal { opacity: 1; transform: none; }</style></noscript>
@@ -236,10 +236,10 @@
</header>
<main id="main"><section class="page-hero page-hero--background" id="top"><img class="page-hero-background" src="/img/after-driveway.jpg" alt="" aria-hidden="true" fetchpriority="high" /><div class="wrap">
<nav class="breadcrumbs" aria-label="Breadcrumb"><a href="/">Home</a><span aria-hidden="true">/</span><a href="/#areas">Service areas</a><span aria-hidden="true">/</span><span aria-current="page">Broward County</span></nav>
-<div class="page-hero-grid"><div class="page-hero-copy"><p class="eyebrow">Residential · Commercial · HOA</p><h1>Exterior cleaning<span class="accent">Broward County.</span></h1><p class="lead">From a Fort Lauderdale driveway to a Pembroke Pines patio, plan the exterior work your property needs in one place. Vold Services offers pressure washing, paver sealing and repair, and roof cleaning throughout Broward County.</p><div class="page-actions"><a class="btn btn--primary" href="#quote">Request an estimate</a><a class="btn btn--ghost" href="tel:+19544013301">Call (954) 401-3301</a></div><p class="page-hero-note">Pressure washing · Paver care · Roof cleaning</p></div></div></div></section><section class="band"><div class="wrap"><div class="section-head"><p class="eyebrow">Your property. Your project.</p><h2 class="h2">From the driveway to the roof</h2></div><div class="page-detail-grid"><p class="lead">A Broward property may need more than one type of exterior care. Start with the surfaces that need attention: a dirty driveway, worn paver finish, loose border, or streaked roof. We can discuss cleaning, repairs, and sealing together so the estimate reflects the work you actually want.</p><div class="area"><h3 class="h3">Planning work at an occupied property</h3><p class="lead">For a home, storefront, or HOA property, include parking arrangements, gate access, and any areas that need to stay accessible. If you are responding to an HOA notice, describe the requested work and timeframe. We will confirm the scope and arrange a walkthrough when needed.</p></div></div></div></section><section class="band band--tinted" id="services"><div class="wrap"><div class="section-head"><p class="eyebrow">Services in Broward County</p><h2 class="h2">Choose the work you need</h2></div><div class="service-grid"><article class="service"><h3 class="h3"><a class="service-title-link" href="/services/pressure-washing/">Pressure washing</a></h3><p>From a darkened driveway to a tired pool deck, the right wash makes a visible difference. We clean concrete, pavers, and exterior surfaces with pressure and treatment selected for the material.</p><a class="page-link" href="/services/pressure-washing/">Explore pressure washing <span aria-hidden="true">↗</span></a></article>
+<div class="page-hero-grid"><div class="page-hero-copy"><h1>Exterior cleaning<span class="page-title-location">Broward County.</span></h1><p class="lead">From a Fort Lauderdale driveway to a Pembroke Pines patio, plan the exterior work your property needs in one place. Vold Services offers pressure washing, paver sealing and repair, and roof cleaning throughout Broward County.</p><div class="page-actions"><a class="btn btn--primary" href="#quote">Request an estimate</a><a class="btn btn--ghost" href="tel:+19544013301">Call (954) 401-3301</a></div><p class="page-hero-note">For homes, commercial properties, and HOAs.</p></div></div></div></section><section class="band"><div class="wrap"><div class="section-head"><h2 class="h2">From the driveway to the roof</h2></div><div class="page-detail-grid"><p class="lead">A Broward property may need more than one type of exterior care. Start with the surfaces that need attention: a dirty driveway, worn paver finish, loose border, or streaked roof. We can discuss cleaning, repairs, and sealing together so the estimate reflects the work you actually want.</p><div class="area"><h3 class="h3">Planning work at an occupied property</h3><p class="lead">For a home, storefront, or HOA property, include parking arrangements, gate access, and any areas that need to stay accessible. If you are responding to an HOA notice, describe the requested work and timeframe. We will confirm the scope and arrange a walkthrough when needed.</p></div></div></div></section><section class="band band--tinted" id="services"><div class="wrap"><div class="section-head"><h2 class="h2">Choose the work you need</h2></div><div class="service-grid"><article class="service"><h3 class="h3"><a class="service-title-link" href="/services/pressure-washing/">Pressure washing</a></h3><p>We clean concrete, pavers, and exterior surfaces with pressure and treatment selected for the material.</p><a class="page-link" href="/services/pressure-washing/">Explore pressure washing <span aria-hidden="true">↗</span></a></article>
<article class="service"><h3 class="h3"><a class="service-title-link" href="/services/paver-sealing/">Paver sealing</a></h3><p>Give your driveway, walkway, or pool deck a finish that suits the property. We clean the pavers, replace missing joint sand, and seal once the surface is ready.</p><a class="page-link" href="/services/paver-sealing/">Explore paver sealing <span aria-hidden="true">↗</span></a></article>
<article class="service"><h3 class="h3"><a class="service-title-link" href="/services/paver-repair/">Paver repair</a></h3><p>Loose borders, sunken sections, and uneven joints need attention beneath the surface. We lift the affected pavers, correct the base, and reset the area.</p><a class="page-link" href="/services/paver-repair/">Explore paver repair <span aria-hidden="true">↗</span></a></article>
-<article class="service"><h3 class="h3"><a class="service-title-link" href="/services/roof-cleaning/">Roof cleaning</a></h3><p>Give a roof marked by dark streaks and organic buildup a fresh start. We use a low-pressure soft wash for tile, shingle, and metal roofs, with care for the landscaping below.</p><a class="page-link" href="/services/roof-cleaning/">Explore roof cleaning <span aria-hidden="true">↗</span></a></article></div></div></section><section class="band" id="areas"><div class="wrap"><div class="section-head"><p class="eyebrow">Local coverage</p><h2 class="h2">Broward County communities</h2></div><p class="lead">We serve Broward County, including the communities below. Send your property address with your request so we can confirm the job details and scheduling.</p><ul class="page-cities"><li>Fort Lauderdale</li><li>Pembroke Pines</li><li>Hollywood</li><li>Miramar</li><li>Coral Springs</li><li>Plantation</li><li>Weston</li><li>Pompano Beach</li><li>Deerfield Beach</li><li>Coconut Creek</li><li>Parkland</li><li>Margate</li><li>Lauderhill</li><li>Oakland Park</li><li>Wilton Manors</li><li>Dania Beach</li><li>Hallandale Beach</li><li>Lighthouse Point</li><li>Lauderdale-by-the-Sea</li></ul><a class="page-link" href="#quote">Tell us about your property <span aria-hidden="true">↗</span></a></div></section><section class="band band--tinted"><div class="wrap"><div class="section-head"><p class="eyebrow">Before you book</p><h2 class="h2">Planning your service</h2></div><div class="page-faq"><details><summary>Do you serve both coastal and inland Broward cities?</summary><p>Yes. Our listed coverage includes Fort Lauderdale, Hollywood, and Pompano Beach as well as Pembroke Pines, Weston, Coral Springs, and other Broward communities shown here.</p></details><details><summary>Can I request several services for the same property?</summary><p>Yes. Choose the main service and describe the other areas in your message. For example, include a paver repair with a cleaning and sealing request.</p></details><details><summary>Can you help with exterior cleaning requested by an HOA?</summary><p>We serve HOA and multi-family properties and can provide roof cleaning photos for HOA notices. Include the notice details and requested timeframe so we can discuss the work.</p></details></div></div></section><section class="band band--tinted" id="quote">
+<article class="service"><h3 class="h3"><a class="service-title-link" href="/services/roof-cleaning/">Roof cleaning</a></h3><p>We remove dark streaks and organic buildup from tile, shingle, and metal roofs with a low-pressure soft wash, with care for the landscaping below.</p><a class="page-link" href="/services/roof-cleaning/">Explore roof cleaning <span aria-hidden="true">↗</span></a></article></div></div></section><section class="band" id="areas"><div class="wrap"><div class="section-head"><h2 class="h2">Broward County communities</h2></div><p class="lead">We serve Broward County, including the communities below. Send your property address with your request so we can confirm the job details and scheduling.</p><ul class="page-cities"><li>Fort Lauderdale</li><li>Pembroke Pines</li><li>Hollywood</li><li>Miramar</li><li>Coral Springs</li><li>Plantation</li><li>Weston</li><li>Pompano Beach</li><li>Deerfield Beach</li><li>Coconut Creek</li><li>Parkland</li><li>Margate</li><li>Lauderhill</li><li>Oakland Park</li><li>Wilton Manors</li><li>Dania Beach</li><li>Hallandale Beach</li><li>Lighthouse Point</li><li>Lauderdale-by-the-Sea</li></ul><a class="page-link" href="#quote">Tell us about your property <span aria-hidden="true">↗</span></a></div></section><section class="band band--tinted"><div class="wrap"><div class="section-head"><h2 class="h2">Planning your service</h2></div><div class="page-faq"><details><summary>Do you serve both coastal and inland Broward cities?</summary><p>Our coverage includes Fort Lauderdale, Hollywood, and Pompano Beach as well as Pembroke Pines, Weston, Coral Springs, and other Broward communities shown here.</p></details><details><summary>Can I request several services for the same property?</summary><p>Choose the main service and describe the other areas in your message. For example, include a paver repair with a cleaning and sealing request.</p></details><details><summary>Can you help with exterior cleaning requested by an HOA?</summary><p>We serve HOA and multi-family properties and can provide roof cleaning photos for HOA notices. Include the notice details and requested timeframe so we can discuss the work.</p></details></div></div></section><section class="band band--tinted" id="quote">
<div class="wrap">
<div class="section-head reveal">
<h2 class="h2">Request an estimate</h2>
@@ -251,6 +251,7 @@
<div class="quote-grid reveal">
<div class="quote-side">
+ <p class="quote-credentials">Licensed & insured. Free estimates.</p>
<div class="quote-row">
<div class="quote-label">Call or text</div>
<a class="quote-phone" href="tel:+19544013301">(954) 401-3301</a>
@@ -373,7 +374,7 @@
<path d="m5 12 4 4L19 6" />
</svg>
</div>
- <p class="eyebrow">Request received</p>
+ <p class="request-status">Request received</p>
<h3>Thanks, <span id="success-name">we’ve got it</span>.</h3>
<p>We’ll call or text to confirm the details and arrange a walkthrough if one is needed.</p>
<a class="quote-value" href="tel:+19544013301">Need us sooner? Call (954) 401-3301</a>
@@ -382,8 +383,8 @@
</div>
</div>
</div>
- </section><section class="band band--tinted"><div class="wrap"><div class="section-head"><p class="eyebrow">Across South Florida</p><h2 class="h2">Other service areas</h2></div><div class="page-two-grid"><article class="service"><h3 class="h3"><a class="service-title-link" href="/service-areas/miami-dade-county/">Miami-Dade County</a></h3><p>Pressure washing, paver sealing and repair, and roof cleaning across Miami-Dade County.</p><a class="page-link" href="/service-areas/miami-dade-county/">Explore miami-dade county <span aria-hidden="true">↗</span></a></article>
-<article class="service"><h3 class="h3"><a class="service-title-link" href="/service-areas/palm-beach-county/">Palm Beach County</a></h3><p>Pressure washing, paver sealing and repair, and roof cleaning across Palm Beach County.</p><a class="page-link" href="/service-areas/palm-beach-county/">Explore palm beach county <span aria-hidden="true">↗</span></a></article></div></div></section></main>
+ </section><section class="band band--tinted"><div class="wrap"><div class="section-head"><h2 class="h2">Other service areas</h2></div><div class="page-two-grid"><article class="service"><h3 class="h3"><a class="service-title-link" href="/service-areas/miami-dade-county/">Miami-Dade County</a></h3><p>Pressure washing, paver sealing and repair, and roof cleaning across Miami-Dade County.</p><a class="page-link" href="/service-areas/miami-dade-county/">Miami-Dade County <span aria-hidden="true">↗</span></a></article>
+<article class="service"><h3 class="h3"><a class="service-title-link" href="/service-areas/palm-beach-county/">Palm Beach County</a></h3><p>Pressure washing, paver sealing and repair, and roof cleaning across Palm Beach County.</p><a class="page-link" href="/service-areas/palm-beach-county/">Palm Beach County <span aria-hidden="true">↗</span></a></article></div></div></section></main>
<footer class="footer">
<div class="wrap">
<div class="footer-inner">
diff --git a/docs/service-areas/miami-dade-county/index.html b/docs/service-areas/miami-dade-county/index.html
index 7a24a50..9bc2838 100644
--- a/docs/service-areas/miami-dade-county/index.html
+++ b/docs/service-areas/miami-dade-county/index.html
@@ -22,7 +22,7 @@
<link rel="apple-touch-icon" href="/favicon.png" />
<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=Manrope:wght@400;500;600&family=Roboto+Mono:wght@400;500&family=Teko:wght@500;600&display=swap" rel="stylesheet" />
+ <link href="https://fonts.googleapis.com/css2?family=Source+Sans+3:wght@400;500;600;700&family=Teko:wght@500;600&display=swap" rel="stylesheet" />
<link rel="stylesheet" href="/assets/site.css" />
<link rel="stylesheet" href="/assets/pages.css" />
<noscript><style>.reveal { opacity: 1; transform: none; }</style></noscript>
@@ -236,10 +236,10 @@
</header>
<main id="main"><section class="page-hero page-hero--background" id="top"><img class="page-hero-background" src="/img/after-patio.jpg" alt="" aria-hidden="true" fetchpriority="high" /><div class="wrap">
<nav class="breadcrumbs" aria-label="Breadcrumb"><a href="/">Home</a><span aria-hidden="true">/</span><a href="/#areas">Service areas</a><span aria-hidden="true">/</span><span aria-current="page">Miami-Dade County</span></nav>
-<div class="page-hero-grid"><div class="page-hero-copy"><p class="eyebrow">Residential · Commercial · HOA</p><h1>Exterior cleaning<span class="accent">Miami-Dade County.</span></h1><p class="lead">Keep a Miami-Dade home, storefront, or shared property looking cared for. Request pressure washing, paver sealing and repair, or roof cleaning from Miami and Aventura to Doral and Homestead.</p><div class="page-actions"><a class="btn btn--primary" href="#quote">Request an estimate</a><a class="btn btn--ghost" href="tel:+19544013301">Call (954) 401-3301</a></div><p class="page-hero-note">Pressure washing · Paver care · Roof cleaning</p></div></div></div></section><section class="band"><div class="wrap"><div class="section-head"><p class="eyebrow">Your property. Your project.</p><h2 class="h2">Exterior care for homes and shared spaces</h2></div><div class="page-detail-grid"><p class="lead">A front walkway and a commercial exterior have different access needs, even when both need a thorough clean. Tell us whether the property is residential, commercial, or HOA / multi-family, and which surfaces need work. We use that information to discuss the right cleaning or paver service.</p><div class="area"><h3 class="h3">Make access part of the estimate</h3><p class="lead">If the property has controlled entry, shared parking, a busy storefront, or a building contact, include those details with the address. For commercial or recurring cleaning, identify the areas to be cleaned and your preferred timing. Scheduling and access arrangements are confirmed for the individual job.</p></div></div></div></section><section class="band band--tinted" id="services"><div class="wrap"><div class="section-head"><p class="eyebrow">Services in Miami-Dade County</p><h2 class="h2">Choose the work you need</h2></div><div class="service-grid"><article class="service"><h3 class="h3"><a class="service-title-link" href="/services/pressure-washing/">Pressure washing</a></h3><p>From a darkened driveway to a tired pool deck, the right wash makes a visible difference. We clean concrete, pavers, and exterior surfaces with pressure and treatment selected for the material.</p><a class="page-link" href="/services/pressure-washing/">Explore pressure washing <span aria-hidden="true">↗</span></a></article>
+<div class="page-hero-grid"><div class="page-hero-copy"><h1>Exterior cleaning<span class="page-title-location">Miami-Dade County.</span></h1><p class="lead">Keep a Miami-Dade home, storefront, or shared property looking cared for. Request pressure washing, paver sealing and repair, or roof cleaning from Miami and Aventura to Doral and Homestead.</p><div class="page-actions"><a class="btn btn--primary" href="#quote">Request an estimate</a><a class="btn btn--ghost" href="tel:+19544013301">Call (954) 401-3301</a></div><p class="page-hero-note">For homes, commercial properties, and HOAs.</p></div></div></div></section><section class="band"><div class="wrap"><div class="section-head"><h2 class="h2">Exterior care for homes and shared spaces</h2></div><div class="page-detail-grid"><p class="lead">A front walkway and a commercial exterior have different access needs, even when both need a thorough clean. Tell us whether the property is residential, commercial, or HOA / multi-family, and which surfaces need work. We use that information to discuss the right cleaning or paver service.</p><div class="area"><h3 class="h3">Make access part of the estimate</h3><p class="lead">If the property has controlled entry, shared parking, a busy storefront, or a building contact, include those details with the address. For commercial or recurring cleaning, identify the areas to be cleaned and your preferred timing. Scheduling and access arrangements are confirmed for the individual job.</p></div></div></div></section><section class="band band--tinted" id="services"><div class="wrap"><div class="section-head"><h2 class="h2">Choose the work you need</h2></div><div class="service-grid"><article class="service"><h3 class="h3"><a class="service-title-link" href="/services/pressure-washing/">Pressure washing</a></h3><p>We clean concrete, pavers, and exterior surfaces with pressure and treatment selected for the material.</p><a class="page-link" href="/services/pressure-washing/">Explore pressure washing <span aria-hidden="true">↗</span></a></article>
<article class="service"><h3 class="h3"><a class="service-title-link" href="/services/paver-sealing/">Paver sealing</a></h3><p>Give your driveway, walkway, or pool deck a finish that suits the property. We clean the pavers, replace missing joint sand, and seal once the surface is ready.</p><a class="page-link" href="/services/paver-sealing/">Explore paver sealing <span aria-hidden="true">↗</span></a></article>
<article class="service"><h3 class="h3"><a class="service-title-link" href="/services/paver-repair/">Paver repair</a></h3><p>Loose borders, sunken sections, and uneven joints need attention beneath the surface. We lift the affected pavers, correct the base, and reset the area.</p><a class="page-link" href="/services/paver-repair/">Explore paver repair <span aria-hidden="true">↗</span></a></article>
-<article class="service"><h3 class="h3"><a class="service-title-link" href="/services/roof-cleaning/">Roof cleaning</a></h3><p>Give a roof marked by dark streaks and organic buildup a fresh start. We use a low-pressure soft wash for tile, shingle, and metal roofs, with care for the landscaping below.</p><a class="page-link" href="/services/roof-cleaning/">Explore roof cleaning <span aria-hidden="true">↗</span></a></article></div></div></section><section class="band" id="areas"><div class="wrap"><div class="section-head"><p class="eyebrow">Local coverage</p><h2 class="h2">Miami-Dade County communities</h2></div><p class="lead">We serve Miami-Dade County, including the communities below. Send your property address with your request so we can confirm the job details and scheduling.</p><ul class="page-cities"><li>Miami</li><li>Aventura</li><li>Miami Beach</li><li>Doral</li><li>Hialeah</li><li>Kendall</li><li>Coral Gables</li><li>Miami Lakes</li><li>North Miami</li><li>Pinecrest</li><li>Palmetto Bay</li><li>Homestead</li></ul><a class="page-link" href="#quote">Tell us about your property <span aria-hidden="true">↗</span></a></div></section><section class="band band--tinted"><div class="wrap"><div class="section-head"><p class="eyebrow">Before you book</p><h2 class="h2">Planning your service</h2></div><div class="page-faq"><details><summary>Which parts of Miami-Dade do you cover?</summary><p>Our coverage includes Miami, Miami Beach, Aventura, Doral, Hialeah, and the other communities listed on this page, including Homestead. Send the address so we can discuss your project.</p></details><details><summary>Do you clean storefronts and commercial exterior areas?</summary><p>Yes. Storefronts and dumpster pads are among our pressure washing services. Choose Commercial on the form and describe the surfaces and access requirements.</p></details><details><summary>What if a manager needs to coordinate access?</summary><p>Include the building or property contact and any entry arrangements in your message. We can confirm the job details and access requirements when following up on the estimate.</p></details></div></div></section><section class="band band--tinted" id="quote">
+<article class="service"><h3 class="h3"><a class="service-title-link" href="/services/roof-cleaning/">Roof cleaning</a></h3><p>We remove dark streaks and organic buildup from tile, shingle, and metal roofs with a low-pressure soft wash, with care for the landscaping below.</p><a class="page-link" href="/services/roof-cleaning/">Explore roof cleaning <span aria-hidden="true">↗</span></a></article></div></div></section><section class="band" id="areas"><div class="wrap"><div class="section-head"><h2 class="h2">Miami-Dade County communities</h2></div><p class="lead">We serve Miami-Dade County, including the communities below. Send your property address with your request so we can confirm the job details and scheduling.</p><ul class="page-cities"><li>Miami</li><li>Aventura</li><li>Miami Beach</li><li>Doral</li><li>Hialeah</li><li>Kendall</li><li>Coral Gables</li><li>Miami Lakes</li><li>North Miami</li><li>Pinecrest</li><li>Palmetto Bay</li><li>Homestead</li></ul><a class="page-link" href="#quote">Tell us about your property <span aria-hidden="true">↗</span></a></div></section><section class="band band--tinted"><div class="wrap"><div class="section-head"><h2 class="h2">Planning your service</h2></div><div class="page-faq"><details><summary>Which parts of Miami-Dade do you cover?</summary><p>Our coverage includes Miami, Miami Beach, Aventura, Doral, Hialeah, and the other communities listed on this page, including Homestead. Send the address so we can discuss your project.</p></details><details><summary>Do you clean storefronts and commercial exterior areas?</summary><p>Storefronts and dumpster pads are among our pressure washing services. Choose Commercial on the form and describe the surfaces and access requirements.</p></details><details><summary>What if a manager needs to coordinate access?</summary><p>Include the building or property contact and any entry arrangements in your message. We can confirm the job details and access requirements when following up on the estimate.</p></details></div></div></section><section class="band band--tinted" id="quote">
<div class="wrap">
<div class="section-head reveal">
<h2 class="h2">Request an estimate</h2>
@@ -251,6 +251,7 @@
<div class="quote-grid reveal">
<div class="quote-side">
+ <p class="quote-credentials">Licensed & insured. Free estimates.</p>
<div class="quote-row">
<div class="quote-label">Call or text</div>
<a class="quote-phone" href="tel:+19544013301">(954) 401-3301</a>
@@ -373,7 +374,7 @@
<path d="m5 12 4 4L19 6" />
</svg>
</div>
- <p class="eyebrow">Request received</p>
+ <p class="request-status">Request received</p>
<h3>Thanks, <span id="success-name">we’ve got it</span>.</h3>
<p>We’ll call or text to confirm the details and arrange a walkthrough if one is needed.</p>
<a class="quote-value" href="tel:+19544013301">Need us sooner? Call (954) 401-3301</a>
@@ -382,8 +383,8 @@
</div>
</div>
</div>
- </section><section class="band band--tinted"><div class="wrap"><div class="section-head"><p class="eyebrow">Across South Florida</p><h2 class="h2">Other service areas</h2></div><div class="page-two-grid"><article class="service"><h3 class="h3"><a class="service-title-link" href="/service-areas/broward-county/">Broward County</a></h3><p>Pressure washing, paver sealing and repair, and roof cleaning across Broward County.</p><a class="page-link" href="/service-areas/broward-county/">Explore broward county <span aria-hidden="true">↗</span></a></article>
-<article class="service"><h3 class="h3"><a class="service-title-link" href="/service-areas/palm-beach-county/">Palm Beach County</a></h3><p>Pressure washing, paver sealing and repair, and roof cleaning across Palm Beach County.</p><a class="page-link" href="/service-areas/palm-beach-county/">Explore palm beach county <span aria-hidden="true">↗</span></a></article></div></div></section></main>
+ </section><section class="band band--tinted"><div class="wrap"><div class="section-head"><h2 class="h2">Other service areas</h2></div><div class="page-two-grid"><article class="service"><h3 class="h3"><a class="service-title-link" href="/service-areas/broward-county/">Broward County</a></h3><p>Pressure washing, paver sealing and repair, and roof cleaning across Broward County.</p><a class="page-link" href="/service-areas/broward-county/">Broward County <span aria-hidden="true">↗</span></a></article>
+<article class="service"><h3 class="h3"><a class="service-title-link" href="/service-areas/palm-beach-county/">Palm Beach County</a></h3><p>Pressure washing, paver sealing and repair, and roof cleaning across Palm Beach County.</p><a class="page-link" href="/service-areas/palm-beach-county/">Palm Beach County <span aria-hidden="true">↗</span></a></article></div></div></section></main>
<footer class="footer">
<div class="wrap">
<div class="footer-inner">
diff --git a/docs/service-areas/palm-beach-county/index.html b/docs/service-areas/palm-beach-county/index.html
index 1251447..7defc38 100644
--- a/docs/service-areas/palm-beach-county/index.html
+++ b/docs/service-areas/palm-beach-county/index.html
@@ -22,7 +22,7 @@
<link rel="apple-touch-icon" href="/favicon.png" />
<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=Manrope:wght@400;500;600&family=Roboto+Mono:wght@400;500&family=Teko:wght@500;600&display=swap" rel="stylesheet" />
+ <link href="https://fonts.googleapis.com/css2?family=Source+Sans+3:wght@400;500;600;700&family=Teko:wght@500;600&display=swap" rel="stylesheet" />
<link rel="stylesheet" href="/assets/site.css" />
<link rel="stylesheet" href="/assets/pages.css" />
<noscript><style>.reveal { opacity: 1; transform: none; }</style></noscript>
@@ -236,10 +236,10 @@
</header>
<main id="main"><section class="page-hero page-hero--background" id="top"><img class="page-hero-background" src="/img/after-pool-deck.jpg" alt="" aria-hidden="true" fetchpriority="high" /><div class="wrap">
<nav class="breadcrumbs" aria-label="Breadcrumb"><a href="/">Home</a><span aria-hidden="true">/</span><a href="/#areas">Service areas</a><span aria-hidden="true">/</span><span aria-current="page">Palm Beach County</span></nav>
-<div class="page-hero-grid"><div class="page-hero-copy"><p class="eyebrow">Residential · Commercial · HOA</p><h1>Exterior cleaning<span class="accent">Palm Beach County.</span></h1><p class="lead">Refresh the outdoor spaces you use every day. Vold Services provides pressure washing, paver sealing and repair, and roof cleaning across Palm Beach County, including Boca Raton, Delray Beach, West Palm Beach, and Jupiter.</p><div class="page-actions"><a class="btn btn--primary" href="#quote">Request an estimate</a><a class="btn btn--ghost" href="tel:+19544013301">Call (954) 401-3301</a></div><p class="page-hero-note">Pressure washing · Paver care · Roof cleaning</p></div></div></div></section><section class="band"><div class="wrap"><div class="section-head"><p class="eyebrow">Your property. Your project.</p><h2 class="h2">Plan the care your outdoor surfaces need</h2></div><div class="page-detail-grid"><p class="lead">A pool deck, screened lanai, and paver driveway can all be included in an exterior cleaning request. If the paving has worn sealer or uneven sections, tell us before the work is planned. We can assess whether the surface needs cleaning alone or preparation for repair and sealing.</p><div class="area"><h3 class="h3">Tell us how you want to use the space</h3><p class="lead">For sealing projects, include the finish you prefer and any known history of previous sealing. Let us know about pool access, outdoor furniture, and gates so preparation can be discussed. Drying and use instructions depend on the actual project and will be confirmed when scheduling the work.</p></div></div></div></section><section class="band band--tinted" id="services"><div class="wrap"><div class="section-head"><p class="eyebrow">Services in Palm Beach County</p><h2 class="h2">Choose the work you need</h2></div><div class="service-grid"><article class="service"><h3 class="h3"><a class="service-title-link" href="/services/pressure-washing/">Pressure washing</a></h3><p>From a darkened driveway to a tired pool deck, the right wash makes a visible difference. We clean concrete, pavers, and exterior surfaces with pressure and treatment selected for the material.</p><a class="page-link" href="/services/pressure-washing/">Explore pressure washing <span aria-hidden="true">↗</span></a></article>
+<div class="page-hero-grid"><div class="page-hero-copy"><h1>Exterior cleaning<span class="page-title-location">Palm Beach County.</span></h1><p class="lead">Refresh the outdoor spaces you use every day. Vold Services provides pressure washing, paver sealing and repair, and roof cleaning across Palm Beach County, including Boca Raton, Delray Beach, West Palm Beach, and Jupiter.</p><div class="page-actions"><a class="btn btn--primary" href="#quote">Request an estimate</a><a class="btn btn--ghost" href="tel:+19544013301">Call (954) 401-3301</a></div><p class="page-hero-note">For homes, commercial properties, and HOAs.</p></div></div></div></section><section class="band"><div class="wrap"><div class="section-head"><h2 class="h2">Plan the care your outdoor surfaces need</h2></div><div class="page-detail-grid"><p class="lead">A pool deck, screened lanai, and paver driveway can all be included in an exterior cleaning request. If the paving has worn sealer or uneven sections, tell us before the work is planned. We can assess whether the surface needs cleaning alone or preparation for repair and sealing.</p><div class="area"><h3 class="h3">Tell us how you want to use the space</h3><p class="lead">For sealing projects, include the finish you prefer and any known history of previous sealing. Let us know about pool access, outdoor furniture, and gates so preparation can be discussed. Drying and use instructions depend on the actual project and will be confirmed when scheduling the work.</p></div></div></div></section><section class="band band--tinted" id="services"><div class="wrap"><div class="section-head"><h2 class="h2">Choose the work you need</h2></div><div class="service-grid"><article class="service"><h3 class="h3"><a class="service-title-link" href="/services/pressure-washing/">Pressure washing</a></h3><p>We clean concrete, pavers, and exterior surfaces with pressure and treatment selected for the material.</p><a class="page-link" href="/services/pressure-washing/">Explore pressure washing <span aria-hidden="true">↗</span></a></article>
<article class="service"><h3 class="h3"><a class="service-title-link" href="/services/paver-sealing/">Paver sealing</a></h3><p>Give your driveway, walkway, or pool deck a finish that suits the property. We clean the pavers, replace missing joint sand, and seal once the surface is ready.</p><a class="page-link" href="/services/paver-sealing/">Explore paver sealing <span aria-hidden="true">↗</span></a></article>
<article class="service"><h3 class="h3"><a class="service-title-link" href="/services/paver-repair/">Paver repair</a></h3><p>Loose borders, sunken sections, and uneven joints need attention beneath the surface. We lift the affected pavers, correct the base, and reset the area.</p><a class="page-link" href="/services/paver-repair/">Explore paver repair <span aria-hidden="true">↗</span></a></article>
-<article class="service"><h3 class="h3"><a class="service-title-link" href="/services/roof-cleaning/">Roof cleaning</a></h3><p>Give a roof marked by dark streaks and organic buildup a fresh start. We use a low-pressure soft wash for tile, shingle, and metal roofs, with care for the landscaping below.</p><a class="page-link" href="/services/roof-cleaning/">Explore roof cleaning <span aria-hidden="true">↗</span></a></article></div></div></section><section class="band" id="areas"><div class="wrap"><div class="section-head"><p class="eyebrow">Local coverage</p><h2 class="h2">Palm Beach County communities</h2></div><p class="lead">We serve Palm Beach County, including the communities below. Send your property address with your request so we can confirm the job details and scheduling.</p><ul class="page-cities"><li>Boca Raton</li><li>Delray Beach</li><li>Boynton Beach</li><li>West Palm Beach</li><li>Wellington</li><li>Jupiter</li><li>Royal Palm Beach</li><li>Lake Worth</li><li>Palm Beach Gardens</li><li>Greenacres</li></ul><a class="page-link" href="#quote">Tell us about your property <span aria-hidden="true">↗</span></a></div></section><section class="band band--tinted"><div class="wrap"><div class="section-head"><p class="eyebrow">Before you book</p><h2 class="h2">Planning your service</h2></div><div class="page-faq"><details><summary>Do you serve northern Palm Beach County?</summary><p>Our listed service area includes Jupiter and Palm Beach Gardens as well as West Palm Beach and the southern county communities shown here. Include your address when requesting an estimate.</p></details><details><summary>Can you clean and seal a travertine pool deck?</summary><p>Pool deck cleaning and paver sealing are part of our services, and our project photos include travertine surfaces. Send photos and describe the existing finish so we can assess the preparation needed.</p></details><details><summary>Can roof cleaning be included with driveway work?</summary><p>Yes. We offer both services. Select the main service on the estimate form and describe the roof and driveway in your message so both can be considered.</p></details></div></div></section><section class="band band--tinted" id="quote">
+<article class="service"><h3 class="h3"><a class="service-title-link" href="/services/roof-cleaning/">Roof cleaning</a></h3><p>We remove dark streaks and organic buildup from tile, shingle, and metal roofs with a low-pressure soft wash, with care for the landscaping below.</p><a class="page-link" href="/services/roof-cleaning/">Explore roof cleaning <span aria-hidden="true">↗</span></a></article></div></div></section><section class="band" id="areas"><div class="wrap"><div class="section-head"><h2 class="h2">Palm Beach County communities</h2></div><p class="lead">We serve Palm Beach County, including the communities below. Send your property address with your request so we can confirm the job details and scheduling.</p><ul class="page-cities"><li>Boca Raton</li><li>Delray Beach</li><li>Boynton Beach</li><li>West Palm Beach</li><li>Wellington</li><li>Jupiter</li><li>Royal Palm Beach</li><li>Lake Worth</li><li>Palm Beach Gardens</li><li>Greenacres</li></ul><a class="page-link" href="#quote">Tell us about your property <span aria-hidden="true">↗</span></a></div></section><section class="band band--tinted"><div class="wrap"><div class="section-head"><h2 class="h2">Planning your service</h2></div><div class="page-faq"><details><summary>Do you serve northern Palm Beach County?</summary><p>Our service area includes Jupiter and Palm Beach Gardens as well as West Palm Beach and the southern county communities shown here. Include your address when requesting an estimate.</p></details><details><summary>Can you clean and seal a travertine pool deck?</summary><p>Pool deck cleaning and paver sealing are part of our services, and our project photos include travertine surfaces. Send photos and describe the existing finish so we can assess the preparation needed.</p></details><details><summary>Can roof cleaning be included with driveway work?</summary><p>Select the main service on the estimate form and describe the roof and driveway in your message so both can be considered.</p></details></div></div></section><section class="band band--tinted" id="quote">
<div class="wrap">
<div class="section-head reveal">
<h2 class="h2">Request an estimate</h2>
@@ -251,6 +251,7 @@
<div class="quote-grid reveal">
<div class="quote-side">
+ <p class="quote-credentials">Licensed & insured. Free estimates.</p>
<div class="quote-row">
<div class="quote-label">Call or text</div>
<a class="quote-phone" href="tel:+19544013301">(954) 401-3301</a>
@@ -373,7 +374,7 @@
<path d="m5 12 4 4L19 6" />
</svg>
</div>
- <p class="eyebrow">Request received</p>
+ <p class="request-status">Request received</p>
<h3>Thanks, <span id="success-name">we’ve got it</span>.</h3>
<p>We’ll call or text to confirm the details and arrange a walkthrough if one is needed.</p>
<a class="quote-value" href="tel:+19544013301">Need us sooner? Call (954) 401-3301</a>
@@ -382,8 +383,8 @@
</div>
</div>
</div>
- </section><section class="band band--tinted"><div class="wrap"><div class="section-head"><p class="eyebrow">Across South Florida</p><h2 class="h2">Other service areas</h2></div><div class="page-two-grid"><article class="service"><h3 class="h3"><a class="service-title-link" href="/service-areas/broward-county/">Broward County</a></h3><p>Pressure washing, paver sealing and repair, and roof cleaning across Broward County.</p><a class="page-link" href="/service-areas/broward-county/">Explore broward county <span aria-hidden="true">↗</span></a></article>
-<article class="service"><h3 class="h3"><a class="service-title-link" href="/service-areas/miami-dade-county/">Miami-Dade County</a></h3><p>Pressure washing, paver sealing and repair, and roof cleaning across Miami-Dade County.</p><a class="page-link" href="/service-areas/miami-dade-county/">Explore miami-dade county <span aria-hidden="true">↗</span></a></article></div></div></section></main>
+ </section><section class="band band--tinted"><div class="wrap"><div class="section-head"><h2 class="h2">Other service areas</h2></div><div class="page-two-grid"><article class="service"><h3 class="h3"><a class="service-title-link" href="/service-areas/broward-county/">Broward County</a></h3><p>Pressure washing, paver sealing and repair, and roof cleaning across Broward County.</p><a class="page-link" href="/service-areas/broward-county/">Broward County <span aria-hidden="true">↗</span></a></article>
+<article class="service"><h3 class="h3"><a class="service-title-link" href="/service-areas/miami-dade-county/">Miami-Dade County</a></h3><p>Pressure washing, paver sealing and repair, and roof cleaning across Miami-Dade County.</p><a class="page-link" href="/service-areas/miami-dade-county/">Miami-Dade County <span aria-hidden="true">↗</span></a></article></div></div></section></main>
<footer class="footer">
<div class="wrap">
<div class="footer-inner">
diff --git a/docs/services/paver-repair/index.html b/docs/services/paver-repair/index.html
index 8048070..8c2212b 100644
--- a/docs/services/paver-repair/index.html
+++ b/docs/services/paver-repair/index.html
@@ -22,7 +22,7 @@
<link rel="apple-touch-icon" href="/favicon.png" />
<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=Manrope:wght@400;500;600&family=Roboto+Mono:wght@400;500&family=Teko:wght@500;600&display=swap" rel="stylesheet" />
+ <link href="https://fonts.googleapis.com/css2?family=Source+Sans+3:wght@400;500;600;700&family=Teko:wght@500;600&display=swap" rel="stylesheet" />
<link rel="stylesheet" href="/assets/site.css" />
<link rel="stylesheet" href="/assets/pages.css" />
<noscript><style>.reveal { opacity: 1; transform: none; }</style></noscript>
@@ -239,7 +239,7 @@
</header>
<main id="main"><section class="page-hero page-hero--background" id="top"><img class="page-hero-background" src="/img/work-driveway-install.jpg" alt="" aria-hidden="true" fetchpriority="high" /><div class="wrap">
<nav class="breadcrumbs" aria-label="Breadcrumb"><a href="/">Home</a><span aria-hidden="true">/</span><a href="/#services">Services</a><span aria-hidden="true">/</span><span aria-current="page">Paver repair</span></nav>
-<div class="page-hero-grid"><div class="page-hero-copy"><p class="eyebrow">Broward · Miami-Dade · Palm Beach</p><h1>Paver repair<span class="accent">Done with care.</span></h1><p class="lead">Loose borders, sunken sections, and uneven joints need attention beneath the surface. We lift the affected pavers, correct the base, and reset the area.</p><div class="page-actions"><a class="btn btn--primary" href="#quote">Request an estimate</a><a class="btn btn--ghost" href="tel:+19544013301">Call (954) 401-3301</a></div><p class="page-hero-note">Reset the pavers. Restore the surface.</p></div></div></div></section><section class="band"><div class="wrap"><div class="section-head"><p class="eyebrow">Built around the material</p><h2 class="h2">Address the area that has moved</h2></div><div class="page-detail-grid"><p class="lead">Fresh joint sand alone will not correct a sunken section. We assess the affected area, lift the pavers that need resetting, and work on the base before relaying them. When pieces are damaged, replacement depends on finding a suitable match. Send a close-up and a wider view so we can see how the repair fits into the surrounding surface.</p><div class="area"><h3 class="h3">What we can help with</h3><ul class="page-surface-list"><li>Sunken or uneven driveway sections</li><li>Loose edge and border pavers</li><li>Separated pavers in patios and walkways</li><li>Small areas needing lift and relay</li><li>Damaged pieces where a match is available</li></ul></div></div></div></section><section class="band band--tinted"><div class="wrap"><div class="section-head"><p class="eyebrow">What to expect</p><h2 class="h2">From estimate to finished surface</h2></div><div class="page-three-grid"><article class="service"><p class="eyebrow">Step 1</p><h3 class="h3">Identify the affected area</h3><p>Send photos of the uneven section and the surrounding paving. Note whether pieces rock, separate, or have visible damage. We confirm the repair scope after reviewing the condition.</p></article><article class="service"><p class="eyebrow">Step 2</p><h3 class="h3">Lift and correct the base</h3><p>We remove the affected pavers and correct the base before resetting them. Damaged pieces are replaced when a suitable match is available.</p></article><article class="service"><p class="eyebrow">Step 3</p><h3 class="h3">Reset and finish the joints</h3><p>We relay the pavers, add joint sand, and give the area a final rinse. If cleaning or sealing is also needed, we discuss it as part of the overall project.</p></article></div></div></section><section class="band band--tinted"><div class="wrap"><div class="section-head"><p class="eyebrow">Before you book</p><h2 class="h2">Paver repair questions</h2></div><div class="page-faq"><details><summary>Do you need to replace the whole driveway?</summary><p>Our listed repair services focus on small-area lift and relay and affected sections. Photos or a walkthrough help establish whether that approach fits your project.</p></details><details><summary>Will replacement pavers match?</summary><p>Replacement depends on availability. Share photos of the existing pieces and let us know whether you have spare pavers so we can assess the options.</p></details><details><summary>Can you clean and seal after a repair?</summary><p>Yes, we also offer pressure washing and paver sealing. Include those requests with the repair details so the work can be considered together.</p></details><details><summary>What photos help you assess the repair?</summary><p>Send a close-up of loose or damaged pieces and a wider photo showing the area around them. Include an approximate size and describe where the surface has sunk or separated.</p></details></div></div></section><section class="band band--tinted" id="quote">
+<div class="page-hero-grid"><div class="page-hero-copy"><h1>Paver repair</h1><p class="lead">Loose borders, sunken sections, and uneven joints need attention beneath the surface. We lift the affected pavers, correct the base, and reset the area.</p><div class="page-actions"><a class="btn btn--primary" href="#quote">Request an estimate</a><a class="btn btn--ghost" href="tel:+19544013301">Call (954) 401-3301</a></div><p class="page-hero-note">Serving Broward, Miami-Dade, and Palm Beach counties.</p></div></div></div></section><section class="band"><div class="wrap"><div class="section-head"><h2 class="h2">Address the area that has moved</h2></div><div class="page-detail-grid"><p class="lead">Fresh joint sand alone will not correct a sunken section. We assess the affected area, lift the pavers that need resetting, and work on the base before relaying them. When pieces are damaged, replacement depends on finding a suitable match. Send a close-up and a wider view so we can see how the repair fits into the surrounding surface.</p><div class="area"><h3 class="h3">What we can help with</h3><ul class="page-surface-list"><li>Sunken or uneven driveway sections</li><li>Loose edge and border pavers</li><li>Separated pavers in patios and walkways</li><li>Small areas needing lift and relay</li><li>Damaged pieces where a match is available</li></ul></div></div></div></section><section class="band band--tinted"><div class="wrap"><div class="section-head"><h2 class="h2">From estimate to finished surface</h2></div><div class="page-three-grid"><article class="service"><h3 class="h3">Identify the affected area</h3><p>Send photos of the uneven section and the surrounding paving. Note whether pieces rock, separate, or have visible damage. We confirm the repair scope after reviewing the condition.</p></article><article class="service"><h3 class="h3">Lift and correct the base</h3><p>We remove the affected pavers and correct the base before resetting them. Damaged pieces are replaced when a suitable match is available.</p></article><article class="service"><h3 class="h3">Reset and finish the joints</h3><p>We relay the pavers, add joint sand, and give the area a final rinse. If cleaning or sealing is also needed, we discuss it as part of the overall project.</p></article></div></div></section><section class="band band--tinted"><div class="wrap"><div class="section-head"><h2 class="h2">Paver repair questions</h2></div><div class="page-faq"><details><summary>Do you need to replace the whole driveway?</summary><p>Our repair services focus on small-area lift and relay and affected sections. Photos or a walkthrough help establish whether that approach fits your project.</p></details><details><summary>Will replacement pavers match?</summary><p>Replacement depends on availability. Share photos of the existing pieces and let us know whether you have spare pavers so we can assess the options.</p></details><details><summary>Can you clean and seal after a repair?</summary><p>We also offer pressure washing and paver sealing. Include those requests with the repair details so the work can be considered together.</p></details><details><summary>What photos help you assess the repair?</summary><p>Send a close-up of loose or damaged pieces and a wider photo showing the area around them. Include an approximate size and describe where the surface has sunk or separated.</p></details></div></div></section><section class="band band--tinted" id="quote">
<div class="wrap">
<div class="section-head reveal">
<h2 class="h2">Request an estimate</h2>
@@ -251,6 +251,7 @@
<div class="quote-grid reveal">
<div class="quote-side">
+ <p class="quote-credentials">Licensed & insured. Free estimates.</p>
<div class="quote-row">
<div class="quote-label">Call or text</div>
<a class="quote-phone" href="tel:+19544013301">(954) 401-3301</a>
@@ -372,7 +373,7 @@
<path d="m5 12 4 4L19 6" />
</svg>
</div>
- <p class="eyebrow">Request received</p>
+ <p class="request-status">Request received</p>
<h3>Thanks, <span id="success-name">we’ve got it</span>.</h3>
<p>We’ll call or text to confirm the details and arrange a walkthrough if one is needed.</p>
<a class="quote-value" href="tel:+19544013301">Need us sooner? Call (954) 401-3301</a>
@@ -381,11 +382,11 @@
</div>
</div>
</div>
- </section><section class="band"><div class="wrap"><div class="section-head"><p class="eyebrow">Also from Vold Services</p><h2 class="h2">Related services</h2></div><div class="page-three-grid"><article class="service"><h3 class="h3"><a class="service-title-link" href="/services/pressure-washing/">Pressure washing</a></h3><p>From a darkened driveway to a tired pool deck, the right wash makes a visible difference. We clean concrete, pavers, and exterior surfaces with pressure and treatment selected for the material.</p><a class="page-link" href="/services/pressure-washing/">Explore pressure washing <span aria-hidden="true">↗</span></a></article>
+ </section><section class="band"><div class="wrap"><div class="section-head"><h2 class="h2">Related services</h2></div><div class="page-three-grid"><article class="service"><h3 class="h3"><a class="service-title-link" href="/services/pressure-washing/">Pressure washing</a></h3><p>We clean concrete, pavers, and exterior surfaces with pressure and treatment selected for the material.</p><a class="page-link" href="/services/pressure-washing/">Explore pressure washing <span aria-hidden="true">↗</span></a></article>
<article class="service"><h3 class="h3"><a class="service-title-link" href="/services/paver-sealing/">Paver sealing</a></h3><p>Give your driveway, walkway, or pool deck a finish that suits the property. We clean the pavers, replace missing joint sand, and seal once the surface is ready.</p><a class="page-link" href="/services/paver-sealing/">Explore paver sealing <span aria-hidden="true">↗</span></a></article>
-<article class="service"><h3 class="h3"><a class="service-title-link" href="/services/roof-cleaning/">Roof cleaning</a></h3><p>Give a roof marked by dark streaks and organic buildup a fresh start. We use a low-pressure soft wash for tile, shingle, and metal roofs, with care for the landscaping below.</p><a class="page-link" href="/services/roof-cleaning/">Explore roof cleaning <span aria-hidden="true">↗</span></a></article></div></div></section><section class="band band--tinted" id="areas"><div class="wrap"><div class="section-head"><p class="eyebrow">Across South Florida</p><h2 class="h2">Find your service area</h2></div><div class="page-three-grid"><article class="service"><h3 class="h3"><a class="service-title-link" href="/service-areas/broward-county/">Broward County</a></h3><p>Pressure washing, paver sealing and repair, and roof cleaning across Broward County.</p><a class="page-link" href="/service-areas/broward-county/">Explore broward county <span aria-hidden="true">↗</span></a></article>
-<article class="service"><h3 class="h3"><a class="service-title-link" href="/service-areas/miami-dade-county/">Miami-Dade County</a></h3><p>Pressure washing, paver sealing and repair, and roof cleaning across Miami-Dade County.</p><a class="page-link" href="/service-areas/miami-dade-county/">Explore miami-dade county <span aria-hidden="true">↗</span></a></article>
-<article class="service"><h3 class="h3"><a class="service-title-link" href="/service-areas/palm-beach-county/">Palm Beach County</a></h3><p>Pressure washing, paver sealing and repair, and roof cleaning across Palm Beach County.</p><a class="page-link" href="/service-areas/palm-beach-county/">Explore palm beach county <span aria-hidden="true">↗</span></a></article></div></div></section></main>
+<article class="service"><h3 class="h3"><a class="service-title-link" href="/services/roof-cleaning/">Roof cleaning</a></h3><p>We remove dark streaks and organic buildup from tile, shingle, and metal roofs with a low-pressure soft wash, with care for the landscaping below.</p><a class="page-link" href="/services/roof-cleaning/">Explore roof cleaning <span aria-hidden="true">↗</span></a></article></div></div></section><section class="band band--tinted" id="areas"><div class="wrap"><div class="section-head"><h2 class="h2">Find your service area</h2></div><div class="page-three-grid"><article class="service"><h3 class="h3"><a class="service-title-link" href="/service-areas/broward-county/">Broward County</a></h3><p>Pressure washing, paver sealing and repair, and roof cleaning across Broward County.</p><a class="page-link" href="/service-areas/broward-county/">Broward County <span aria-hidden="true">↗</span></a></article>
+<article class="service"><h3 class="h3"><a class="service-title-link" href="/service-areas/miami-dade-county/">Miami-Dade County</a></h3><p>Pressure washing, paver sealing and repair, and roof cleaning across Miami-Dade County.</p><a class="page-link" href="/service-areas/miami-dade-county/">Miami-Dade County <span aria-hidden="true">↗</span></a></article>
+<article class="service"><h3 class="h3"><a class="service-title-link" href="/service-areas/palm-beach-county/">Palm Beach County</a></h3><p>Pressure washing, paver sealing and repair, and roof cleaning across Palm Beach County.</p><a class="page-link" href="/service-areas/palm-beach-county/">Palm Beach County <span aria-hidden="true">↗</span></a></article></div></div></section></main>
<footer class="footer">
<div class="wrap">
<div class="footer-inner">
diff --git a/docs/services/paver-sealing/index.html b/docs/services/paver-sealing/index.html
index 85a0cbd..1c66a66 100644
--- a/docs/services/paver-sealing/index.html
+++ b/docs/services/paver-sealing/index.html
@@ -22,7 +22,7 @@
<link rel="apple-touch-icon" href="/favicon.png" />
<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=Manrope:wght@400;500;600&family=Roboto+Mono:wght@400;500&family=Teko:wght@500;600&display=swap" rel="stylesheet" />
+ <link href="https://fonts.googleapis.com/css2?family=Source+Sans+3:wght@400;500;600;700&family=Teko:wght@500;600&display=swap" rel="stylesheet" />
<link rel="stylesheet" href="/assets/site.css" />
<link rel="stylesheet" href="/assets/pages.css" />
<noscript><style>.reveal { opacity: 1; transform: none; }</style></noscript>
@@ -239,7 +239,7 @@
</header>
<main id="main"><section class="page-hero page-hero--background" id="top"><img class="page-hero-background" src="/img/after-pool-deck.jpg" alt="" aria-hidden="true" fetchpriority="high" /><div class="wrap">
<nav class="breadcrumbs" aria-label="Breadcrumb"><a href="/">Home</a><span aria-hidden="true">/</span><a href="/#services">Services</a><span aria-hidden="true">/</span><span aria-current="page">Paver sealing</span></nav>
-<div class="page-hero-grid"><div class="page-hero-copy"><p class="eyebrow">Broward · Miami-Dade · Palm Beach</p><h1>Paver sealing<span class="accent">Done with care.</span></h1><p class="lead">Give your driveway, walkway, or pool deck a finish that suits the property. We clean the pavers, replace missing joint sand, and seal once the surface is ready.</p><div class="page-actions"><a class="btn btn--primary" href="#quote">Request an estimate</a><a class="btn btn--ghost" href="tel:+19544013301">Call (954) 401-3301</a></div><p class="page-hero-note">Clean. Re-sand. Protect.</p></div></div></div></section><section class="band"><div class="wrap"><div class="section-head"><p class="eyebrow">Built around the material</p><h2 class="h2">The finish starts with the preparation</h2></div><div class="page-detail-grid"><p class="lead">Fresh sealer is only part of the job. Dirt, surface deposits, empty joints, and uneven pavers need attention first. We assess the existing surface and discuss the look you want, from natural to semi-gloss or wet-look, before planning the preparation and application.</p><div class="area"><h3 class="h3">What we can help with</h3><ul class="page-surface-list"><li>Paver driveways and front entrances</li><li>Travertine pool decks and patios</li><li>Walkways and screened lanais</li><li>Worn surfaces ready for resealing</li><li>Missing joint sand and surface deposits</li></ul></div></div></div></section><section class="band band--tinted"><div class="wrap"><div class="section-head"><p class="eyebrow">What to expect</p><h2 class="h2">From estimate to finished surface</h2></div><div class="page-three-grid"><article class="service"><p class="eyebrow">Step 1</p><h3 class="h3">Check the pavers and existing finish</h3><p>Tell us when the surface was last sealed, if you know, and send photos of cloudy areas, worn patches, or uneven pavers. Repairs can be discussed before sealing.</p></article><article class="service"><p class="eyebrow">Step 2</p><h3 class="h3">Clean and replace joint sand</h3><p>We wash the surface, address efflorescence as needed, and replace missing joint sand. The pavers must be clean and dry before application.</p></article><article class="service"><p class="eyebrow">Step 3</p><h3 class="h3">Apply the selected finish</h3><p>Once the surface is ready, we apply the agreed finish. We confirm access and use instructions for your project so you know when the area can be used again.</p></article></div></div></section><section class="band"><div class="wrap"><div class="section-head"><p class="eyebrow">Our work</p><h2 class="h2">See the difference</h2></div><div class="page-comparison"><figure><img src="/img/before-pool-deck.jpg" alt="Pool deck before cleaning and sealing" width="746" height="829" loading="lazy" /><figcaption>Before</figcaption></figure><figure><img src="/img/after-pool-deck.jpg" alt="Pool deck after cleaning and sealing" width="746" height="829" loading="lazy" /><figcaption>After cleaning and sealing</figcaption></figure></div><p class="page-caption">This project included cleaning and sealing. Your estimate will specify the services included for your surface.</p></div></section><section class="band band--tinted"><div class="wrap"><div class="section-head"><p class="eyebrow">Before you book</p><h2 class="h2">Paver sealing questions</h2></div><div class="page-faq"><details><summary>Do I have to choose a glossy finish?</summary><p>No. Natural, semi-gloss, and wet-look finishes are available. Tell us the appearance you prefer so we can discuss an option suited to your pavers.</p></details><details><summary>Can you seal pavers that are already uneven?</summary><p>Uneven or loose pavers should be assessed for repair first. Mention those areas when requesting an estimate so repair and sealing can be planned together.</p></details><details><summary>Can you reseal an existing surface?</summary><p>Yes. We offer resealing for worn pavers. Photos and any information about the previous finish help us assess the preparation needed.</p></details><details><summary>How long will the job take?</summary><p>Timing depends on the size, condition, preparation, and weather. Cleaning, drying, and application need to be planned around the actual surface; we confirm the schedule and use instructions for your job.</p></details></div></div></section><section class="band band--tinted" id="quote">
+<div class="page-hero-grid"><div class="page-hero-copy"><h1>Paver sealing</h1><p class="lead">Give your driveway, walkway, or pool deck a finish that suits the property. We clean the pavers, replace missing joint sand, and seal once the surface is ready.</p><div class="page-actions"><a class="btn btn--primary" href="#quote">Request an estimate</a><a class="btn btn--ghost" href="tel:+19544013301">Call (954) 401-3301</a></div><p class="page-hero-note">Serving Broward, Miami-Dade, and Palm Beach counties.</p></div></div></div></section><section class="band"><div class="wrap"><div class="section-head"><h2 class="h2">The finish starts with the preparation</h2></div><div class="page-detail-grid"><p class="lead">Fresh sealer is only part of the job. Dirt, surface deposits, empty joints, and uneven pavers need attention first. We assess the existing surface and discuss the look you want, from natural to semi-gloss or wet-look, before planning the preparation and application.</p><div class="area"><h3 class="h3">What we can help with</h3><ul class="page-surface-list"><li>Paver driveways and front entrances</li><li>Travertine pool decks and patios</li><li>Walkways and screened lanais</li><li>Worn surfaces ready for resealing</li><li>Missing joint sand and surface deposits</li></ul></div></div></div></section><section class="band band--tinted"><div class="wrap"><div class="section-head"><h2 class="h2">From estimate to finished surface</h2></div><div class="page-three-grid"><article class="service"><h3 class="h3">Check the pavers and existing finish</h3><p>Tell us when the surface was last sealed, if you know, and send photos of cloudy areas, worn patches, or uneven pavers. Repairs can be discussed before sealing.</p></article><article class="service"><h3 class="h3">Clean and replace joint sand</h3><p>We wash the surface, address efflorescence as needed, and replace missing joint sand. The pavers must be clean and dry before application.</p></article><article class="service"><h3 class="h3">Apply the selected finish</h3><p>Once the surface is ready, we apply the agreed finish. We confirm access and use instructions for your project so you know when the area can be used again.</p></article></div></div></section><section class="band"><div class="wrap"><div class="section-head"><h2 class="h2">See the difference</h2></div><div class="page-comparison"><figure><img src="/img/before-pool-deck.jpg" alt="Pool deck before cleaning and sealing" width="746" height="829" loading="lazy" /><figcaption>Before</figcaption></figure><figure><img src="/img/after-pool-deck.jpg" alt="Pool deck after cleaning and sealing" width="746" height="829" loading="lazy" /><figcaption>After cleaning and sealing</figcaption></figure></div><p class="page-caption">This project included cleaning and sealing. Your estimate will specify the services included for your surface.</p></div></section><section class="band band--tinted"><div class="wrap"><div class="section-head"><h2 class="h2">Paver sealing questions</h2></div><div class="page-faq"><details><summary>Do I have to choose a glossy finish?</summary><p>Natural, semi-gloss, and wet-look finishes are available. Tell us the appearance you prefer so we can discuss an option suited to your pavers.</p></details><details><summary>Can you seal pavers that are already uneven?</summary><p>Uneven or loose pavers should be assessed for repair first. Mention those areas when requesting an estimate so repair and sealing can be planned together.</p></details><details><summary>Can you reseal an existing surface?</summary><p>We reseal worn pavers. Photos and any information about the previous finish help us assess the preparation needed.</p></details><details><summary>How long will the job take?</summary><p>Timing depends on the size, condition, preparation, and weather. Cleaning, drying, and application need to be planned around the actual surface; we confirm the schedule and use instructions for your job.</p></details></div></div></section><section class="band band--tinted" id="quote">
<div class="wrap">
<div class="section-head reveal">
<h2 class="h2">Request an estimate</h2>
@@ -251,6 +251,7 @@
<div class="quote-grid reveal">
<div class="quote-side">
+ <p class="quote-credentials">Licensed & insured. Free estimates.</p>
<div class="quote-row">
<div class="quote-label">Call or text</div>
<a class="quote-phone" href="tel:+19544013301">(954) 401-3301</a>
@@ -372,7 +373,7 @@
<path d="m5 12 4 4L19 6" />
</svg>
</div>
- <p class="eyebrow">Request received</p>
+ <p class="request-status">Request received</p>
<h3>Thanks, <span id="success-name">we’ve got it</span>.</h3>
<p>We’ll call or text to confirm the details and arrange a walkthrough if one is needed.</p>
<a class="quote-value" href="tel:+19544013301">Need us sooner? Call (954) 401-3301</a>
@@ -381,11 +382,11 @@
</div>
</div>
</div>
- </section><section class="band"><div class="wrap"><div class="section-head"><p class="eyebrow">Also from Vold Services</p><h2 class="h2">Related services</h2></div><div class="page-three-grid"><article class="service"><h3 class="h3"><a class="service-title-link" href="/services/pressure-washing/">Pressure washing</a></h3><p>From a darkened driveway to a tired pool deck, the right wash makes a visible difference. We clean concrete, pavers, and exterior surfaces with pressure and treatment selected for the material.</p><a class="page-link" href="/services/pressure-washing/">Explore pressure washing <span aria-hidden="true">↗</span></a></article>
+ </section><section class="band"><div class="wrap"><div class="section-head"><h2 class="h2">Related services</h2></div><div class="page-three-grid"><article class="service"><h3 class="h3"><a class="service-title-link" href="/services/pressure-washing/">Pressure washing</a></h3><p>We clean concrete, pavers, and exterior surfaces with pressure and treatment selected for the material.</p><a class="page-link" href="/services/pressure-washing/">Explore pressure washing <span aria-hidden="true">↗</span></a></article>
<article class="service"><h3 class="h3"><a class="service-title-link" href="/services/paver-repair/">Paver repair</a></h3><p>Loose borders, sunken sections, and uneven joints need attention beneath the surface. We lift the affected pavers, correct the base, and reset the area.</p><a class="page-link" href="/services/paver-repair/">Explore paver repair <span aria-hidden="true">↗</span></a></article>
-<article class="service"><h3 class="h3"><a class="service-title-link" href="/services/roof-cleaning/">Roof cleaning</a></h3><p>Give a roof marked by dark streaks and organic buildup a fresh start. We use a low-pressure soft wash for tile, shingle, and metal roofs, with care for the landscaping below.</p><a class="page-link" href="/services/roof-cleaning/">Explore roof cleaning <span aria-hidden="true">↗</span></a></article></div></div></section><section class="band band--tinted" id="areas"><div class="wrap"><div class="section-head"><p class="eyebrow">Across South Florida</p><h2 class="h2">Find your service area</h2></div><div class="page-three-grid"><article class="service"><h3 class="h3"><a class="service-title-link" href="/service-areas/broward-county/">Broward County</a></h3><p>Pressure washing, paver sealing and repair, and roof cleaning across Broward County.</p><a class="page-link" href="/service-areas/broward-county/">Explore broward county <span aria-hidden="true">↗</span></a></article>
-<article class="service"><h3 class="h3"><a class="service-title-link" href="/service-areas/miami-dade-county/">Miami-Dade County</a></h3><p>Pressure washing, paver sealing and repair, and roof cleaning across Miami-Dade County.</p><a class="page-link" href="/service-areas/miami-dade-county/">Explore miami-dade county <span aria-hidden="true">↗</span></a></article>
-<article class="service"><h3 class="h3"><a class="service-title-link" href="/service-areas/palm-beach-county/">Palm Beach County</a></h3><p>Pressure washing, paver sealing and repair, and roof cleaning across Palm Beach County.</p><a class="page-link" href="/service-areas/palm-beach-county/">Explore palm beach county <span aria-hidden="true">↗</span></a></article></div></div></section></main>
+<article class="service"><h3 class="h3"><a class="service-title-link" href="/services/roof-cleaning/">Roof cleaning</a></h3><p>We remove dark streaks and organic buildup from tile, shingle, and metal roofs with a low-pressure soft wash, with care for the landscaping below.</p><a class="page-link" href="/services/roof-cleaning/">Explore roof cleaning <span aria-hidden="true">↗</span></a></article></div></div></section><section class="band band--tinted" id="areas"><div class="wrap"><div class="section-head"><h2 class="h2">Find your service area</h2></div><div class="page-three-grid"><article class="service"><h3 class="h3"><a class="service-title-link" href="/service-areas/broward-county/">Broward County</a></h3><p>Pressure washing, paver sealing and repair, and roof cleaning across Broward County.</p><a class="page-link" href="/service-areas/broward-county/">Broward County <span aria-hidden="true">↗</span></a></article>
+<article class="service"><h3 class="h3"><a class="service-title-link" href="/service-areas/miami-dade-county/">Miami-Dade County</a></h3><p>Pressure washing, paver sealing and repair, and roof cleaning across Miami-Dade County.</p><a class="page-link" href="/service-areas/miami-dade-county/">Miami-Dade County <span aria-hidden="true">↗</span></a></article>
+<article class="service"><h3 class="h3"><a class="service-title-link" href="/service-areas/palm-beach-county/">Palm Beach County</a></h3><p>Pressure washing, paver sealing and repair, and roof cleaning across Palm Beach County.</p><a class="page-link" href="/service-areas/palm-beach-county/">Palm Beach County <span aria-hidden="true">↗</span></a></article></div></div></section></main>
<footer class="footer">
<div class="wrap">
<div class="footer-inner">
diff --git a/docs/services/pressure-washing/index.html b/docs/services/pressure-washing/index.html
index 18711b8..6248d14 100644
--- a/docs/services/pressure-washing/index.html
+++ b/docs/services/pressure-washing/index.html
@@ -22,7 +22,7 @@
<link rel="apple-touch-icon" href="/favicon.png" />
<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=Manrope:wght@400;500;600&family=Roboto+Mono:wght@400;500&family=Teko:wght@500;600&display=swap" rel="stylesheet" />
+ <link href="https://fonts.googleapis.com/css2?family=Source+Sans+3:wght@400;500;600;700&family=Teko:wght@500;600&display=swap" rel="stylesheet" />
<link rel="stylesheet" href="/assets/site.css" />
<link rel="stylesheet" href="/assets/pages.css" />
<noscript><style>.reveal { opacity: 1; transform: none; }</style></noscript>
@@ -239,7 +239,7 @@
</header>
<main id="main"><section class="page-hero page-hero--background" id="top"><img class="page-hero-background" src="/img/after-driveway.jpg" alt="" aria-hidden="true" fetchpriority="high" /><div class="wrap">
<nav class="breadcrumbs" aria-label="Breadcrumb"><a href="/">Home</a><span aria-hidden="true">/</span><a href="/#services">Services</a><span aria-hidden="true">/</span><span aria-current="page">Pressure washing</span></nav>
-<div class="page-hero-grid"><div class="page-hero-copy"><p class="eyebrow">Broward · Miami-Dade · Palm Beach</p><h1>Pressure washing<span class="accent">Done with care.</span></h1><p class="lead">From a darkened driveway to a tired pool deck, the right wash makes a visible difference. We clean concrete, pavers, and exterior surfaces with pressure and treatment selected for the material.</p><div class="page-actions"><a class="btn btn--primary" href="#quote">Request an estimate</a><a class="btn btn--ghost" href="tel:+19544013301">Call (954) 401-3301</a></div><p class="page-hero-note">Clean the surface. Bring back the curb appeal.</p></div></div></div></section><section class="band"><div class="wrap"><div class="section-head"><p class="eyebrow">Built around the material</p><h2 class="h2">A different approach for every surface</h2></div><div class="page-detail-grid"><p class="lead">Concrete can take a different cleaning approach than paint or porous stone. We use surface cleaners on suitable hard surfaces and lower pressure where the material calls for it. Tell us what needs cleaning and we can help you decide whether washing alone, repair, or sealing is the right next step.</p><div class="area"><h3 class="h3">What we can help with</h3><ul class="page-surface-list"><li>Concrete driveways, sidewalks, and walkways</li><li>Paver patios, pool decks, and lanais</li><li>House and building exteriors</li><li>Fences, screen enclosures, and gutters</li><li>Storefronts and dumpster pads</li></ul></div></div></div></section><section class="band band--tinted"><div class="wrap"><div class="section-head"><p class="eyebrow">What to expect</p><h2 class="h2">From estimate to finished surface</h2></div><div class="page-three-grid"><article class="service"><p class="eyebrow">Step 1</p><h3 class="h3">Review the surfaces</h3><p>Share the address, approximate area, and photos of stains or sensitive surfaces. We confirm the scope and arrange a walkthrough if needed.</p></article><article class="service"><p class="eyebrow">Step 2</p><h3 class="h3">Choose the cleaning method</h3><p>We match pressure and treatment to the surface and protect the surrounding areas before cleaning.</p></article><article class="service"><p class="eyebrow">Step 3</p><h3 class="h3">Clean and review</h3><p>We clear dirt and organic buildup, rinse the work area, and discuss any areas that may need repair or a separate sealing service.</p></article></div></div></section><section class="band"><div class="wrap"><div class="section-head"><p class="eyebrow">Our work</p><h2 class="h2">See the difference</h2></div><div class="page-comparison"><figure><img src="/img/before-driveway.jpg" alt="Driveway before cleaning and sealing" width="746" height="829" loading="lazy" /><figcaption>Before</figcaption></figure><figure><img src="/img/after-driveway.jpg" alt="Driveway after cleaning and sealing" width="746" height="829" loading="lazy" /><figcaption>After cleaning and sealing</figcaption></figure></div><p class="page-caption">This project included cleaning and sealing. Your estimate will specify the services included for your surface.</p></div></section><section class="band band--tinted"><div class="wrap"><div class="section-head"><p class="eyebrow">Before you book</p><h2 class="h2">Pressure washing questions</h2></div><div class="page-faq"><details><summary>Can you wash my house as well as my driveway?</summary><p>Yes. House and building washes are part of our pressure washing services, with lower pressure used where the surface requires it. Include both areas in your estimate request.</p></details><details><summary>Is paver sealing included in a wash?</summary><p>Sealing is a separate service. If you want both, choose paver sealing on the form and tell us which areas need attention so preparation and finishing can be quoted together.</p></details><details><summary>Can you clean commercial properties?</summary><p>We clean storefronts, dumpster pads, and other exterior areas. Select Commercial or HOA / multi-family on the form and describe access requirements and any recurring cleaning needs.</p></details><details><summary>What should I send for an estimate?</summary><p>The property address, surface type, approximate size, and a few photos help us understand the job. Point out heavy stains, fragile areas, and any gates or access restrictions.</p></details></div></div></section><section class="band band--tinted" id="quote">
+<div class="page-hero-grid"><div class="page-hero-copy"><h1>Pressure washing</h1><p class="lead">We clean concrete, pavers, and exterior surfaces with pressure and treatment selected for the material.</p><div class="page-actions"><a class="btn btn--primary" href="#quote">Request an estimate</a><a class="btn btn--ghost" href="tel:+19544013301">Call (954) 401-3301</a></div><p class="page-hero-note">Serving Broward, Miami-Dade, and Palm Beach counties.</p></div></div></div></section><section class="band"><div class="wrap"><div class="section-head"><h2 class="h2">A different approach for every surface</h2></div><div class="page-detail-grid"><p class="lead">Concrete can take a different cleaning approach than paint or porous stone. We use surface cleaners on suitable hard surfaces and lower pressure where the material calls for it. Tell us what needs cleaning and we can help you decide whether washing alone, repair, or sealing is the right next step.</p><div class="area"><h3 class="h3">What we can help with</h3><ul class="page-surface-list"><li>Concrete driveways, sidewalks, and walkways</li><li>Paver patios, pool decks, and lanais</li><li>House and building exteriors</li><li>Fences, screen enclosures, and gutters</li><li>Storefronts and dumpster pads</li></ul></div></div></div></section><section class="band band--tinted"><div class="wrap"><div class="section-head"><h2 class="h2">From estimate to finished surface</h2></div><div class="page-three-grid"><article class="service"><h3 class="h3">Review the surfaces</h3><p>Share the address, approximate area, and photos of stains or sensitive surfaces. We confirm the scope and arrange a walkthrough if needed.</p></article><article class="service"><h3 class="h3">Choose the cleaning method</h3><p>We match pressure and treatment to the surface and protect the surrounding areas before cleaning.</p></article><article class="service"><h3 class="h3">Clean and review</h3><p>We clear dirt and organic buildup, rinse the work area, and discuss any areas that may need repair or a separate sealing service.</p></article></div></div></section><section class="band"><div class="wrap"><div class="section-head"><h2 class="h2">See the difference</h2></div><div class="page-comparison"><figure><img src="/img/before-driveway.jpg" alt="Driveway before cleaning and sealing" width="746" height="829" loading="lazy" /><figcaption>Before</figcaption></figure><figure><img src="/img/after-driveway.jpg" alt="Driveway after cleaning and sealing" width="746" height="829" loading="lazy" /><figcaption>After cleaning and sealing</figcaption></figure></div><p class="page-caption">This project included cleaning and sealing. Your estimate will specify the services included for your surface.</p></div></section><section class="band band--tinted"><div class="wrap"><div class="section-head"><h2 class="h2">Pressure washing questions</h2></div><div class="page-faq"><details><summary>Can you wash my house as well as my driveway?</summary><p>House and building washes are part of our pressure washing services, with lower pressure used where the surface requires it. Include both areas in your estimate request.</p></details><details><summary>Is paver sealing included in a wash?</summary><p>Sealing is a separate service. If you want both, choose paver sealing on the form and tell us which areas need attention so preparation and finishing can be quoted together.</p></details><details><summary>Can you clean commercial properties?</summary><p>We clean storefronts, dumpster pads, and other exterior areas. Select Commercial or HOA / multi-family on the form and describe access requirements and any recurring cleaning needs.</p></details><details><summary>What should I send for an estimate?</summary><p>The property address, surface type, approximate size, and a few photos help us understand the job. Point out heavy stains, fragile areas, and any gates or access restrictions.</p></details></div></div></section><section class="band band--tinted" id="quote">
<div class="wrap">
<div class="section-head reveal">
<h2 class="h2">Request an estimate</h2>
@@ -251,6 +251,7 @@
<div class="quote-grid reveal">
<div class="quote-side">
+ <p class="quote-credentials">Licensed & insured. Free estimates.</p>
<div class="quote-row">
<div class="quote-label">Call or text</div>
<a class="quote-phone" href="tel:+19544013301">(954) 401-3301</a>
@@ -372,7 +373,7 @@
<path d="m5 12 4 4L19 6" />
</svg>
</div>
- <p class="eyebrow">Request received</p>
+ <p class="request-status">Request received</p>
<h3>Thanks, <span id="success-name">we’ve got it</span>.</h3>
<p>We’ll call or text to confirm the details and arrange a walkthrough if one is needed.</p>
<a class="quote-value" href="tel:+19544013301">Need us sooner? Call (954) 401-3301</a>
@@ -381,11 +382,11 @@
</div>
</div>
</div>
- </section><section class="band"><div class="wrap"><div class="section-head"><p class="eyebrow">Also from Vold Services</p><h2 class="h2">Related services</h2></div><div class="page-three-grid"><article class="service"><h3 class="h3"><a class="service-title-link" href="/services/paver-sealing/">Paver sealing</a></h3><p>Give your driveway, walkway, or pool deck a finish that suits the property. We clean the pavers, replace missing joint sand, and seal once the surface is ready.</p><a class="page-link" href="/services/paver-sealing/">Explore paver sealing <span aria-hidden="true">↗</span></a></article>
+ </section><section class="band"><div class="wrap"><div class="section-head"><h2 class="h2">Related services</h2></div><div class="page-three-grid"><article class="service"><h3 class="h3"><a class="service-title-link" href="/services/paver-sealing/">Paver sealing</a></h3><p>Give your driveway, walkway, or pool deck a finish that suits the property. We clean the pavers, replace missing joint sand, and seal once the surface is ready.</p><a class="page-link" href="/services/paver-sealing/">Explore paver sealing <span aria-hidden="true">↗</span></a></article>
<article class="service"><h3 class="h3"><a class="service-title-link" href="/services/paver-repair/">Paver repair</a></h3><p>Loose borders, sunken sections, and uneven joints need attention beneath the surface. We lift the affected pavers, correct the base, and reset the area.</p><a class="page-link" href="/services/paver-repair/">Explore paver repair <span aria-hidden="true">↗</span></a></article>
-<article class="service"><h3 class="h3"><a class="service-title-link" href="/services/roof-cleaning/">Roof cleaning</a></h3><p>Give a roof marked by dark streaks and organic buildup a fresh start. We use a low-pressure soft wash for tile, shingle, and metal roofs, with care for the landscaping below.</p><a class="page-link" href="/services/roof-cleaning/">Explore roof cleaning <span aria-hidden="true">↗</span></a></article></div></div></section><section class="band band--tinted" id="areas"><div class="wrap"><div class="section-head"><p class="eyebrow">Across South Florida</p><h2 class="h2">Find your service area</h2></div><div class="page-three-grid"><article class="service"><h3 class="h3"><a class="service-title-link" href="/service-areas/broward-county/">Broward County</a></h3><p>Pressure washing, paver sealing and repair, and roof cleaning across Broward County.</p><a class="page-link" href="/service-areas/broward-county/">Explore broward county <span aria-hidden="true">↗</span></a></article>
-<article class="service"><h3 class="h3"><a class="service-title-link" href="/service-areas/miami-dade-county/">Miami-Dade County</a></h3><p>Pressure washing, paver sealing and repair, and roof cleaning across Miami-Dade County.</p><a class="page-link" href="/service-areas/miami-dade-county/">Explore miami-dade county <span aria-hidden="true">↗</span></a></article>
-<article class="service"><h3 class="h3"><a class="service-title-link" href="/service-areas/palm-beach-county/">Palm Beach County</a></h3><p>Pressure washing, paver sealing and repair, and roof cleaning across Palm Beach County.</p><a class="page-link" href="/service-areas/palm-beach-county/">Explore palm beach county <span aria-hidden="true">↗</span></a></article></div></div></section></main>
+<article class="service"><h3 class="h3"><a class="service-title-link" href="/services/roof-cleaning/">Roof cleaning</a></h3><p>We remove dark streaks and organic buildup from tile, shingle, and metal roofs with a low-pressure soft wash, with care for the landscaping below.</p><a class="page-link" href="/services/roof-cleaning/">Explore roof cleaning <span aria-hidden="true">↗</span></a></article></div></div></section><section class="band band--tinted" id="areas"><div class="wrap"><div class="section-head"><h2 class="h2">Find your service area</h2></div><div class="page-three-grid"><article class="service"><h3 class="h3"><a class="service-title-link" href="/service-areas/broward-county/">Broward County</a></h3><p>Pressure washing, paver sealing and repair, and roof cleaning across Broward County.</p><a class="page-link" href="/service-areas/broward-county/">Broward County <span aria-hidden="true">↗</span></a></article>
+<article class="service"><h3 class="h3"><a class="service-title-link" href="/service-areas/miami-dade-county/">Miami-Dade County</a></h3><p>Pressure washing, paver sealing and repair, and roof cleaning across Miami-Dade County.</p><a class="page-link" href="/service-areas/miami-dade-county/">Miami-Dade County <span aria-hidden="true">↗</span></a></article>
+<article class="service"><h3 class="h3"><a class="service-title-link" href="/service-areas/palm-beach-county/">Palm Beach County</a></h3><p>Pressure washing, paver sealing and repair, and roof cleaning across Palm Beach County.</p><a class="page-link" href="/service-areas/palm-beach-county/">Palm Beach County <span aria-hidden="true">↗</span></a></article></div></div></section></main>
<footer class="footer">
<div class="wrap">
<div class="footer-inner">
diff --git a/docs/services/roof-cleaning/index.html b/docs/services/roof-cleaning/index.html
index cf239f5..5215b96 100644
--- a/docs/services/roof-cleaning/index.html
+++ b/docs/services/roof-cleaning/index.html
@@ -22,7 +22,7 @@
<link rel="apple-touch-icon" href="/favicon.png" />
<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=Manrope:wght@400;500;600&family=Roboto+Mono:wght@400;500&family=Teko:wght@500;600&display=swap" rel="stylesheet" />
+ <link href="https://fonts.googleapis.com/css2?family=Source+Sans+3:wght@400;500;600;700&family=Teko:wght@500;600&display=swap" rel="stylesheet" />
<link rel="stylesheet" href="/assets/site.css" />
<link rel="stylesheet" href="/assets/pages.css" />
<noscript><style>.reveal { opacity: 1; transform: none; }</style></noscript>
@@ -239,7 +239,7 @@
</header>
<main id="main"><section class="page-hero page-hero--background" id="top"><img class="page-hero-background" src="/img/hero-scrub-poster.jpg" alt="" aria-hidden="true" fetchpriority="high" /><div class="wrap">
<nav class="breadcrumbs" aria-label="Breadcrumb"><a href="/">Home</a><span aria-hidden="true">/</span><a href="/#services">Services</a><span aria-hidden="true">/</span><span aria-current="page">Roof cleaning</span></nav>
-<div class="page-hero-grid"><div class="page-hero-copy"><p class="eyebrow">Broward · Miami-Dade · Palm Beach</p><h1>Roof cleaning<span class="accent">Done with care.</span></h1><p class="lead">Give a roof marked by dark streaks and organic buildup a fresh start. We use a low-pressure soft wash for tile, shingle, and metal roofs, with care for the landscaping below.</p><div class="page-actions"><a class="btn btn--primary" href="#quote">Request an estimate</a><a class="btn btn--ghost" href="tel:+19544013301">Call (954) 401-3301</a></div><p class="page-hero-note">A cleaner roof. A lower-pressure approach.</p></div></div></div></section><section class="band"><div class="wrap"><div class="section-head"><p class="eyebrow">Built around the material</p><h2 class="h2">Soft washing suited to the roof</h2></div><div class="page-detail-grid"><p class="lead">Roof cleaning uses a different method from driveway cleaning. Our low-pressure application treats organic buildup without using a high-pressure cleaning wand on the roof surface. We water landscaping before the work and rinse it afterward. Tell us the roof material and any concerns when requesting an estimate.</p><div class="area"><h3 class="h3">What we can help with</h3><ul class="page-surface-list"><li>Barrel and flat tile roofs</li><li>Asphalt shingle roofs</li><li>Metal roofs</li><li>Dark streaks and organic buildup</li><li>Roof cleaning photos for HOA notices</li></ul></div></div></div></section><section class="band band--tinted"><div class="wrap"><div class="section-head"><p class="eyebrow">What to expect</p><h2 class="h2">From estimate to finished surface</h2></div><div class="page-three-grid"><article class="service"><p class="eyebrow">Step 1</p><h3 class="h3">Review the roof and access</h3><p>Send the address, roof material if known, and photos taken safely from the ground. Mention access limitations and any HOA notice or requested timeframe.</p></article><article class="service"><p class="eyebrow">Step 2</p><h3 class="h3">Prepare and soft wash</h3><p>We water the landscaping before applying the low-pressure roof treatment. The approach is selected for the roof surface.</p></article><article class="service"><p class="eyebrow">Step 3</p><h3 class="h3">Rinse surrounding landscaping</h3><p>We rinse the landscaping after the work. If you need photos for an HOA notice, let us know when arranging the cleaning.</p></article></div></div></section><section class="band band--tinted"><div class="wrap"><div class="section-head"><p class="eyebrow">Before you book</p><h2 class="h2">Roof cleaning questions</h2></div><div class="page-faq"><details><summary>Do you use high pressure on the roof?</summary><p>No. Roof cleaning uses a low-pressure soft wash. It is a different process from cleaning hard surfaces such as concrete driveways.</p></details><details><summary>Which roof materials do you clean?</summary><p>Our roof cleaning service covers barrel and flat tile, asphalt shingle, and metal. Include your roof material in the estimate request if you know it.</p></details><details><summary>How do you care for the landscaping?</summary><p>Landscaping is watered before the roof treatment and rinsed afterward. Tell us about any specific plants or access concerns when arranging the work.</p></details><details><summary>Can you provide photos for my HOA?</summary><p>Photos are available for HOA notices. Mention the notice and any deadline in your request so we can confirm what is needed and discuss scheduling.</p></details></div></div></section><section class="band band--tinted" id="quote">
+<div class="page-hero-grid"><div class="page-hero-copy"><h1>Roof cleaning</h1><p class="lead">We remove dark streaks and organic buildup from tile, shingle, and metal roofs with a low-pressure soft wash, with care for the landscaping below.</p><div class="page-actions"><a class="btn btn--primary" href="#quote">Request an estimate</a><a class="btn btn--ghost" href="tel:+19544013301">Call (954) 401-3301</a></div><p class="page-hero-note">Serving Broward, Miami-Dade, and Palm Beach counties.</p></div></div></div></section><section class="band"><div class="wrap"><div class="section-head"><h2 class="h2">Soft washing suited to the roof</h2></div><div class="page-detail-grid"><p class="lead">Roof cleaning uses a different method from driveway cleaning. Our low-pressure application treats organic buildup without using a high-pressure cleaning wand on the roof surface. We water landscaping before the work and rinse it afterward. Tell us the roof material and any concerns when requesting an estimate.</p><div class="area"><h3 class="h3">What we can help with</h3><ul class="page-surface-list"><li>Barrel and flat tile roofs</li><li>Asphalt shingle roofs</li><li>Metal roofs</li><li>Dark streaks and organic buildup</li><li>Roof cleaning photos for HOA notices</li></ul></div></div></div></section><section class="band band--tinted"><div class="wrap"><div class="section-head"><h2 class="h2">From estimate to finished surface</h2></div><div class="page-three-grid"><article class="service"><h3 class="h3">Review the roof and access</h3><p>Send the address, roof material if known, and photos taken safely from the ground. Mention access limitations and any HOA notice or requested timeframe.</p></article><article class="service"><h3 class="h3">Prepare and soft wash</h3><p>We water the landscaping before applying the low-pressure roof treatment. The approach is selected for the roof surface.</p></article><article class="service"><h3 class="h3">Rinse surrounding landscaping</h3><p>We rinse the landscaping after the work. If you need photos for an HOA notice, let us know when arranging the cleaning.</p></article></div></div></section><section class="band band--tinted"><div class="wrap"><div class="section-head"><h2 class="h2">Roof cleaning questions</h2></div><div class="page-faq"><details><summary>Do you use high pressure on the roof?</summary><p>Roof cleaning uses a low-pressure soft wash. It is a different process from cleaning hard surfaces such as concrete driveways.</p></details><details><summary>Which roof materials do you clean?</summary><p>Our roof cleaning service covers barrel and flat tile, asphalt shingle, and metal. Include your roof material in the estimate request if you know it.</p></details><details><summary>How do you care for the landscaping?</summary><p>Landscaping is watered before the roof treatment and rinsed afterward. Tell us about any specific plants or access concerns when arranging the work.</p></details><details><summary>Can you provide photos for my HOA?</summary><p>Photos are available for HOA notices. Mention the notice and any deadline in your request so we can confirm what is needed and discuss scheduling.</p></details></div></div></section><section class="band band--tinted" id="quote">
<div class="wrap">
<div class="section-head reveal">
<h2 class="h2">Request an estimate</h2>
@@ -251,6 +251,7 @@
<div class="quote-grid reveal">
<div class="quote-side">
+ <p class="quote-credentials">Licensed & insured. Free estimates.</p>
<div class="quote-row">
<div class="quote-label">Call or text</div>
<a class="quote-phone" href="tel:+19544013301">(954) 401-3301</a>
@@ -372,7 +373,7 @@
<path d="m5 12 4 4L19 6" />
</svg>
</div>
- <p class="eyebrow">Request received</p>
+ <p class="request-status">Request received</p>
<h3>Thanks, <span id="success-name">we’ve got it</span>.</h3>
<p>We’ll call or text to confirm the details and arrange a walkthrough if one is needed.</p>
<a class="quote-value" href="tel:+19544013301">Need us sooner? Call (954) 401-3301</a>
@@ -381,11 +382,11 @@
</div>
</div>
</div>
- </section><section class="band"><div class="wrap"><div class="section-head"><p class="eyebrow">Also from Vold Services</p><h2 class="h2">Related services</h2></div><div class="page-three-grid"><article class="service"><h3 class="h3"><a class="service-title-link" href="/services/pressure-washing/">Pressure washing</a></h3><p>From a darkened driveway to a tired pool deck, the right wash makes a visible difference. We clean concrete, pavers, and exterior surfaces with pressure and treatment selected for the material.</p><a class="page-link" href="/services/pressure-washing/">Explore pressure washing <span aria-hidden="true">↗</span></a></article>
+ </section><section class="band"><div class="wrap"><div class="section-head"><h2 class="h2">Related services</h2></div><div class="page-three-grid"><article class="service"><h3 class="h3"><a class="service-title-link" href="/services/pressure-washing/">Pressure washing</a></h3><p>We clean concrete, pavers, and exterior surfaces with pressure and treatment selected for the material.</p><a class="page-link" href="/services/pressure-washing/">Explore pressure washing <span aria-hidden="true">↗</span></a></article>
<article class="service"><h3 class="h3"><a class="service-title-link" href="/services/paver-sealing/">Paver sealing</a></h3><p>Give your driveway, walkway, or pool deck a finish that suits the property. We clean the pavers, replace missing joint sand, and seal once the surface is ready.</p><a class="page-link" href="/services/paver-sealing/">Explore paver sealing <span aria-hidden="true">↗</span></a></article>
-<article class="service"><h3 class="h3"><a class="service-title-link" href="/services/paver-repair/">Paver repair</a></h3><p>Loose borders, sunken sections, and uneven joints need attention beneath the surface. We lift the affected pavers, correct the base, and reset the area.</p><a class="page-link" href="/services/paver-repair/">Explore paver repair <span aria-hidden="true">↗</span></a></article></div></div></section><section class="band band--tinted" id="areas"><div class="wrap"><div class="section-head"><p class="eyebrow">Across South Florida</p><h2 class="h2">Find your service area</h2></div><div class="page-three-grid"><article class="service"><h3 class="h3"><a class="service-title-link" href="/service-areas/broward-county/">Broward County</a></h3><p>Pressure washing, paver sealing and repair, and roof cleaning across Broward County.</p><a class="page-link" href="/service-areas/broward-county/">Explore broward county <span aria-hidden="true">↗</span></a></article>
-<article class="service"><h3 class="h3"><a class="service-title-link" href="/service-areas/miami-dade-county/">Miami-Dade County</a></h3><p>Pressure washing, paver sealing and repair, and roof cleaning across Miami-Dade County.</p><a class="page-link" href="/service-areas/miami-dade-county/">Explore miami-dade county <span aria-hidden="true">↗</span></a></article>
-<article class="service"><h3 class="h3"><a class="service-title-link" href="/service-areas/palm-beach-county/">Palm Beach County</a></h3><p>Pressure washing, paver sealing and repair, and roof cleaning across Palm Beach County.</p><a class="page-link" href="/service-areas/palm-beach-county/">Explore palm beach county <span aria-hidden="true">↗</span></a></article></div></div></section></main>
+<article class="service"><h3 class="h3"><a class="service-title-link" href="/services/paver-repair/">Paver repair</a></h3><p>Loose borders, sunken sections, and uneven joints need attention beneath the surface. We lift the affected pavers, correct the base, and reset the area.</p><a class="page-link" href="/services/paver-repair/">Explore paver repair <span aria-hidden="true">↗</span></a></article></div></div></section><section class="band band--tinted" id="areas"><div class="wrap"><div class="section-head"><h2 class="h2">Find your service area</h2></div><div class="page-three-grid"><article class="service"><h3 class="h3"><a class="service-title-link" href="/service-areas/broward-county/">Broward County</a></h3><p>Pressure washing, paver sealing and repair, and roof cleaning across Broward County.</p><a class="page-link" href="/service-areas/broward-county/">Broward County <span aria-hidden="true">↗</span></a></article>
+<article class="service"><h3 class="h3"><a class="service-title-link" href="/service-areas/miami-dade-county/">Miami-Dade County</a></h3><p>Pressure washing, paver sealing and repair, and roof cleaning across Miami-Dade County.</p><a class="page-link" href="/service-areas/miami-dade-county/">Miami-Dade County <span aria-hidden="true">↗</span></a></article>
+<article class="service"><h3 class="h3"><a class="service-title-link" href="/service-areas/palm-beach-county/">Palm Beach County</a></h3><p>Pressure washing, paver sealing and repair, and roof cleaning across Palm Beach County.</p><a class="page-link" href="/service-areas/palm-beach-county/">Palm Beach County <span aria-hidden="true">↗</span></a></article></div></div></section></main>
<footer class="footer">
<div class="wrap">
<div class="footer-inner">