/*
Theme Name: Ringway UK
Author: Ringway UK design team
Description: Responsive Ringway UK roofing theme. Draft branding and source content for staging review.
Version: 1.5.0
Requires at least: 6.4
Requires PHP: 8.0
License: GPL-2.0-or-later
Text Domain: ringway-uk
*/
:root{--orange:#ff7418;--ink:#171919;--muted:#626866;--cream:#f5f4ef;--line:#dddfda}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;color:var(--ink);font-family:Arial,Helvetica,sans-serif;line-height:1.65;font-size:16px}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:5px}button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}img{display:block;max-width:100%;height:auto}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.08;letter-spacing:-.045em}h1{font-size:clamp(42px,5.6vw,79px);font-weight:750;margin-bottom:25px}h2{font-size:clamp(32px,3.7vw,51px);margin-bottom:25px}h3{font-size:25px}p{margin-bottom:20px}.wrap{width:min(1240px,90%);margin:auto}.eyebrow{text-transform:uppercase;letter-spacing:.17em;font-size:11px;font-weight:700;margin-bottom:20px;display:block}.orange{color:var(--orange)}.topbar{background:#0c0e0e;color:#d3d5d2;font-size:12px;padding:9px 0}.topbar .wrap{display:flex;justify-content:space-between;gap:20px}.site-header{background:var(--ink);color:white;border-bottom:1px solid #3b3e3b}.nav-row{display:flex;align-items:center;gap:36px;min-height:93px}.brand{width:264px;flex-shrink:0}.nav{display:flex;align-items:center;gap:28px;margin-left:auto;font-size:14px}.nav .button{padding:12px 21px}.button{display:inline-flex;align-items:center;justify-content:center;gap:30px;background:var(--orange);color:#171919;padding:16px 25px;font-size:14px;font-weight:bold;border:1px solid transparent;cursor:pointer;text-decoration:none!important;min-height:49px}.button:hover{background:#ff8e43}.button.outline{background:transparent;border:1px solid #757b75;color:inherit}.button.light{background:white}.button.dark{background:var(--ink);color:white}.menu-toggle{display:none;background:none;color:white;border:1px solid #686b67;padding:9px 12px}.hero{background:var(--ink);color:white;position:relative;overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.04fr 1fr;min-height:610px}.hero-copy{padding:75px 50px 77px 0;position:relative;z-index:1}.hero-copy p{max-width:440px;color:#c9cdca;font-size:18px}.hero-copy h1 span{color:var(--orange)}.actions{display:flex;flex-wrap:wrap;gap:12px;margin:30px 0 25px}.hero-photo{position:relative;margin-right:calc((min(1240px,90vw) - 100vw)/2)}.hero-photo>img{height:100%;width:100%;object-fit:cover;object-position:55% center}.hero-photo:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(23,25,25,.3),transparent 45%)}.photo-label{position:absolute;bottom:30px;left:30px;background:#171919df;padding:12px 18px;font-size:11px;text-transform:uppercase;letter-spacing:.14em;color:white}.roofline{position:absolute;right:-25px;bottom:-100px;width:270px;height:270px;transform:rotate(45deg);border-top:17px solid var(--orange);border-left:17px solid var(--orange);pointer-events:none}.hero small{font-size:12px;color:#c9cdca}.trust{border-bottom:1px solid var(--line);background:var(--cream)}.trust .wrap{display:grid;grid-template-columns:repeat(3,1fr)}.trust-item{padding:25px 25px 25px 0;font-size:14px;font-weight:700;display:flex;gap:17px;align-items:center}.trust-item span{color:#b54900;font-size:21px}.section{padding:95px 0}.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:70px;margin-bottom:40px}.section-head h2{max-width:600px;margin-bottom:0}.section-head p{max-width:340px;color:var(--muted);margin:0}.services{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.service{padding:30px;min-height:235px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;flex-direction:column;transition:background .2s}.service:hover{background:var(--cream);text-decoration:none}.service-number{font-size:11px;letter-spacing:.1em;color:#a44405;margin-bottom:30px}.service h3{font-size:25px;margin-bottom:13px}.service p{color:var(--muted);font-size:14px;margin-bottom:20px;max-width:290px}.service .more{margin-top:auto;font-size:13px;font-weight:bold;display:flex;justify-content:space-between}.soft{background:var(--cream)}.split{display:grid;grid-template-columns:1fr 1fr;gap:85px;align-items:center}.split-photo{width:100%;height:490px;object-fit:cover}.split p{color:var(--muted)}.ticks{padding:0;list-style:none;margin:25px 0}.ticks li{padding:13px 0;border-bottom:1px solid var(--line);font-size:15px}.ticks li:before{content:'↗';color:#a44405;margin-right:14px}.photo-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:22px}.photo-grid figure{margin:0}.photo-grid img{width:100%;height:285px;object-fit:cover}.photo-grid figcaption{font-size:13px;margin-top:13px;display:flex;justify-content:space-between}.fine{font-size:12px;color:var(--muted)}.areas{background:var(--ink);color:white;position:relative;overflow:hidden}.areas .split{align-items:start}.areas p{color:#bec5c0}.towns{display:grid;grid-template-columns:1fr 1fr;gap:0 25px}.towns span{border-bottom:1px solid #444a44;padding:10px 0;font-size:14px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:45px}.step{border-top:1px solid var(--line);padding-top:25px}.step>span{font-size:13px;color:#a44405}.step h3{margin:20px 0 15px}.step p{color:var(--muted);font-size:15px}.quote{background:var(--cream)}.quote .split{align-items:start}.contact-line{display:block;font-size:25px;font-weight:bold;margin:12px 0}.form-card{background:white;border:1px solid var(--line);padding:35px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.form-grid label{font-size:13px;font-weight:bold}.full{grid-column:1/-1}input,select,textarea{width:100%;border:1px solid #a9b0a9;padding:12px;background:#fff;border-radius:0;margin-top:6px;color:var(--ink);min-width:0}textarea{resize:vertical;min-height:100px}.form-card .button{width:100%;margin-top:20px}.form-note{font-size:12px!important;margin:16px 0 0!important}.form-status{font-size:14px;font-weight:bold;color:#704000}.footer{background:#101212;color:#c3cac4;padding:65px 0 25px;font-size:13px}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1.3fr;gap:30px}.footer h3{font-size:15px;color:white;letter-spacing:0}.footer a{display:block;margin:7px 0}.footer .brand{margin-bottom:20px}.footer-bottom{border-top:1px solid #373c37;margin-top:45px;padding-top:20px;display:flex;justify-content:space-between;gap:20px;font-size:11px}.mobile-actions{display:none}.skip{position:absolute;top:-100px;left:10px;z-index:100;background:white;padding:10px;color:black}.skip:focus{top:10px}:focus-visible{outline:3px solid #c85000;outline-offset:5px}.breadcrumb{font-size:12px;color:#c9cdca;margin-bottom:40px}.service-hero .hero-grid{min-height:500px}.service-hero .hero-copy{padding-top:35px}.service-hero h1{font-size:clamp(40px,5vw,66px)}.detail-grid{display:grid;grid-template-columns:1.6fr 1fr;gap:90px}.detail-grid p{color:var(--muted)}.side-card{padding:35px;background:var(--cream);align-self:start}.side-card h3{font-size:26px}.side-card a{display:block;margin:15px 0}.faq{max-width:850px;margin:auto}details{border-bottom:1px solid var(--line);padding:20px 0}summary{cursor:pointer;font-size:18px;font-weight:bold}details p{margin:15px 0 0;color:var(--muted)}.page-top{background:var(--ink);color:white;padding:60px 0}.page-top h1{max-width:900px}.editor-content{max-width:850px;margin:auto;padding:70px 0}.editor-content a{text-decoration:underline}.gallery-full{grid-template-columns:repeat(3,1fr)}
@media(min-width:1500px){.hero-photo{margin-right:-8vw}}@media(max-width:1050px){.nav-row{gap:20px}.brand{width:220px}.nav{gap:17px}.nav .button{padding:12px}.hero-copy{padding-right:30px}.split{gap:45px}.detail-grid{gap:40px}.footer-grid{grid-template-columns:1fr 1fr}}@media(max-width:760px){html{scroll-padding-top:20px}.topbar{font-size:10px}.topbar .wrap>span:last-child{display:none}.nav-row{min-height:80px;flex-wrap:wrap;gap:0;justify-content:space-between}.brand{width:230px}.menu-toggle{display:block}.nav{display:none;flex-basis:100%;margin:0;padding:0 0 22px;align-items:stretch;gap:0}.nav.open{display:flex;flex-direction:column}.nav a{padding:12px 0}.nav .button{margin-top:10px}.hero-grid{grid-template-columns:1fr;min-height:auto}.hero-copy{padding:47px 0 42px}.hero-copy p{font-size:17px}.hero-photo{height:300px;margin:0 -5.55vw}.hero-photo>img{object-position:center 55%}.hero h1{max-width:550px}.roofline{width:180px;height:180px;bottom:-70px}.trust .wrap{grid-template-columns:1fr}.trust-item{padding:14px 0;border-bottom:1px solid var(--line)}.trust-item:last-child{border:0}.section{padding:60px 0}.section-head{display:block;margin-bottom:30px}.section-head p{margin-top:23px;max-width:none}.services{grid-template-columns:1fr 1fr}.service{padding:24px;min-height:230px}.service h3{font-size:22px}.split{grid-template-columns:1fr;gap:35px}.split-photo{height:360px}.photo-grid{grid-template-columns:1fr}.photo-grid img{height:300px}.steps{grid-template-columns:1fr;gap:25px}.step h3{margin-top:12px}.form-card{padding:25px}.form-grid{grid-template-columns:1fr}.footer{padding-bottom:95px}.footer-grid{grid-template-columns:1fr 1fr;gap:35px 20px}.footer-grid>div:first-child{grid-column:1/-1}.footer-bottom{display:block}.mobile-actions{position:fixed;bottom:0;left:0;right:0;display:grid;grid-template-columns:1fr 1fr 1.1fr;background:var(--ink);z-index:20;box-shadow:0 -3px 20px #0002;padding-bottom:env(safe-area-inset-bottom)}.mobile-actions a{text-align:center;color:white;font-size:13px;font-weight:bold;padding:17px 5px}.mobile-actions a:last-child{background:var(--orange);color:#171919}.detail-grid{grid-template-columns:1fr;gap:35px}.service-hero .hero-copy{padding:25px 0 40px}.breadcrumb{margin-bottom:30px}.page-top{padding:40px 0}.editor-content{padding:45px 0}}@media(max-width:390px){.services{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr}.hero-copy .actions .button{width:100%}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.review-card{margin:0;background:#fff;border:1px solid var(--line);padding:30px;display:flex;flex-direction:column}.review-mark{color:#ba4800;font:70px Georgia,serif;line-height:.8;margin-bottom:15px}.review-card blockquote{margin:0 0 25px;font-size:16px;line-height:1.75}.review-card figcaption{margin-top:auto;border-top:1px solid var(--line);padding-top:20px;font-size:13px}.review-card figcaption span{display:block;color:var(--muted);font-size:12px;margin-top:5px}.more-reviews{margin:25px 0}.more-reviews .review-grid{margin-top:25px}.more-reviews summary{font-size:15px}.form-card .staging-note{font-size:12px;background:#fff1e7;color:#63300c;padding:12px;border-left:3px solid var(--orange);margin:15px 0 25px}@media(max-width:760px){.review-grid{grid-template-columns:1fr}}

/* Separate full-width photograph concept — staging unchanged. */
.hero-wide{min-height:650px;isolation:isolate;display:flex;align-items:center;background:#111817}
.hero-wide .hero-backdrop{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:60% center;z-index:-2}
.hero-wide:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,15,15,.94) 0%,rgba(8,15,15,.80) 36%,rgba(8,15,15,.28) 72%,rgba(8,15,15,.12)),linear-gradient(0deg,rgba(8,15,15,.5),transparent 35%);z-index:-1}
.hero-wide>.wrap{position:relative}.hero-wide .hero-copy{padding:90px 0 100px;max-width:780px}
.hero-wide h1{font-size:clamp(48px,5.6vw,80px);line-height:1.04;letter-spacing:-.055em;margin:24px 0 28px}.hero-wide .eyebrow{font-size:10px;letter-spacing:.15em}
.hero-wide .hero-copy p{max-width:510px;color:#e2e6e4;font-size:18px;line-height:1.7}.hero-wide .actions{margin:32px 0 22px}.hero-wide .outline{background:#101a1966;border-color:#abb3af;color:white}.hero-phone{font-size:13px;color:#e2e6e4}.hero-phone strong{margin-left:8px;color:white}.hero-work{position:absolute;right:0;bottom:45px;font-size:10px;color:white;letter-spacing:.16em;border-top:1px solid #ffffff70;padding-top:16px;min-width:190px}.hero-work span{display:block;margin-top:6px;font-size:13px;letter-spacing:0}
.concept-trust .wrap{grid-template-columns:1.5fr 1fr 1fr;align-items:center;min-height:105px;gap:30px}.rating-proof{display:flex;align-items:center;gap:22px;font-size:12px}.rating-proof strong{font-size:21px}.rating-proof small{display:block;color:#626866;font-size:10px}.rating-proof img{width:145px}.concept-trust .trust-item{border-left:1px solid #d7d8d3;padding:8px 0 8px 30px;font-size:13px}
@media(max-width:1000px){.hero-work{display:none}.hero-wide{min-height:600px}.concept-trust .wrap{gap:18px}.rating-proof{gap:14px}.rating-proof img{width:115px}}
@media(max-width:760px){.hero-wide{min-height:590px}.hero-wide .hero-copy{padding:64px 0 72px}.hero-wide h1{font-size:clamp(43px,9.5vw,66px)}.hero-wide .eyebrow{max-width:300px;line-height:1.8;font-size:9px}.hero-wide .hero-copy p{font-size:16px;max-width:330px}.hero-wide:after{background:linear-gradient(90deg,rgba(8,15,15,.91),rgba(8,15,15,.65)),linear-gradient(0deg,rgba(8,15,15,.4),transparent)}.hero-wide .hero-backdrop{object-position:65% center}.hero-wide .actions{gap:12px}.hero-wide .actions .button{padding:14px 18px;font-size:12px}.concept-trust .wrap{display:flex;flex-wrap:wrap;gap:16px;padding:22px 0}.rating-proof{width:100%;gap:25px}.rating-proof img{width:145px}.concept-trust .trust-item{width:auto;padding:0;border:0;font-size:11px}.hero-phone{font-size:12px}}

/* Photo-led service cards, project concept and floating contact. */
h1,h2,h3{font-family:"Arial Narrow","Helvetica Neue",Arial,sans-serif;font-weight:850}h2{letter-spacing:-.045em}.section-head .eyebrow{color:#a54000}.hero-rating{display:flex;align-items:center;gap:18px;width:max-content;max-width:100%;background:#fff;color:#171919;padding:12px 16px;margin:0 0 20px;border-radius:2px;font-size:12px}.hero-rating img{width:123px;flex-shrink:0}.hero-rating strong{font-size:16px}.hero-wide .hero-copy{padding-top:70px;padding-bottom:75px}.hero-wide .hero-copy .actions{margin-bottom:20px}.hero-wide .hero-work{bottom:38px}
.services{gap:24px;border:0}.service{padding:0 0 26px;border:1px solid #deded8;background:#fff;overflow:hidden}.service-photo{width:100%;height:210px;object-fit:cover;order:-1;margin-bottom:25px;transition:transform .25s}.service:hover .service-photo{transform:scale(1.025)}.service .service-number,.service h3,.service p,.service .more{margin-left:25px;margin-right:25px}.service .service-number{margin-bottom:12px}.service h3{font-size:26px;letter-spacing:-.035em}.service p{max-width:none}.service .more{padding-top:18px;border-top:1px solid #e4e4dd;color:#923900}.service:hover{background:#faf9f5}.project-story{background:#151a18;color:white}.project-story .section-head p{color:#c5cec8}.project-story .eyebrow{color:#ff9c59}.comparison-preview{display:grid;grid-template-columns:1fr 1fr;gap:2px;background:#56605a}.comparison-preview>div{background:#222b26;padding:24px}.comparison-label{font-size:11px;letter-spacing:.18em;color:#ff9c59;font-weight:bold}.photo-await{min-height:230px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#c5cec8;font-size:14px}.photo-await>span{font-size:40px;font-weight:normal;color:#7e9185}.concept-note{font-size:11px;color:#b7c6bc;margin:14px 0 32px}.project-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:35px}.project-facts span{font-size:10px;color:#ff9c59;letter-spacing:.12em}.project-facts p{font-size:14px;color:#d3dcd6;margin-top:9px;max-width:280px}.text-link{display:inline-block;border-bottom:1px solid #ff7418;padding-bottom:8px;font-size:14px;margin-top:15px}.floating-whatsapp{position:fixed;right:24px;bottom:24px;z-index:90;display:flex;align-items:center;gap:10px;padding:14px 20px;border-radius:40px;background:#126b3c;color:#fff;box-shadow:0 5px 24px #0003;font-size:14px;font-weight:bold;border:2px solid #fff;text-decoration:none!important}.floating-whatsapp:hover{background:#0b5430;transform:translateY(-2px)}.floating-whatsapp:focus-visible{outline:3px solid #ff7418;outline-offset:4px}
@media(max-width:1000px){.services{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.services{grid-template-columns:1fr}.service-photo{height:220px}.hero-rating{gap:12px;padding:10px 12px;font-size:11px}.hero-rating img{width:110px}.hero-rating strong{font-size:15px}.comparison-preview{grid-template-columns:1fr}.photo-await{min-height:160px}.project-facts{grid-template-columns:1fr;gap:8px}.floating-whatsapp{right:15px;bottom:84px;width:56px;height:56px;padding:12px;justify-content:center}.floating-whatsapp span{display:none}.hero-wide .hero-copy{padding:54px 0 65px}}
@media(prefers-reduced-motion:reduce){.service-photo,.floating-whatsapp{transition:none}.service:hover .service-photo,.floating-whatsapp:hover{transform:none}html{scroll-behavior:auto}}

/* Services dropdown, without a separate arrow or added header height. */
.services-nav{position:relative;align-self:center}.services-nav-heading{display:block;line-height:inherit}.services-dropdown{display:none;position:absolute;top:100%;left:-18px;min-width:280px;list-style:none;margin:0;padding:10px;background:#fff;color:#171919;border-top:3px solid var(--orange);box-shadow:0 12px 32px #0003;z-index:120}.services-dropdown li{margin:0}.nav .services-dropdown a{display:block;padding:12px 14px;line-height:1.4;font-size:14px;white-space:normal}.services-dropdown a:hover,.services-dropdown a:focus-visible{background:#fff0e4;color:#863500;text-decoration:none}.services-nav:hover .services-dropdown,.services-nav:focus-within .services-dropdown{display:block}.site-header{position:relative;z-index:130}
@media(max-width:760px){.services-nav{width:100%}.services-dropdown{position:static;min-width:0;width:100%;box-shadow:none;margin:0;padding:4px 10px}.nav.open .services-dropdown{display:block}.services-nav-heading>a{display:block}}

.image-comparison{position:relative;height:420px;overflow:hidden;isolation:isolate;border:1px solid #657069;background:#28362d}.comparison-layer{position:absolute;inset:0}.comparison-after{background:repeating-linear-gradient(135deg,#2d4033 0px,#2d4033 45px,#304537 45px,#304537 46px)}.comparison-before{background:repeating-linear-gradient(45deg,#343837 0px,#343837 45px,#3d4140 45px,#3d4140 46px);clip-path:inset(0 calc(100% - var(--reveal)) 0 0)}.comparison-placeholder{height:100%;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:8px;text-align:center;padding:60px 20px;color:#fff}.comparison-placeholder>span{font-size:44px;line-height:1}.comparison-placeholder strong{font-size:21px}.comparison-placeholder small{font-size:12px;color:#d0d9d3}.comparison-corner{position:absolute;top:18px;padding:7px 12px;background:#101714dd;color:white;font-size:11px;font-weight:bold;letter-spacing:.12em}.comparison-corner.left{left:18px}.comparison-corner.right{right:18px}.comparison-divider{position:absolute;left:var(--reveal);top:0;bottom:0;width:3px;background:#ff7418;transform:translateX(-50%);pointer-events:none}.comparison-divider>span{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:56px;height:56px;display:flex;align-items:center;justify-content:center;background:#ff7418;border:3px solid #fff;color:#171919;border-radius:50%;font-size:28px;font-weight:bold;box-shadow:0 3px 16px #0005;white-space:pre}.comparison-range{position:absolute;inset:0;margin:0;width:100%;height:100%;opacity:0;cursor:ew-resize;touch-action:pan-y}.image-comparison:focus-within{outline:3px solid #ffaf76;outline-offset:5px}.comparison-help{font-size:13px;color:#d0d9d3;margin:14px 0 0}@media(max-width:760px){.image-comparison{height:300px}.comparison-placeholder strong{font-size:17px}.comparison-divider>span{width:48px;height:48px}}

/* Compact enquiry section without removing fields. */
.quote{padding:64px 0}.quote .split{align-items:center;gap:60px;grid-template-columns:.9fr 1.1fr}.quote .form-card{padding:26px;margin:0}.quote .form-card h3{font-size:25px;margin-bottom:18px}.quote .form-grid{gap:12px 16px}.quote .form-grid input,.quote .form-grid select,.quote .form-grid textarea{padding:9px 11px;margin-top:4px;min-height:44px}.quote .form-grid textarea{min-height:80px;height:80px}.quote .form-card .button{margin-top:14px}.quote .form-note{margin-top:10px!important;line-height:1.5}.quote .form-status:empty{display:none}.quote .split>div>p:last-child{margin-bottom:0}
@media(max-width:760px){.quote{padding:48px 0}.quote .split{grid-template-columns:1fr;gap:28px;align-items:start}.quote .form-card{padding:22px}.quote .form-grid{gap:12px}}

.quote .forminator-ui.forminator-custom-form{margin:0!important}.quote .forminator-row{margin-bottom:14px!important}.quote .forminator-textarea{min-height:80px!important}.quote .staging-note{margin:10px 0 18px;padding:10px;font-size:12px}.quote .forminator-button-submit{background:#ff7418!important;color:#171919!important}

@media(min-width:761px){.quote #forminator-module-68{display:grid;grid-template-columns:1fr 1fr;column-gap:16px}.quote #forminator-module-68>.forminator-row{margin-left:0!important;margin-right:0!important;min-width:0}.quote #forminator-module-68>.forminator-row>.forminator-col{padding:0!important}.quote #forminator-module-68>.forminator-response-message,.quote #forminator-module-68>.forminator-row:has([name="select-1"]),.quote #forminator-module-68>.forminator-row:has(textarea),.quote #forminator-module-68>.forminator-row-last{grid-column:1/-1}}

/* Compact contact shortcut and transparent hero review proof. */
.floating-whatsapp{width:56px;height:56px;padding:12px;justify-content:center;gap:0}.floating-whatsapp span{display:none}
.hero-rating{flex-direction:column;align-items:flex-start;gap:10px;background:transparent;padding:0;border:0;border-radius:0;color:#ff9c59;font-size:14px}.hero-rating img{width:160px;height:auto;filter:brightness(0) invert(1)}.hero-rating strong{font-size:21px;color:inherit}

.quote #forminator-module-68 .forminator-field:has(>.forminator-description>span[data-limit]){position:relative}.quote #forminator-module-68 .forminator-description:has(>span[data-limit]){position:absolute;right:0;top:0;margin:0!important;font-size:10px;line-height:18px}

/* Brand-colour refinements. */
.hero-rating img{filter:none}.hero-rating .rating-dot{color:#ff9c59}.hero-rating .review-count{color:#fff}
.hero-wide .actions a[href^="https://wa.me/"]{border-color:#25d366;color:#fff;background:#101a1966;gap:5px}
.hero-wide .actions .whatsapp-word{color:#25d366}
.quote .whatsapp-word{color:#087b3a;font-weight:700}
.hero-wide .actions a[href^="https://wa.me/"]:hover{background:#123a26;border-color:#25d366}

/* A compact evidence strip with a clear heading and supporting detail. */
.hero-rating img{box-sizing:content-box;padding:7px 10px;border-radius:3px;background:rgba(255,255,255,.88)}
.concept-trust{background:#f3f1eb}.concept-trust .wrap{display:grid;grid-template-columns:1.25fr 1fr 1fr 1.15fr 1fr;gap:0;min-height:125px;padding:24px 0}.concept-trust .rating-proof{display:flex;flex-direction:column;align-items:flex-start;gap:9px;width:auto;font-size:12px}.concept-trust .rating-proof img{width:145px}.concept-trust .rating-proof strong{font-size:19px}.concept-trust .rating-proof small{font-size:9px}.concept-trust .trust-item{display:flex;flex-direction:column;gap:6px;padding:8px 22px;border-left:1px solid #d4d1c9}.concept-trust .trust-item strong{font-family:"Arial Narrow","Helvetica Neue",Arial,sans-serif;font-size:25px;line-height:1.1;font-weight:850;letter-spacing:-.025em;color:#171919}.concept-trust .trust-item span{font-size:12px;line-height:1.5;color:#555b57}
@media(max-width:900px){.concept-trust .wrap{grid-template-columns:1fr 1fr;gap:24px}.concept-trust .trust-item{padding:8px 18px}.concept-trust .trust-item:nth-child(3){border-left:0;padding-left:0}}
@media(max-width:480px){.concept-trust .wrap{gap:22px 12px}.concept-trust .trust-item{padding:4px 12px}.concept-trust .trust-item strong{font-size:21px}.concept-trust .trust-item span{font-size:11px}.concept-trust .rating-proof img{width:130px}}

@media(max-width:900px){.concept-trust .trust-item:nth-child(5){border-left:0;padding-left:0}}

/* Simplified hero contact concept: quote, call, then shared trust strip. */
.hero-wide .actions .hero-call{background:transparent;color:#fff;border-color:#ffffff80;gap:16px}.hero-wide .actions .hero-call:hover{background:#ffffff12;border-color:#fff}.hero-wide .hero-copy .actions{margin-bottom:0}.hero-wide .hero-copy{padding-bottom:70px}

/* Small review proof above the gallery divider, away from the primary actions. */
.hero-side-proof{position:absolute;right:0;bottom:38px;width:205px;color:white}
.hero-checkatrade-small{display:flex;flex-direction:column;align-items:flex-start;gap:8px;margin-bottom:17px;font-size:11px;line-height:1.5;text-decoration:none}
.hero-checkatrade-small img{box-sizing:content-box;width:123px;height:17px;padding:0;background:transparent;border-radius:0}
.hero-checkatrade-small strong,.hero-checkatrade-small .rating-dot{color:#ff9c59}
.hero-wide .hero-side-proof .hero-work{display:block;position:static;min-width:0;width:100%;padding-top:14px}
@media(max-width:1000px){.hero-side-proof{position:static;width:205px;margin:0 0 32px}.hero-wide .hero-copy{padding-bottom:28px}}

/* Final local hero refinements. */
.hero-wide .hero-side-proof .hero-work,.hero-wide .hero-side-proof .hero-work span{color:#fff}.hero-wide .hero-side-proof .hero-work .gallery-highlight{color:#ff9c59;font-style:normal}

.hero .actions .service-whatsapp{border-color:#25d366;color:#fff;background:#101a1966;gap:5px}.hero .actions .service-whatsapp:hover{background:#123a26;border-color:#25d366}

/* Decorative video: the original image always remains beneath it as fallback. */
.hero-wide .hero-motion{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:60% center;z-index:-2;opacity:0;pointer-events:none}
.hero-wide .hero-motion.is-playing{opacity:1}


@media(max-width:760px){.hero-wide .hero-motion{object-position:65% center}}
@media(prefers-reduced-motion:reduce){.hero-wide .hero-motion{display:none!important}}

.image-comparison .comparison-photo{display:block;width:100%;height:100%;object-fit:cover;object-position:center top}.comparison-corner{z-index:1}

.hero-wide .hero-motion{object-position:50% center}

/* Balanced trust grid and mobile contact actions. */
.concept-trust .wrap{grid-template-columns:repeat(5,minmax(0,1fr));gap:0;padding:28px 0;align-items:stretch}
.concept-trust .wrap>.rating-proof,.concept-trust .wrap>.trust-item{width:auto;min-width:0;margin:0;padding:8px 16px;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;text-align:center;gap:8px;border:0;border-left:1px solid #d4d1c9;font-weight:400}
.concept-trust .wrap>.rating-proof{border-left:0}
.concept-trust .rating-proof img{width:145px;height:29px;object-fit:contain}
.concept-trust .trust-item strong{font-size:23px;line-height:29px;min-height:29px}
.concept-trust .trust-item span{font-size:12px;font-weight:400;line-height:1.5}
.concept-trust .rating-proof>span{line-height:1.5}.concept-trust .rating-proof strong{font-size:18px}.concept-trust .rating-proof small{margin-top:3px}
.floating-call{display:none}
@media(max-width:900px){
.concept-trust .wrap{grid-template-columns:repeat(2,minmax(0,1fr));padding:22px 0;gap:0}
.concept-trust .wrap>.rating-proof{grid-column:1/-1;flex-direction:row;justify-content:center;align-items:center;gap:20px;padding:0 0 20px}
.concept-trust .wrap>.trust-item{padding:20px 12px;border:0;border-top:1px solid #d4d1c9}
.concept-trust .wrap>.trust-item:nth-child(3),.concept-trust .wrap>.trust-item:nth-child(5){border-left:1px solid #d4d1c9}
.concept-trust .trust-item strong{font-size:21px;line-height:1.25;min-height:27px}
}
@media(max-width:760px){
.topbar{padding:0}.topbar .wrap{justify-content:center}.topbar .wrap>.topbar-area{display:none}.topbar .wrap>span.topbar-phone{display:block}.topbar-phone-label{display:none}.topbar-phone>a{display:flex;align-items:center;justify-content:center;min-height:44px;font-size:18px;font-weight:700;color:#fff;letter-spacing:.035em}
.floating-call,.floating-whatsapp{position:fixed;right:10px;width:48px;height:48px;padding:10px;display:flex;align-items:center;justify-content:center;border:2px solid #fff;border-radius:50%;box-shadow:0 3px 14px #0003;z-index:90}
.floating-whatsapp{bottom:calc(72px + env(safe-area-inset-bottom))}.floating-call{bottom:calc(130px + env(safe-area-inset-bottom));background:var(--orange);color:#171919}.floating-call:hover{background:#ff8e43}.floating-call:focus-visible{outline:3px solid #171919;outline-offset:3px}
.concept-trust .rating-proof img{width:125px}.concept-trust .rating-proof strong{font-size:17px}.concept-trust .rating-proof small{font-size:9px}.concept-trust .trust-item span{max-width:150px}
}

/* Client review: paired review sources and restrained interaction. */
.google-proof{display:flex;align-items:center;gap:16px;font-size:12px;text-decoration:none}.google-proof img{width:92px;height:30px;object-fit:contain}.google-proof strong{font-size:19px}.google-proof small{display:block;font-size:9px;color:var(--muted)}
.hero-side-proof>.google-proof{margin:16px 0 22px;flex-direction:column;align-items:flex-start;gap:7px;color:#fff}.hero-side-proof>.google-proof strong{color:var(--orange)}
.concept-trust .wrap{grid-template-columns:repeat(6,minmax(0,1fr))}.concept-trust .wrap>.google-proof{border-left:1px solid #d4d1c9}.concept-trust .google-proof img{width:90px;height:29px}.concept-trust .wrap>.trust-item,.concept-trust .wrap>.rating-proof{padding-left:12px;padding-right:12px}.concept-trust .trust-item strong{font-size:21px}.concept-trust .rating-proof img{max-width:100%}
.google-review-panel{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:25px 30px;margin:0 0 32px;background:#fff;border:1px solid var(--line);border-left:4px solid var(--orange)}.google-review-panel .fine{margin:12px 0 0}.google-review-panel .button{white-space:nowrap}.island-area{color:#ffad76;font-weight:700;border-bottom-color:#ff7418!important}.towns span{transition:color .2s,border-color .2s}.vehicle-note{font-size:11px;line-height:1.5;color:var(--muted);margin-top:12px}.hero .vehicle-note{position:absolute;left:18px;right:18px;bottom:12px;margin:0;background:#171919d9;color:white;padding:8px 10px;z-index:2}.hero-photo{position:relative}
.button{transition:background-color .2s,border-color .2s,box-shadow .2s,transform .2s}.button [aria-hidden],.more span{display:inline-block;transition:transform .2s}.service{transition:transform .25s,box-shadow .25s,border-color .25s}.service:focus-visible{border-color:var(--orange)}.text-link{transition:color .2s,border-color .2s}.service-photo{transition:transform .5s cubic-bezier(.2,.7,.3,1)}
@media(hover:hover) and (pointer:fine){.button:hover{transform:translateY(-2px);box-shadow:0 8px 20px #0002}.button:hover [aria-hidden]{transform:translate(3px,-3px)}.service:hover{transform:translateY(-5px);box-shadow:0 16px 30px #17191912;border-color:#ff7418}.service:hover .service-photo{transform:scale(1.04)}.text-link:hover{color:#b94b00}.towns span:hover{color:#ffad76}.nav>a:not(.button):hover{color:#ffad76}}
@media(max-width:1000px){.concept-trust .trust-item strong{font-size:19px}}
@media(max-width:900px){.concept-trust .wrap{grid-template-columns:repeat(2,minmax(0,1fr))}.concept-trust .wrap>.rating-proof{grid-column:auto;flex-direction:column;gap:8px;justify-content:flex-start;padding:0 12px 20px}.concept-trust .wrap>.trust-item{border-left:0!important}.concept-trust .wrap>.trust-item:nth-child(even){border-left:1px solid #d4d1c9!important}.concept-trust .trust-item strong{font-size:21px}.google-review-panel{align-items:flex-start;flex-direction:column}}
@media(max-width:760px){.hero-side-proof>.google-proof{flex-direction:row;align-items:center;gap:14px;margin:12px 0 20px}.hero-side-proof>.google-proof img{width:76px;height:25px}.hero-side-proof>.google-proof strong{font-size:15px}.hero-side-proof>.google-proof span{font-size:11px}.google-review-panel{padding:22px}.google-review-panel .google-proof{flex-wrap:wrap}.google-review-panel .button{white-space:normal}.concept-trust .rating-proof strong{font-size:17px}.hero .vehicle-note{font-size:10px}.footer-grid>div:first-child p{max-width:40ch}}
@media(prefers-reduced-motion:reduce){.button,.button [aria-hidden],.more span,.service,.service-photo,.text-link,.towns span{transition:none!important;transform:none!important}}

/* Local review refinement: balanced provider hierarchy and responsive trust order. */
.concept-trust .wrap>.rating-proof:first-child{order:0}
.concept-trust .wrap>.trust-item{order:1}
.concept-trust .wrap>.google-proof{order:2}
.hero-side-proof>.google-proof{font-size:11px;line-height:1.5;gap:8px;margin:0 0 17px}
.hero-side-proof>.google-proof span,.hero-side-proof>.google-proof strong{font-size:11px;line-height:1.5;letter-spacing:normal}
.hero-side-proof>.google-proof strong{font-weight:700;color:#ff9c59}
.hero-side-proof>.google-proof .rating-dot{color:#ff9c59}
.hero-side-proof>.google-proof img{width:76px;height:25px}
#testimonials .customer-review-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.45fr);align-items:start;gap:48px}
.review-providers{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}
.review-provider{min-width:0;display:flex;flex-direction:column;align-items:flex-start;border-left:1px solid #d4d1c9;padding-left:24px}
.review-provider .provider-logo{width:160px;height:32px;object-fit:contain;object-position:left center;margin-bottom:18px}
.review-provider .provider-google{width:98px}
#testimonials .review-provider p{margin:0;max-width:none}
#testimonials .provider-score{display:flex;flex-direction:column;gap:3px;font-size:12px;line-height:1.5}
.provider-score strong{font-size:28px;line-height:1.2;color:var(--ink)}
#testimonials .review-provider .provider-detail{font-size:11px;line-height:1.6;margin-top:12px;margin-bottom:18px}
.provider-link{font-size:12px;font-weight:700;border-bottom:1px solid #a44405;padding-bottom:5px;margin-top:auto;display:inline-flex;gap:12px;align-items:center;color:#923900}
@media(max-width:900px){.concept-trust .wrap>.google-proof{order:0}#testimonials .customer-review-heading{grid-template-columns:1fr;gap:30px}.review-provider:first-child{padding-left:0;border-left:0}}
@media(max-width:560px){.review-providers{grid-template-columns:1fr;gap:24px}.review-provider{padding:24px 0 0;border-left:0;border-top:1px solid #d4d1c9}.review-provider:first-child{padding-top:0;border-top:0}.review-provider .provider-logo{margin-bottom:12px}}
/* Geographic coverage: locally rendered, no third-party map requests. */
.coverage-intro{display:grid;grid-template-columns:1.15fr 1fr;gap:70px;align-items:start;margin-bottom:42px}.coverage-intro p{font-size:15px}.coverage-intro h2{max-width:620px}.coverage-board{display:grid;grid-template-columns:minmax(0,3fr) minmax(230px,1fr);background:#f5f4ef;border-radius:12px;overflow:hidden;color:#253f37}.coverage-map-figure{margin:0;min-width:0;background:#dfe9e8}.coverage-svg{display:block;width:100%;height:auto}.coverage-map-figure figcaption{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:7px 10px;padding:15px;font-size:11px;background:#e7eeea;color:#253f37}.map-key-dot,.map-key-centre{width:8px;height:8px;border-radius:50%;background:#253f37;display:inline-block}.map-key-centre{background:#ff7418;margin-left:9px}.map-key-radius{width:20px;border-top:2px dashed #c45112;margin-left:9px}.coverage-map-aside{padding:28px 22px;align-self:center}.coverage-map-aside .eyebrow{font-size:9px;color:#9b420b;margin-bottom:8px}.coverage-map-aside h3{font-size:25px;margin-bottom:18px}.london-inset{display:block;width:100%;height:auto}.areas .coverage-map-aside p{color:#53695f;font-size:12px;line-height:1.65;margin:15px 0 0}.island-callout{margin-top:26px;border-top:2px solid #ff7418;padding-top:20px}.island-callout>span{display:block;font-size:9px;letter-spacing:.16em;font-weight:700;color:#9b420b}.island-callout>strong{display:block;font-size:24px;line-height:1.3;margin-top:6px}.areas .coverage-map-note{font-size:12px;line-height:1.6;margin:18px 0 24px;max-width:85ch}.coverage-place-list{display:flex;flex-wrap:wrap;gap:10px;list-style:none;margin:0 0 24px;padding:0}.coverage-place-list li{border:1px solid #4a544c;padding:8px 14px;font-size:12px}.coverage-place-list li:first-child{color:#ffad76;border-color:#c96e2f}.map-sources{font-size:11px;color:#c0c9c2}.map-sources summary{cursor:pointer;width:fit-content}.areas .map-sources p{font-size:11px;max-width:100ch;margin-top:12px}.map-sources a{text-decoration:underline}
@media(max-width:1000px){.coverage-intro{gap:35px}.coverage-board{grid-template-columns:minmax(0,2fr) minmax(210px,1fr)}.coverage-map-aside{padding:22px 18px}}
@media(max-width:760px){.coverage-intro{grid-template-columns:1fr;gap:0;margin-bottom:30px}.coverage-board{grid-template-columns:1fr}.coverage-map-aside{padding:25px;display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.coverage-map-aside>.eyebrow,.coverage-map-aside>h3,.coverage-map-aside>.london-inset,.coverage-map-aside>p{grid-column:1}.coverage-map-aside>.island-callout{grid-column:2;grid-row:1/5;align-self:center;margin-top:0}.coverage-svg .map-place-label{font-size:25px}.coverage-map-figure figcaption{font-size:10px}.coverage-map-note{font-size:11px}.coverage-place-list{gap:8px}.coverage-place-list li{font-size:11px;padding:6px 10px}}
@media(max-width:480px){.coverage-map-aside{display:block}.coverage-map-aside .london-inset{max-width:340px;margin:auto}.coverage-svg{min-height:280px}.island-callout{margin-top:22px}.coverage-map-figure figcaption{padding:12px 8px;gap:5px 7px}.coverage-place-list li{font-size:12px}.coverage-svg .map-place-label{font-size:27px}}
/* Isolated fleet foreground: only the vehicle moves, the scene and text stay still. */
.fleet-scene{position:relative;display:block;isolation:isolate;overflow:hidden;order:-1;width:100%;height:210px;margin-bottom:25px;background:#f0f0e9}
.fleet-backdrop{position:absolute;inset:0;background:linear-gradient(165deg,#faf9f5,#e8eae3)}
.fleet-backdrop:before{content:"";position:absolute;width:150px;height:150px;right:-25px;top:30px;transform:rotate(45deg);border-top:2px solid #dbdfd6;border-left:2px solid #dbdfd6}
.fleet-backdrop:after{content:"";position:absolute;bottom:25px;left:12%;right:12%;height:1px;background:#c8d0c3}
.fleet-vehicle{position:relative;width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply;transform:translateX(5px) scale(1.08);transition:transform .55s cubic-bezier(.22,.61,.36,1);z-index:1}
.fleet-tipper .fleet-vehicle{transform:translateX(-5px) scale(1.08)}
.service:has(.fleet-scene):focus-visible{outline:3px solid #ff7418;outline-offset:4px;transform:none}
.service:focus-visible .fleet-vehicle{transform:translateX(-14px) scale(1.08)}
.service:focus-visible .fleet-tipper .fleet-vehicle{transform:translateX(14px) scale(1.08)}
@media(hover:hover) and (pointer:fine){.service:has(.fleet-scene):hover{transform:none}.service:hover .fleet-vehicle{transform:translateX(-14px) scale(1.08)}.service:hover .fleet-tipper .fleet-vehicle{transform:translateX(14px) scale(1.08)}}
@media(prefers-reduced-motion:reduce){.fleet-vehicle,.service:hover .fleet-vehicle,.service:focus-visible .fleet-vehicle,.fleet-tipper .fleet-vehicle,.service:hover .fleet-tipper .fleet-vehicle,.service:focus-visible .fleet-tipper .fleet-vehicle{transform:scale(1.08);transition:none}}
@media(max-width:480px){.coverage-svg .map-place-label{font-size:32px}.coverage-svg .map-radius-heading{font-size:32px}.coverage-svg .map-radius-subtitle{font-size:23px}.coverage-svg .map-base-label{font-size:28px}.coverage-map-aside>.island-callout{margin-top:24px}}
.map-key-centre{background:#fff;border:2px solid #ff7418;width:10px;height:10px}
/* Cohesive service contexts: fixed native vector scenes, independent fleet foreground. */
.fleet-scene{height:240px;background:#e8eae3}.fleet-backdrop{background:center top / cover no-repeat}.fleet-backdrop:before,.fleet-backdrop:after{display:none}
.context-roofing .fleet-backdrop{background-image:url('assets/service-context-roofing.svg')}.context-repairs .fleet-backdrop{background-image:url('assets/service-context-repairs.svg')}.context-flat .fleet-backdrop{background-image:url('assets/service-context-flat.svg')}.context-cleaning .fleet-backdrop{background-image:url('assets/service-context-cleaning.svg')}.context-guttering .fleet-backdrop{background-image:url('assets/service-context-guttering.svg')}.context-brickwork .fleet-backdrop{background-image:url('assets/service-context-brickwork.svg')}
.fleet-vehicle{position:absolute;bottom:-39px;left:4%;width:92%;height:245px;object-fit:contain}
.fleet-backdrop:after{display:block;content:"";inset:90px 0 0;height:auto;background:linear-gradient(transparent,#e8eae3 72%);border:0}
.coverage-compact{padding:74px 0}.coverage-compact-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:85px;align-items:center}.coverage-copy h2{font-size:clamp(32px,3.4vw,46px)}.coverage-copy>p{max-width:420px;font-size:14px}.areas .coverage-distance{border-left:2px solid #ff7418;padding-left:16px;margin:26px 0 20px}.coverage-distance strong{display:block;color:#fff;font-size:18px}.coverage-distance span{display:block;font-size:12px;color:#bdc7c0}.areas .coverage-confirm{font-size:12px;color:#bdc7c0;margin-bottom:22px}.coverage-copy .button{font-size:13px;padding:13px 20px}.coverage-island{display:flex;align-items:center;gap:22px;padding:24px 26px;background:#232b26;border-top:2px solid #ff7418;margin-bottom:22px}.coverage-island-mark{color:#ff9c59;font-size:36px;font-weight:400}.coverage-island .eyebrow{font-size:9px;color:#ffad76;margin-bottom:7px}.coverage-island h3{font-size:30px;line-height:1.1;color:#fff;margin:0}.areas .coverage-island p{font-size:12px;margin:8px 0 0;color:#bdc7c0}.coverage-names{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));list-style:none;margin:0;padding:0;gap:0 22px}.coverage-names li{font-size:13px;padding:14px 0;border-bottom:1px solid #3c463f}.areas .coverage-region-note{font-size:11px;margin:18px 0 0;color:#aebbb2}
@media(max-width:1000px){.coverage-compact-grid{gap:45px}.coverage-names{gap:0 14px}.coverage-names li{font-size:12px}}
@media(max-width:760px){.coverage-compact{padding:55px 0}.coverage-compact-grid{grid-template-columns:1fr;gap:32px}.coverage-copy>p{max-width:none}.coverage-copy h2{font-size:36px}.coverage-island{padding:20px}.coverage-names{grid-template-columns:repeat(3,minmax(0,1fr))}.coverage-names li{font-size:12px}.fleet-scene{height:240px}}
@media(max-width:390px){.coverage-names{grid-template-columns:repeat(2,minmax(0,1fr))}.coverage-island{gap:15px}.coverage-island h3{font-size:28px}}
/* Keep contextual drawing above the vehicle rather than showing through its body. */
.fleet-backdrop{background-size:100% 170px;background-position:center -16px}
.fleet-backdrop:after{inset:45px 0 0;background:linear-gradient(transparent,#e8eae3 38%)}
.fleet-vehicle{height:210px;bottom:-8px;mask-image:linear-gradient(transparent,#000 17%,#000 94%,transparent);-webkit-mask-image:linear-gradient(transparent,#000 17%,#000 94%,transparent)}
@media(max-width:390px){.coverage-compact{padding:42px 0}.coverage-names{grid-template-columns:repeat(3,minmax(0,1fr));gap:0 10px}.coverage-names li{font-size:11px;padding:12px 0}}

/* Approved About/team scene: stable 4:3 frame and static fallback. */
.about-media{position:relative;width:100%;aspect-ratio:4/3;overflow:hidden;background:#e9e8e1;align-self:center}.about-media .about-poster,.about-media .about-motion{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}.about-motion{opacity:0;transition:opacity .3s ease}.about-motion.is-playing{opacity:1}@media(prefers-reduced-motion:reduce){.about-motion{display:none;transition:none}}

/* Illustrative service galleries — exact vector watermark overlays. */
.service-gallery-disclosure{max-width:750px;margin:24px 0 36px}.service-gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 22px}.service-gallery-item{margin:0}.service-gallery-open{display:block;position:relative;overflow:hidden;background:#e8e8e2;aspect-ratio:3/2}.service-example-photo{width:100%;height:100%;object-fit:cover;transition:transform .25s ease}.service-gallery-open:hover .service-example-photo{transform:scale(1.025)}.service-gallery-open:focus-visible{outline:3px solid #f96b16;outline-offset:5px}.gallery-brand{position:absolute;bottom:12px;right:12px;width:122px;padding:7px 9px;background:rgba(15,20,18,.78);pointer-events:none;line-height:0}.gallery-brand img{width:100%;height:auto}.gallery-enlarge{position:absolute;top:10px;right:10px;background:#fff;color:#171b18;width:28px;height:28px;display:grid;place-items:center}.service-gallery-item figcaption{padding:14px 0 8px;display:grid;gap:5px}.service-gallery-item figcaption strong{font-size:16px}.service-gallery-item figcaption span{font-size:12px;color:#626760}.service-gallery-dialog{width:min(1100px,94vw);max-height:94dvh;padding:16px;border:0;background:#151b17;color:white;overflow:auto}.service-gallery-dialog::backdrop{background:rgba(0,0,0,.85)}.gallery-dialog-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.gallery-dialog-toolbar button{padding:10px 14px;border:1px solid #aab0aa;background:transparent;color:white;cursor:pointer}.gallery-dialog-toolbar button:focus-visible{outline:3px solid #ff731d;outline-offset:3px}.gallery-dialog-frame{position:relative;line-height:0}.gallery-dialog-image{display:block;width:100%;max-height:69dvh;object-fit:contain}.gallery-dialog-caption{margin:14px 0 4px;font-size:17px}.gallery-dialog-note{margin:0;font-size:13px;color:#d2d6d2}.gallery-dialog-frame .gallery-brand{width:145px}
@media(max-width:900px){.service-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.service-gallery-grid{grid-template-columns:1fr;gap:24px}.service-gallery-dialog{padding:12px}.gallery-dialog-toolbar button{min-height:44px}.gallery-dialog-frame .gallery-brand{width:110px;bottom:8px;right:8px}.gallery-dialog-note{font-size:12px}}@media(prefers-reduced-motion:reduce){.service-example-photo{transition:none}.service-gallery-open:hover .service-example-photo{transform:none}}

/* Service hero slideshows and compact connected FAQs. */
.service-hero .hero-grid{align-items:center;gap:30px;padding-bottom:28px}.service-hero .hero-copy{padding-right:0;padding-bottom:25px}.service-carousel{min-width:0;width:100%;align-self:center}.service-slide-window{overflow:hidden;aspect-ratio:3/2;background:#252b27}.service-slide-track{display:flex;height:100%;transition:transform .32s ease}.service-slide{flex:0 0 100%;min-width:0}.service-slide .service-gallery-open{height:100%;aspect-ratio:3/2}.service-slide .service-example-photo{object-fit:cover}.service-slide-controls{display:flex;align-items:center;justify-content:center;gap:5px;margin:10px 0 6px}.service-slide-controls button{border:1px solid #6a736d;background:transparent;color:#fff;min-width:40px;min-height:40px;cursor:pointer}.service-slide-controls button:hover{border-color:var(--orange);background:#ffffff0c}.service-slide-controls button:focus-visible{outline:2px solid var(--orange);outline-offset:2px}.slide-dots{display:flex;gap:0;align-items:center}.service-slide-controls .slide-dot{min-width:24px;min-height:40px;border:0;position:relative}.slide-dot:after{content:'';width:6px;height:6px;border:1px solid #d5dad6;border-radius:50%;display:block;margin:auto}.slide-dot[aria-pressed=true]:after{background:var(--orange);border-color:var(--orange)}.service-slide-controls .slide-pause{font-size:12px;min-width:64px;margin-left:3px}.service-slide-note{font-size:11px!important;line-height:1.5;color:#c9cdca;margin:0;text-align:center}.service-slide .gallery-brand{width:122px}.service-faq{background:#f5f4ef;padding:42px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.service-faq-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:56px;align-items:start}.service-faq-heading .eyebrow{margin-bottom:12px}.service-faq-heading h2{font-size:clamp(28px,3vw,40px);margin-bottom:16px}.service-faq-heading p{font-size:14px;color:var(--muted);max-width:300px;margin:0}.service-faq-list details{padding:0;border-bottom:1px solid #d4d8d1}.service-faq-list details:first-child{border-top:1px solid #d4d8d1}.service-faq-list summary{font-size:16px;padding:18px 26px 18px 0;line-height:1.4;list-style:none;position:relative}.service-faq-list summary::-webkit-details-marker{display:none}.service-faq-list summary:after{content:'+';position:absolute;right:2px;top:16px;color:#ae4907;font-size:22px;font-weight:400}.service-faq-list details[open] summary:after{content:'−'}.service-faq-list details p{font-size:14px;line-height:1.65;margin:0;padding:0 22px 18px 0}.service-faq-list details a{text-decoration:underline}.service-faq + .quote{padding-top:48px}
@media(max-width:760px){.service-hero .hero-grid{gap:0;padding-bottom:28px}.service-carousel{margin:0}.service-faq{padding:32px 0}.service-faq-grid{grid-template-columns:1fr;gap:24px}.service-faq-heading h2 br{display:none}.service-faq-heading p{max-width:none}.service-faq-list summary{font-size:15px}.service-slide-controls{gap:3px}.service-slide-controls .slide-dot{min-width:24px}.service-slide-controls button{min-height:44px}.service-slide .gallery-brand{width:110px}}
@media(prefers-reduced-motion:reduce){.service-slide-track{transition:none}}
.service-hero + .section{padding:60px 0 48px}.service-hero + .section .detail-grid>div>p:last-child{margin-bottom:0}@media(max-width:760px){.service-hero + .section{padding:40px 0 36px}}
/* Supplied collection: photos and illustrations are clearly separated. */
.service-slide[hidden],.supplied-gallery-item[hidden]{display:none!important}.service-photo-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.service-photo-tabs button{background:transparent;color:#d5d9d5;border:1px solid #535d55;padding:9px 12px;font-size:12px;cursor:pointer}.service-photo-tabs button[aria-pressed=true]{background:#fff;color:#17221a;border-color:white}.service-photo-tabs button span{font-size:10px;opacity:.7;margin-left:5px}.service-carousel .slide-dots{max-width:180px;overflow-x:auto;flex-shrink:1;scrollbar-width:thin}.service-carousel .slide-dot{flex:0 0 24px}.service-carousel .slide-counter{font-size:11px;white-space:nowrap;min-width:38px;text-align:center}.service-carousel .service-slide-note{min-height:43px;margin:8px 0 10px}.service-slide-note strong,.service-slide-note span{display:block}.service-slide-note strong{font-size:12px;color:white;font-weight:500}.service-slide-note span{font-size:10px;color:#c5cec6;margin-top:3px}.service-hero .hero-grid{padding-top:16px}.gallery-original{font-size:12px;text-decoration:underline;display:inline-block;margin-top:12px;color:#ffc08d}.gallery-dialog-note{line-height:1.6}.supplied-gallery-section{padding:64px 0}.gallery-intro{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:end;margin-bottom:30px}.gallery-intro h2{margin-bottom:0}.gallery-intro p{max-width:550px;margin-bottom:0;color:var(--muted)}.gallery-filters{display:flex;flex-wrap:wrap;gap:8px;padding:22px 0 0;border-top:1px solid var(--line)}.gallery-filters button{background:#fff;color:#29342c;border:1px solid #b5beb5;padding:11px 16px;font-size:12px;cursor:pointer;min-height:44px}.gallery-filters button[aria-pressed=true]{background:#17241b;color:#fff;border-color:#17241b}.gallery-filters button:hover{border-color:#ad4a08}.gallery-result-count{font-size:12px;color:var(--muted);margin:16px 0 24px}.supplied-gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 22px}.supplied-gallery-item{margin:0;min-width:0}.supplied-gallery-item .service-gallery-open{aspect-ratio:4/3}.supplied-gallery-item figcaption{padding:14px 0 0;display:grid;gap:6px}.supplied-gallery-item figcaption strong{font-size:14px;line-height:1.4;font-weight:600}.supplied-gallery-item figcaption span{font-size:11px;color:var(--muted)}.supplied-gallery-item .gallery-brand{width:110px;padding:6px 8px;bottom:10px;right:10px}.gallery-archive{margin-top:50px;border:1px solid var(--line);padding:22px;background:var(--cream)}.gallery-archive>summary{font-size:18px}.gallery-archive>summary span{font-size:11px;font-weight:400;margin-left:12px}.gallery-archive>p{font-size:13px;margin:18px 0 24px}.gallery-archive .supplied-gallery-grid{margin-top:20px}
@media(max-width:900px){.supplied-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-intro{gap:28px}.service-carousel .slide-dots{max-width:144px}}@media(max-width:560px){.supplied-gallery-section{padding:38px 0}.gallery-intro{grid-template-columns:1fr;gap:20px}.supplied-gallery-grid{grid-template-columns:1fr;gap:28px}.gallery-filters{gap:6px}.gallery-filters button{padding:9px 12px;font-size:11px}.gallery-archive{padding:18px}.service-carousel .slide-dots{max-width:120px}.service-photo-tabs{margin-top:0}.service-photo-tabs button{min-height:44px}.gallery-dialog-toolbar{gap:7px}}

.gallery-page-top{padding:38px 0}.gallery-page-top h1{font-size:clamp(38px,4.5vw,62px);margin-bottom:18px}.gallery-page-top p{margin-bottom:0}.supplied-gallery-section{padding-top:28px}.gallery-filters{border-top:0;padding-top:0}
/* User-approved assurance copy, continuously moving right on desktop. */
.usp-banner{background:var(--cream);border-bottom:1px solid var(--line);padding:0 0 12px;overflow:hidden}.usp-controls{width:min(1240px,90%);margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:40px;padding-top:6px}.usp-controls>span{font-size:9px;letter-spacing:.15em;font-weight:700;color:#5b665c}.usp-pause{font-size:10px;border:1px solid #a7b0a6;background:transparent;padding:5px 9px;color:#26362a;cursor:pointer;min-height:30px;visibility:hidden}.usp-banner.is-ready .usp-pause{visibility:visible}.usp-window{overflow-x:auto;scrollbar-width:thin}.usp-track{display:flex;width:max-content;will-change:transform}.usp-group{display:flex;list-style:none;padding:0;margin:0;flex:none;position:relative}.usp-item{width:240px;flex:0 0 240px;min-height:100px;padding:15px 20px;border-right:1px solid #d7dad2;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;gap:7px}.usp-item>strong{font-size:21px;line-height:1.2;font-weight:750;color:#18271d;letter-spacing:-.025em}.usp-item>span{font-size:12px;color:#5a655a;line-height:1.5}.usp-review a{display:flex;flex-direction:column;align-items:center;gap:4px;text-decoration:none}.usp-review img{height:27px;width:auto;max-width:150px;object-fit:contain}.usp-review span{font-size:11px;color:#354333}.usp-review span strong{font-size:16px}.usp-review small{font-size:9px;color:#65705f}.usp-review a:focus-visible{outline:3px solid #aa4709;outline-offset:6px}.usp-banner.is-ready .usp-window{overflow:hidden}.usp-banner.is-ready .usp-track{animation:usp-rightward 48s linear infinite}.usp-banner.is-paused .usp-track,.usp-banner:hover .usp-track,.usp-banner:focus-within .usp-track{animation-play-state:paused}.usp-banner .usp-track.focus-position{animation:none;transform:var(--usp-focus-shift,translateX(0))}@keyframes usp-rightward{from{transform:translateX(-50%)}to{transform:translateX(0)}}
@media(max-width:760px){.usp-banner .usp-window,.usp-banner.is-ready .usp-window{overflow-x:auto;scroll-snap-type:x mandatory}.usp-banner .usp-track,.usp-banner.is-ready .usp-track{animation:none;transform:none;will-change:auto}.usp-banner .usp-clone{display:none}.usp-item{width:210px;flex-basis:210px;scroll-snap-align:start}.usp-pause{display:none}.usp-controls{min-height:30px}.usp-controls>span:after{content:' · SWIPE TO EXPLORE';font-weight:400;letter-spacing:.06em}.usp-item>strong{font-size:20px}}
@media(prefers-reduced-motion:reduce){.usp-banner .usp-window,.usp-banner.is-ready .usp-window{overflow:visible}.usp-banner .usp-track,.usp-banner.is-ready .usp-track{animation:none;transform:none!important;width:100%;display:block;will-change:auto}.usp-banner .usp-group{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));width:min(1240px,90%);margin:auto}.usp-banner .usp-clone{display:none}.usp-item{width:auto;min-width:0;border-bottom:1px solid #d7dad2}.usp-pause{display:none}.usp-controls>span:after{content:none}}

/* Quiet contextual USP icons; visible control/title row removed as requested. */
.usp-banner{position:relative;padding:12px 0}.usp-item{position:relative;isolation:isolate;min-height:112px}.usp-item>.usp-context-icon{position:absolute;z-index:-1;pointer-events:none;right:15px;top:50%;transform:translateY(-50%);width:90px;height:90px;opacity:.065;background-repeat:no-repeat;background-position:center;background-size:contain}.usp-review>.usp-context-icon{opacity:.035}.job-heading-line{display:inline-block;white-space:nowrap}.usp-pause,.usp-banner.is-ready .usp-pause{position:absolute;width:1px;height:1px;min-height:0;padding:0;border:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.usp-pause:focus-visible{clip-path:none;top:4px;right:10px;width:auto;height:auto;padding:6px 10px;min-height:30px;background:#fff;z-index:5;border:1px solid #a7b0a6}
.usp-context-icon.icon-reviews{background-image:url(assets/usp-icon-reviews.svg)}
.usp-context-icon.icon-experience{background-image:url(assets/usp-icon-experience.svg)}
.usp-context-icon.icon-family{background-image:url(assets/usp-icon-family.svg)}
.usp-context-icon.icon-quotes{background-image:url(assets/usp-icon-quotes.svg)}
.usp-context-icon.icon-insured{background-image:url(assets/usp-icon-insured.svg)}
.usp-context-icon.icon-guarantee{background-image:url(assets/usp-icon-guarantee.svg)}
.usp-context-icon.icon-deposit{background-image:url(assets/usp-icon-deposit.svg)}
.usp-context-icon.icon-payment{background-image:url(assets/usp-icon-payment.svg)}

/* Mobile assurance layout: reviews then four promises; desktop marquee unchanged. */
@media(max-width:760px){
.usp-banner .usp-window,.usp-banner.is-ready .usp-window{overflow:visible;scroll-snap-type:none}
.usp-banner .usp-track,.usp-banner.is-ready .usp-track{display:block;width:100%;animation:none;transform:none!important;will-change:auto}
.usp-banner .usp-group{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:calc(100% - 32px);margin:0 auto}
.usp-banner .usp-clone{display:none}
.usp-banner .usp-item{width:auto;min-width:0;min-height:108px;padding:16px 10px;border:0;border-bottom:1px solid #d7dad2;gap:6px}
.usp-banner .usp-item:has(.icon-experience),.usp-banner .usp-item:has(.icon-family),.usp-banner .usp-item:has(.icon-insured){display:none}
.usp-banner .usp-review:has(a[href*="share.google"]){order:0;border-right:1px solid #d7dad2}
.usp-banner .usp-review:has(a[href*="checkatrade"]){order:1}
.usp-banner .usp-item:has(.icon-guarantee){order:2;border-right:1px solid #d7dad2}
.usp-banner .usp-item:has(.icon-quotes){order:3}
.usp-banner .usp-item:has(.icon-deposit){order:4;border-right:1px solid #d7dad2;border-bottom:0}
.usp-banner .usp-item:has(.icon-payment){order:5;border-bottom:0}
.usp-banner .usp-item>strong{font-size:18px;line-height:1.25}
.usp-banner .usp-item>span:not(.usp-context-icon){font-size:11px}
.usp-banner .usp-review img{max-width:100%;height:23px}
.usp-banner .usp-review span{font-size:10px;white-space:nowrap}
.usp-banner .usp-review span strong{font-size:14px}
.usp-banner .usp-review small{font-size:8px}
.usp-banner .usp-item>.usp-context-icon{width:70px;height:70px;right:8px}
}

.footer .designer-credit{margin-right:72px;display:inline-flex;align-items:center;gap:12px;padding:8px 0;flex-shrink:0;color:#d4d8d4;font-size:11px}.footer .designer-credit img{width:88px;height:auto;max-width:none;object-fit:contain}.footer .designer-credit:focus-visible{outline:2px solid var(--orange);outline-offset:5px}

@media(max-width:760px){.footer .designer-credit{display:flex;width:max-content;margin-top:12px}}
/* Privacy controls: stay above the mobile contact bar, away from WhatsApp. */
.policy-content{max-width:850px;padding:45px 0 75px}.policy-content h2{font-size:1.55rem;margin:32px 0 12px}.policy-content p{margin-bottom:18px;line-height:1.75}.policy-content a{text-decoration:underline}.cookie-settings-link{font:inherit;color:inherit;border:0;background:none;padding:0;cursor:pointer;text-decoration:underline;text-align:left}.footer .cookie-settings-link{display:block;margin-top:10px}.cookie-notice{position:fixed;bottom:24px;left:24px;z-index:99990;width:min(510px,calc(100vw - 120px));padding:22px;background:#f5f3ef;color:#171717;border:1px solid #ccc;box-shadow:0 8px 35px #0003;border-radius:6px;font-size:14px;line-height:1.5}.cookie-notice[hidden],.cookie-actions [hidden],#cookie-none[hidden]{display:none!important}.cookie-notice strong{font-size:18px}.cookie-notice p{margin:10px 0 15px}.cookie-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.cookie-actions button{font:inherit;font-weight:650;background:#171717;color:white;border:2px solid #171717;border-radius:3px;min-height:44px;padding:9px 14px;cursor:pointer}.cookie-actions a{color:inherit;text-decoration:underline}.cookie-actions button:hover{background:#3b3b3b}.cookie-actions button:focus-visible,.cookie-settings-link:focus-visible{outline:3px solid #e96311;outline-offset:3px}.cookie-dialog{width:min(560px,calc(100vw - 32px));max-height:calc(100dvh - 140px);overflow:auto;background:#fff;color:#171717;padding:26px;border:1px solid #ccc;border-radius:8px;z-index:100000}.cookie-dialog::backdrop{background:#0009}.cookie-dialog h2{font-size:26px;margin:0 0 14px}.cookie-dialog p{font-size:15px;line-height:1.6;margin:10px 0 18px}.cookie-category{border-top:1px solid #ddd;padding:16px 0}.cookie-category label{font-weight:700}.cookie-category input{width:20px;height:20px;vertical-align:middle;accent-color:#171717}.cookie-dialog a{color:#171717;text-decoration:underline}@media(max-width:600px){.cookie-notice{left:12px;bottom:150px;width:calc(100vw - 24px);max-height:calc(100dvh - 220px);overflow:auto;padding:16px}.cookie-dialog{padding:20px}.cookie-actions button{flex:1 1 auto}.policy-content{padding-top:25px}}
