:root{--cream:#f3eee2;--paper:#fffdf8;--ink:#092f3a;--muted:#526367;--teal:#063b4c;--orange:#f15a24;--orange-dark:#c94011;--line:#bdc6bf;--max:76rem;--sans:'Barlow',Arial,sans-serif;--display:'Barlow Condensed',Impact,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font:400 16px/1.4 var(--sans)}a{color:inherit;text-underline-offset:3px}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:var(--display);font-weight:800;line-height:.84;letter-spacing:-.025em}.skip-link{position:absolute;left:-999px}.skip-link:focus{left:1rem;top:1rem;z-index:10;padding:.6rem;background:#fff}.site-header{max-width:var(--max);padding:.75rem 1.25rem;margin:auto;display:flex;justify-content:space-between;align-items:center;gap:1rem;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:.6rem;text-decoration:none;font-size:.93rem;font-weight:800;line-height:1}.brand b{display:block;font-weight:500}.brand-mark{display:grid;place-items:center;width:2.35rem;height:2.35rem;background:var(--teal);border-bottom:4px solid var(--orange);color:#fff;font:800 .8rem var(--display);letter-spacing:.06em}nav{display:flex;gap:1.35rem}nav a{font-size:.84rem;font-weight:800;text-decoration:none;text-transform:uppercase;letter-spacing:.04em}.menu-toggle{display:none;min-width:44px;min-height:44px}main{max-width:var(--max);margin:auto;padding:0 1.25rem 2.5rem}.eyebrow{margin-bottom:.55rem;color:var(--orange);font-size:.72rem;font-weight:800;letter-spacing:.11em;text-transform:uppercase}.hero{display:grid;grid-template-columns:1fr 1.02fr;min-height:31rem;background:var(--teal);color:#fff}.hero-copy{padding:3.2rem 2.5rem 2rem}.hero h1{font-size:clamp(4.75rem,8.3vw,7.7rem);text-transform:uppercase}.hero h1 span{color:var(--orange)}.lead{max-width:29rem;margin-top:1.3rem;font-size:1.06rem;line-height:1.35;color:#d7e4e1}.phone-cta{display:grid;margin-top:1.8rem;padding:.8rem 1rem .75rem;background:var(--orange);color:#fff;text-decoration:none;font:800 clamp(2.1rem,4vw,3.35rem)/.9 var(--display)}.phone-cta small{font:800 .65rem var(--sans);letter-spacing:.12em}.phone-cta b{justify-self:end;grid-column:2;grid-row:2}.availability{margin-top:1rem;font-size:.86rem;color:#d7e4e1}.hero-image{position:relative;min-height:20rem}.hero-image img{width:100%;height:100%;display:block;object-fit:cover}.hero-image:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(6,59,76,.28),transparent 35%)}.hero-image figcaption{position:absolute;z-index:1;right:0;bottom:0;padding:.5rem .75rem;background:var(--paper);color:var(--teal);font-size:.72rem;font-weight:800;text-transform:uppercase}.why-us{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);border-top:0;background:var(--paper)}.why-us div{display:grid;grid-template-columns:2rem 1fr;padding:.85rem .9rem;border-right:1px solid var(--line);align-items:center}.why-us div:last-child{border:0}.why-us span{grid-row:span 2;color:var(--orange);font-size:1.5rem;font-weight:800}.why-us b{font-size:.85rem;line-height:1}.why-us small{margin-top:.12rem;color:var(--muted);font-size:.7rem}.services,.about,.area,.reviews,.contact{border-bottom:1px solid var(--line)}.services{padding:2.5rem 0}.section-heading{display:flex;justify-content:space-between;gap:2rem;align-items:end;margin-bottom:1rem}.section-heading h2,h2{font-size:clamp(2.8rem,5vw,4.4rem);text-transform:uppercase}.section-heading>p{max-width:24rem;font-size:.9rem;color:var(--muted)}.price-table{border:1px solid var(--teal);background:var(--paper)}.price-table>div{display:grid;grid-template-columns:1fr 11rem;gap:1rem;align-items:center;min-height:2.65rem;padding:.4rem .75rem;border-top:1px solid var(--line)}.price-table .table-head{min-height:2rem;border-top:0;background:var(--teal);color:#fff;font-size:.7rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.price-table span:last-child{text-align:right;font-weight:800;color:var(--orange)}.table-head span:last-child{color:#fff}.about{display:grid;grid-template-columns:1fr 1fr;gap:2rem;padding:2.8rem 0}.about-copy p:not(.eyebrow){max-width:32rem;margin-top:1rem;color:var(--muted)}.job-photos{display:grid}.job-photos img{width:100%;height:18rem;object-fit:cover}.area{display:grid;grid-template-columns:1fr;gap:2rem;padding:2.6rem 0;background:var(--teal);color:#fff}.area>div{padding-left:1.5rem}.area .eyebrow{color:#f7b18f}.area p:not(.eyebrow){margin-top:.8rem;color:#d7e4e1}.postcode-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.35rem;margin-top:1.2rem;max-width:33rem}.postcode-grid span{padding:.45rem;background:#0d4e5e;border:1px solid #347082;text-align:center;font-weight:800;font-size:.8rem}.reviews{padding:2.25rem 0;background:var(--paper)}.reviews h2{font-size:clamp(2.5rem,4vw,3.6rem)}.reviews p:last-child{margin-top:.55rem;color:var(--muted)}.reviews a{color:var(--orange);font-weight:800}.contact{display:grid;grid-template-columns:.8fr 1.2fr;gap:3rem;padding:2.8rem 0 0;border:0}.contact-copy p:not(.eyebrow){max-width:30rem;margin-top:.9rem;color:var(--muted)}.contact-number{display:block;margin-top:1rem;color:var(--orange);font:800 2.4rem var(--display);text-decoration:none}.contact-form{padding:1.35rem;background:var(--teal);color:#fff}.field{margin-bottom:.7rem}label{display:block;margin-bottom:.25rem;font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em}input,textarea{display:block;width:100%;padding:.6rem;border:1px solid #9aaead;background:#fffdf8;border-radius:0;font:inherit}textarea{resize:vertical}.cf-turnstile{margin:.8rem 0}.form-status{min-height:1.25rem;margin-bottom:.5rem;font-size:.85rem}.form-status[data-state=success]{color:#a5e3cb}.form-status[data-state=error]{color:#ffb6a0}.button{display:inline-flex;gap:.55rem;align-items:center;border:0;padding:.7rem 1rem;background:var(--orange);color:#fff;font:800 .85rem var(--sans);text-decoration:none;text-transform:uppercase;letter-spacing:.05em;cursor:pointer}.button:hover{background:var(--orange-dark)}footer{max-width:var(--max);margin:auto;padding:1.2rem;display:flex;justify-content:space-between;gap:1rem;color:var(--muted);font-size:.76rem}footer a{color:var(--teal);font-weight:700}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
@media(max-width:720px){body{font-size:15px}.site-header{padding:.65rem 1rem}.menu-toggle{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:4px;border:0;background:none;padding:.75rem}.menu-toggle i{width:22px;height:2px;background:var(--ink)}nav{position:absolute;z-index:4;top:3.9rem;left:1rem;right:1rem;display:none;padding:.8rem;background:var(--paper);border:1px solid var(--line);flex-direction:column;align-items:stretch;gap:.65rem}nav[data-open=true]{display:flex}nav a{padding:.65rem .5rem;min-height:44px}main{padding:0 1rem 1.5rem}.hero{grid-template-columns:1fr}.hero-copy{padding:2.25rem 1.25rem 1.35rem}.hero h1{font-size:clamp(4.5rem,20vw,6.4rem)}.hero-image{height:16rem}.why-us{grid-template-columns:1fr 1fr}.why-us div:nth-child(2){border-right:0}.why-us div:nth-child(-n+2){border-bottom:1px solid var(--line)}.section-heading{display:block}.section-heading>p{margin-top:.7rem}.services{padding:2rem 0}.price-table>div{grid-template-columns:1fr 8rem;padding:.45rem .6rem}.about{grid-template-columns:1fr;padding:2.2rem 0}.job-photos img{height:14rem}.area{padding:2.1rem 0}.area>div{padding:0 1.25rem}.postcode-grid{grid-template-columns:repeat(2,1fr)}.reviews{padding:2rem 0}.contact{grid-template-columns:1fr;gap:1.5rem;padding:2.2rem 0 0}.contact-form{margin:0 -1rem;padding:1.15rem}footer{padding:1rem;flex-direction:column}}
@media(max-width:480px){.hero h1{font-size:clamp(3.6rem,17vw,5rem)}.price-table>div{grid-template-columns:1fr 6.5rem}.postcode-grid{grid-template-columns:repeat(2,1fr)}.contact-number{font-size:1.9rem}}

.sample-notice {
  background: #f3eee2;
  padding: 2rem;
  border-radius: .5rem;
  border-left: 4px solid #f15a24;
  margin: 1.5rem 0;
}
.sample-notice h3 { margin-top: 0; color: #092f3a; }
.sample-notice a { color: #f15a24; }
.sample-tag { font-size: 0.85rem; color: #526367; margin-top: 1rem; }
