@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Manrope:wght@400;500;600&family=Playfair+Display:ital,wght@1,500&display=swap');

:root{--ink:#242725;--ink-2:#303431;--paper:#f7f4ed;--soft:#ece7de;--warm:#b69b78;--line:rgba(36,39,37,.18);--white:#fff;--serif:'Playfair Display',Georgia,serif;--sans:'Manrope','DM Sans',Arial,sans-serif;--shell:min(1180px,calc(100% - 40px))}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}img,svg{display:block;max-width:100%}a{color:inherit}button,input,select,textarea{font:inherit}.shell{width:var(--shell);margin-inline:auto}.section{padding:104px 0}.section-dark{background:var(--ink);color:var(--paper)}.section-soft{background:var(--soft)}.skip-link{position:fixed;z-index:1000;top:12px;left:12px;transform:translateY(-200%);background:#fff;padding:10px 16px}.skip-link:focus{transform:none}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.site-header{position:absolute;z-index:20;top:0;left:0;width:100%;color:var(--paper)}.header-inner{height:110px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.16)}.brand{width:260px;color:var(--paper)}.brand img{width:100%;filter:brightness(0) invert(1)}.site-nav{display:flex;align-items:center;gap:28px}.site-nav>a{font-size:13px;text-decoration:none;letter-spacing:.02em}.button{display:inline-flex;align-items:center;justify-content:center;gap:26px;min-height:54px;padding:0 22px;border:1px solid var(--warm);background:var(--warm);color:#181a19;text-decoration:none;font-size:13px;font-weight:600;letter-spacing:.04em;transition:.25s ease;cursor:pointer}.button:hover{background:#c7ae8d;transform:translateY(-2px)}.button-small{min-height:42px;padding:0 18px}.menu-toggle{display:none;background:none;border:0;color:inherit;padding:12px}.menu-toggle span:not(.sr-only){display:block;width:24px;height:1px;margin:5px;background:currentColor}
.hero{position:relative;overflow:hidden;min-height:860px;background:var(--ink);color:var(--paper);padding:174px 0 80px}.hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:1fr .94fr;gap:80px;align-items:center}.hero-copy{padding-top:20px}.eyebrow{margin:0 0 22px;text-transform:uppercase;font-size:11px;font-weight:600;letter-spacing:.2em;color:var(--warm)}h1,h2,h3,p{margin-top:0}h1,h2{font-weight:500;letter-spacing:-.045em;line-height:.98}h1{max-width:730px;margin-bottom:30px;font-size:clamp(62px,7vw,102px)}h1 em,h2 em{font-family:var(--serif);font-weight:500;color:var(--warm)}.hero-lede{max-width:620px;margin-bottom:38px;color:#d6d2ca;font-size:18px;line-height:1.7}.hero-actions{display:flex;align-items:center;gap:28px}.text-link{display:inline-flex;gap:18px;align-items:center;text-underline-offset:5px;font-size:13px}.trust-row{display:grid;grid-template-columns:repeat(3,1fr);padding:34px 0 0;margin:54px 0 0;border-top:1px solid rgba(255,255,255,.15);list-style:none}.trust-row li{display:flex;flex-direction:column;justify-content:flex-end;padding-right:18px}.trust-row li+li{padding-left:24px;border-left:1px solid rgba(255,255,255,.15)}.trust-row strong{font-size:18px;font-weight:500}.trust-row span{color:#aaa9a4;font-size:11px;text-transform:uppercase;letter-spacing:.08em}.gas-safe-crop{display:block;width:74px;height:45px;margin-bottom:5px;overflow:hidden;background:#fff}.gas-safe-crop img{width:100%;height:100%;object-fit:cover;object-position:center}.gas-safe-trust>span:last-child{display:block}.hero-visual{position:relative;min-height:610px;margin-left:auto;overflow:hidden;background:#dbd6cc;width:100%;max-width:520px}.tile-field{position:absolute;inset:0;background:linear-gradient(120deg,rgba(255,255,255,.25),transparent 60%);mix-blend-mode:soft-light}.bath-sketch{position:absolute;inset:40px 5px 18px;width:96%;height:93%}.visual-label{position:absolute;z-index:2;top:22px;left:22px;display:flex;align-items:center;gap:12px;padding:9px 13px;background:var(--ink);color:var(--paper);font-size:11px;text-transform:uppercase;letter-spacing:.12em}.visual-label span{color:var(--warm)}.visual-note{position:absolute;z-index:2;bottom:0;left:0;width:100%;margin:0;padding:9px 12px;background:rgba(36,39,37,.86);color:#d9d5ce;font-size:10px;text-align:center;letter-spacing:.03em}.hero-watermark{position:absolute;right:-40px;bottom:-132px;color:rgba(255,255,255,.025);font-size:360px;font-weight:600;line-height:1}
.intro-grid{display:grid;grid-template-columns:150px 1.1fr .8fr;gap:52px}.section-number{margin:3px 0 20px;color:#797a76;font-size:10px;text-transform:uppercase;letter-spacing:.15em}.intro h2,.section-heading h2,.why h2,.gallery h2,.reviews h2,.enquiry h2{font-size:clamp(42px,5vw,70px)}.intro-copy{padding-top:40px;color:#5d605d}.intro-copy p:first-child{color:var(--ink);font-size:18px}.section-heading{display:grid;grid-template-columns:.6fr 1.4fr;gap:60px;align-items:end;margin-bottom:64px}.section-heading h2{margin-bottom:0}.section-dark .section-number{color:#8e918d}.service-grid{display:grid;grid-template-columns:1.18fr .82fr;gap:1px;background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.13)}.service-card{position:relative;display:grid;grid-template-columns:78px 1fr;min-height:290px;padding:42px;background:var(--ink);overflow:hidden}.service-card:not(.service-featured){grid-template-columns:68px 1fr}.service-featured{grid-row:span 3;min-height:872px;display:flex;flex-direction:column;background:#313532}.service-featured:after{content:"";position:absolute;left:0;right:0;bottom:0;height:45%;background:repeating-linear-gradient(90deg,transparent 0,transparent 79px,rgba(255,255,255,.06) 80px),repeating-linear-gradient(0deg,transparent 0,transparent 79px,rgba(255,255,255,.06) 80px)}.service-index{color:var(--warm);font-size:11px;letter-spacing:.1em}.service-icon{width:78px;color:var(--warm)}.service-icon svg{fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.service-featured .service-icon{position:relative;z-index:2;width:150px;margin:150px auto 70px}.service-content{position:relative;z-index:2;align-self:center}.service-content h3{font-size:26px;font-weight:500;letter-spacing:-.025em}.service-content p,.service-content li{color:#b9bab6;font-size:14px}.service-featured h3{max-width:420px;font-size:45px;line-height:1.1}.service-featured p{font-size:16px}.service-content ul{display:grid;gap:8px;padding:0;list-style:none}.service-content li:before{content:"—";margin-right:10px;color:var(--warm)}.card-kicker{color:var(--warm)!important;text-transform:uppercase;font-size:10px!important;letter-spacing:.14em}.service-note{margin:24px 0 0;color:#8e918d;font-size:11px;text-align:right}
.why-grid{display:grid;grid-template-columns:.84fr 1.16fr;gap:100px}.why-title{position:sticky;top:40px;align-self:start}.why-title>p:last-child{max-width:480px;color:#666963}.values{border-top:1px solid var(--line)}.value{display:grid;grid-template-columns:70px 1fr;gap:30px;padding:34px 0;border-bottom:1px solid var(--line)}.value>span{color:var(--warm);font-size:12px}.value h3{margin-bottom:8px;font-size:22px;font-weight:500}.value p{margin-bottom:0;color:#6a6d69}.credentials-band{padding:55px 0;background:#b59a77;color:#181b19}.credentials-inner{display:grid;grid-template-columns:90px 1fr .55fr;gap:32px;align-items:center}.gas-mark svg{fill:none;stroke:currentColor;stroke-width:2}.gas-mark svg path{fill:currentColor;stroke:none}.credentials-band .eyebrow{margin-bottom:9px;color:#454035}.credentials-band h2{max-width:700px;margin:0;font-size:27px;line-height:1.3;letter-spacing:-.025em}.reg-placeholder{padding-left:30px;border-left:1px solid rgba(0,0,0,.25)}.reg-placeholder span,.reg-placeholder strong{display:block}.reg-placeholder span{font-size:10px;text-transform:uppercase;letter-spacing:.12em}.reg-placeholder strong{margin-top:7px;font-size:14px;font-weight:500}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:0;padding:0;margin:0;list-style:none;border-top:1px solid var(--line)}.steps li{padding:30px 26px 20px 0}.steps li+li{padding-left:26px;border-left:1px solid var(--line)}.steps span{display:inline-grid;place-items:center;width:34px;height:34px;margin-bottom:50px;border:1px solid var(--warm);border-radius:50%;color:#8c7456;font-size:12px}.steps h3{font-size:19px;font-weight:500}.steps p{margin:0;color:#686b67;font-size:14px}.gallery-heading{display:grid;grid-template-columns:1fr .6fr;gap:100px;align-items:end;margin-bottom:50px}.gallery-heading>p{max-width:420px;color:#676965}.gallery-grid{display:grid;grid-template-columns:1.35fr .65fr;grid-template-rows:repeat(2,245px);gap:16px}.gallery-placeholder{position:relative;display:flex;align-items:flex-end;justify-content:space-between;padding:28px;overflow:hidden;background:#d4cec3;color:#353835}.gallery-placeholder:before,.gallery-placeholder:after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,transparent 49.7%,rgba(36,39,37,.12) 50%,transparent 50.3%)}.gallery-placeholder:after{transform:scaleX(-1)}.gallery-placeholder>*{position:relative;z-index:1}.gallery-placeholder>span{align-self:flex-start;color:#8f7759;font-size:11px}.gallery-placeholder strong,.gallery-placeholder small{display:block}.gallery-placeholder small{color:#757873;font-size:11px}.gallery-large{grid-row:1 / 3}.reviews-grid{display:grid;grid-template-columns:1fr .8fr;gap:90px;align-items:center}.review-card{margin:0;padding:50px;border:1px solid var(--line)}.quote-mark{height:70px;color:var(--warm);font-family:Georgia,serif;font-size:90px;line-height:1}.review-card blockquote{margin:0 0 30px;font-family:var(--serif);font-size:28px;line-height:1.35}.review-card figcaption{display:flex;align-items:center;gap:12px;padding-top:22px;border-top:1px solid var(--line);font-size:11px;text-transform:uppercase;letter-spacing:.11em}.review-card figcaption strong{font-weight:600}.review-card figcaption span{color:#777a76}.review-card figcaption span:before{content:"—";margin-right:12px;color:var(--warm)}
.gallery-image{position:relative;margin:0;overflow:hidden;background:#292c2a;color:#f7f4ed}.gallery-image:after{content:"";position:absolute;inset:40% 0 0;background:linear-gradient(transparent,rgba(19,21,20,.84));pointer-events:none}.gallery-image img{width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.7,.2,1),filter .7s ease}.gallery-image:hover img{transform:scale(1.025);filter:saturate(.9)}.gallery-image figcaption{position:absolute;z-index:2;left:0;right:0;bottom:0;display:flex;align-items:flex-end;justify-content:space-between;gap:20px;padding:26px}.gallery-image figcaption>span{align-self:flex-start;color:#d0b38e;font-size:11px;letter-spacing:.1em}.gallery-image figcaption strong,.gallery-image figcaption small{display:block;text-align:right}.gallery-image figcaption strong{font-size:15px;font-weight:500}.gallery-image figcaption small{max-width:280px;margin-top:3px;color:#c6c4be;font-size:9px;letter-spacing:.04em}.enquiry-grid{display:grid;grid-template-columns:.76fr 1.24fr;gap:100px}.enquiry-copy>p:not(.section-number,.eyebrow,.area-note){max-width:520px;color:#b8bab5}.contact-cards{margin:55px 0 35px;border-top:1px solid rgba(255,255,255,.16)}.contact-cards>div{padding:20px 0;border-bottom:1px solid rgba(255,255,255,.16)}.contact-cards span,.contact-cards strong{display:block}.contact-cards span{color:#888b87;font-size:10px;text-transform:uppercase;letter-spacing:.12em}.contact-cards strong{font-size:16px;font-weight:500}.area-note{max-width:450px;color:#92948f;font-size:12px}.area-note span{color:var(--warm)}.quote-form{padding:44px;background:#303431}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.field{margin-bottom:22px}.field label{display:block;margin-bottom:8px;color:#d0d1cc;font-size:11px;text-transform:uppercase;letter-spacing:.1em}.field input,.field select,.field textarea{width:100%;border:1px solid #5b5e5a;border-radius:0;outline:none;background:#292c2a;color:#fff;padding:13px 14px}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--warm);box-shadow:0 0 0 2px rgba(182,155,120,.2)}.field textarea{resize:vertical}.upload-field{position:relative;padding:18px;border:1px dashed #676a66}.upload-field label{display:flex;align-items:center;justify-content:space-between;margin:0;cursor:pointer}.upload-field label small{color:#8f918d;text-transform:none;letter-spacing:0}.upload-action{color:var(--warm)}.upload-field input{position:absolute;width:1px;height:1px;opacity:0}.upload-field p{margin:7px 0 0;color:#8f918d;font-size:11px}.button-light{width:100%;background:var(--paper);border-color:var(--paper)}.form-status{display:none;margin-top:18px;padding:13px;border-left:3px solid var(--warm);background:#262927;color:#f1eee8;font-size:13px}.form-status.is-visible{display:block}.form-disclaimer{margin:15px 0 0;color:#939590;font-size:10px;line-height:1.5}.field input:user-invalid,.field select:user-invalid,.field textarea:user-invalid{border-color:#c4877d}.site-footer{padding:62px 0 24px;background:#171917;color:#ddd9d2}.footer-main{display:grid;grid-template-columns:1fr .78fr .82fr;align-items:start;gap:60px;padding-bottom:50px}.footer-brand{width:320px;color:#fff}.footer-brand img{filter:brightness(0) invert(1)}.footer-main>div{max-width:360px}.footer-main p{color:#92948f}.footer-gas-safe{display:flex;align-items:center;gap:16px}.footer-gas-safe .gas-safe-crop-large{flex:0 0 82px;width:82px;height:58px;margin:0}.footer-gas-safe span,.footer-gas-safe strong{display:block}.footer-gas-safe>div>span{color:#ddd9d2;font-size:11px;text-transform:uppercase;letter-spacing:.08em}.footer-gas-safe strong{margin-top:5px;color:#7f827d;font-size:10px;font-weight:500;line-height:1.4}.footer-base{display:flex;justify-content:space-between;padding-top:22px;border-top:1px solid rgba(255,255,255,.13);color:#777a76;font-size:10px;text-transform:uppercase;letter-spacing:.08em}
.reveal{opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .7s ease}.reveal.is-visible{opacity:1;transform:none}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.button:hover{transform:none}}
@media(max-width:900px){:root{--shell:min(100% - 32px,720px)}.section{padding:78px 0}.site-header{position:absolute}.header-inner{height:88px}.brand{width:210px}.menu-toggle{display:block}.site-nav{position:absolute;top:88px;left:16px;right:16px;display:none;align-items:stretch;gap:0;padding:16px;background:var(--paper);color:var(--ink);box-shadow:0 20px 50px rgba(0,0,0,.3)}.site-nav.is-open{display:flex;flex-direction:column}.site-nav>a{padding:12px}.site-nav .button{margin-top:10px}.hero{min-height:auto;padding:138px 0 52px}.hero-grid{grid-template-columns:1fr;gap:60px}.hero-visual{margin:0;max-width:none;min-height:550px}.hero-watermark{display:none}.intro-grid,.section-heading,.why-grid,.gallery-heading,.reviews-grid,.enquiry-grid{grid-template-columns:1fr;gap:28px}.intro-copy{padding-top:0}.service-grid{grid-template-columns:1fr}.service-featured{grid-row:auto;min-height:680px}.service-card{grid-template-columns:60px 1fr;padding:32px}.service-card:not(.service-featured){grid-template-columns:60px 1fr}.why-title{position:static}.credentials-inner{grid-template-columns:70px 1fr}.reg-placeholder{grid-column:2;padding-left:0;border:0}.steps{grid-template-columns:1fr 1fr}.steps li:nth-child(3){border-left:0}.gallery-grid{grid-template-columns:1fr 1fr;grid-template-rows:360px 220px}.gallery-large{grid-column:1 / 3;grid-row:auto}.enquiry-grid{gap:50px}.footer-main{flex-direction:column}.footer-base{flex-direction:column;gap:5px}}
@media(max-width:560px){:root{--shell:calc(100% - 28px)}body{font-size:15px}.section{padding:64px 0}.header-inner{height:78px}.brand{width:185px}.site-nav{top:78px}.hero{padding-top:120px}.hero-copy{padding:0}.hero h1{font-size:53px}.hero-lede{font-size:16px}.hero-actions{align-items:flex-start;flex-direction:column;gap:20px}.hero-visual{min-height:430px}.bath-sketch{inset:24px 0 10px;height:95%}.trust-row{margin-top:42px}.trust-row li+li{padding-left:14px}.trust-row strong{font-size:15px}.trust-row span{font-size:9px}.intro h2,.section-heading h2,.why h2,.gallery h2,.reviews h2,.enquiry h2{font-size:42px}.service-grid{border-left:0;border-right:0}.service-card{display:block;min-height:auto;padding:28px}.service-featured{min-height:620px}.service-featured .service-icon{width:112px;margin:80px auto 54px}.service-index{margin-bottom:24px}.service-card:not(.service-featured) .service-icon{float:right;width:58px;margin:-42px 0 20px 20px}.service-content h3{font-size:25px}.service-featured h3{font-size:36px}.service-note{text-align:left}.value{grid-template-columns:44px 1fr;gap:12px}.credentials-band{padding:40px 0}.credentials-inner{grid-template-columns:52px 1fr;gap:18px}.credentials-band h2{font-size:21px}.steps{grid-template-columns:1fr}.steps li{display:grid;grid-template-columns:44px 1fr;padding:24px 0}.steps li+li{padding-left:0;border-left:0;border-top:1px solid var(--line)}.steps span{grid-row:1 / 3;margin:0}.steps h3{margin-bottom:5px}.steps p{grid-column:2}.gallery-grid{grid-template-columns:1fr;grid-template-rows:300px 190px 190px}.gallery-large{grid-column:auto}.review-card{padding:34px 24px}.review-card blockquote{font-size:23px}.quote-form{padding:26px 20px}.form-row{grid-template-columns:1fr;gap:0}.footer-brand{width:245px}.footer-base{align-items:flex-start}.footer-base p{margin-bottom:4px}}
@media(max-width:900px){.footer-main{grid-template-columns:1fr;gap:36px}.footer-gas-safe{max-width:340px}}
.gas-safe-crop img{width:154%;height:154%;max-width:none;object-fit:cover;object-position:center;transform:translate(-17.5%,-17.5%)}
.gas-safe-crop{width:56px;height:54px}.footer-gas-safe .gas-safe-crop-large{flex-basis:66px;width:66px;height:64px}
.header-phone{display:flex;align-items:center;gap:7px;color:#f1eee8}.header-phone span{color:var(--warm);font-size:9px;text-transform:uppercase;letter-spacing:.12em}.contact-cards a{color:inherit;text-decoration:none;text-underline-offset:5px}.contact-cards a:hover{text-decoration:underline}.footer-contact{display:flex;flex-direction:column;align-items:flex-start;gap:2px;margin:-4px 0 15px}.footer-contact a{color:#ddd9d2;font-size:13px;text-decoration:none;text-underline-offset:4px}.footer-contact a:hover{text-decoration:underline}@media(max-width:900px){.header-phone{margin-top:8px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);color:var(--ink)}.header-phone span{color:#8b7356}}
.gas-safe-trust small{display:block;margin-top:2px;color:#d2c8b9;font-size:.58rem;letter-spacing:.08em;text-transform:uppercase}.gas-safe-number{margin:10px 0 0;font-size:.72rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:#3f382f}
.hero-bathroom-photo{width:100%;height:100%;object-fit:cover;object-position:center;filter:saturate(.88) contrast(.98)}

/* High-value project positioning */
.hero h1{max-width:760px;font-size:clamp(54px,5.7vw,82px)}.hero-proof{max-width:610px;margin:0 0 34px;padding-left:18px;border-left:2px solid var(--warm);color:#b9bab6;font-size:13px;line-height:1.6}.hero-lede{margin-bottom:24px}.site-nav{gap:20px}
.services-v2{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.14)}.service-v2{display:grid;grid-template-columns:56px 1fr;gap:22px;min-height:340px;padding:44px;background:var(--ink)}.service-v2-lead{grid-column:1 / -1;grid-template-columns:72px minmax(0,780px);min-height:390px;align-content:center;background:#303431}.service-v2-compact{grid-column:1 / -1;grid-template-columns:72px minmax(0,760px);min-height:235px;align-content:center}.service-v2 h3{max-width:640px;margin-bottom:18px;font-size:32px;font-weight:500;line-height:1.15;letter-spacing:-.035em}.service-v2-lead h3{font-size:clamp(42px,5vw,68px)}.service-v2 p{max-width:720px;margin-bottom:28px;color:#b9bab6;font-size:15px;line-height:1.75}.service-v2 .text-link{color:var(--paper)}
.about-v2-grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:80px;align-items:stretch}.about-stat{display:flex;flex-direction:column;justify-content:flex-end;min-height:430px;padding:45px;background:var(--soft)}.about-stat strong{font-family:var(--serif);font-size:clamp(92px,11vw,150px);font-weight:500;line-height:.8;color:var(--warm)}.about-stat span{max-width:210px;margin-top:28px;font-size:12px;text-transform:uppercase;letter-spacing:.13em}.about-copy{padding:34px 0}.about-copy h2{font-size:clamp(44px,5.5vw,72px)}.about-copy>p{max-width:710px;color:#676a66}.about-copy .about-lede{color:var(--ink);font-size:19px;line-height:1.75}.values-v2{display:grid;grid-template-columns:repeat(4,1fr);margin-top:70px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.values-v2 .value{display:block;padding:30px 24px}.values-v2 .value+.value{border-left:1px solid var(--line)}.values-v2 .value>span{display:block;margin-bottom:36px}.about-credentials{display:grid;grid-template-columns:76px 1fr .45fr;gap:30px;align-items:center;margin-top:65px;padding:38px;background:var(--warm);color:#181b19}.about-credentials .gas-safe-crop-large{width:66px;height:64px;margin:0}.about-credentials .eyebrow{margin-bottom:6px;color:#4d4539}.about-credentials h3{margin:0;font-size:24px;font-weight:500;line-height:1.35}.about-credentials .reg-placeholder{border-color:rgba(0,0,0,.25)}
.field label small{color:#92948f;font-size:9px;text-transform:none;letter-spacing:0}.mobile-actions{display:none}
@media(max-width:1050px) and (min-width:901px){.site-nav{gap:13px}.site-nav>a{font-size:11px}.button-small{padding:0 13px}.brand{width:230px}}
@media(max-width:900px){.hero h1{font-size:clamp(52px,11vw,76px)}.services-v2{grid-template-columns:1fr}.service-v2,.service-v2-lead,.service-v2-compact{grid-column:auto;grid-template-columns:52px 1fr;min-height:auto;padding:36px}.about-v2-grid{grid-template-columns:1fr}.about-stat{min-height:300px}.values-v2{grid-template-columns:1fr 1fr}.values-v2 .value:nth-child(3){border-left:0}.about-credentials{grid-template-columns:66px 1fr}.about-credentials .reg-placeholder{grid-column:2;padding-left:0;border-left:0}.mobile-actions{position:fixed;z-index:50;right:0;bottom:0;left:0;display:grid;grid-template-columns:.8fr 1.2fr;padding:10px;background:#171917;box-shadow:0 -8px 25px rgba(0,0,0,.2)}.mobile-actions a{display:grid;place-items:center;min-height:48px;color:var(--paper);font-size:12px;font-weight:600;text-decoration:none}.mobile-actions a+ a{background:var(--warm);color:#191b19}body{padding-bottom:68px}}
@media(max-width:560px){.hero h1{font-size:48px}.hero-proof{font-size:12px}.service-v2,.service-v2-lead,.service-v2-compact{display:block;padding:28px 24px}.service-v2 .service-index{display:block;margin-bottom:34px}.service-v2 h3,.service-v2-lead h3{font-size:32px}.about-v2-grid{gap:30px}.about-stat{min-height:240px}.about-copy{padding:0}.values-v2{grid-template-columns:1fr}.values-v2 .value+.value{border-left:0;border-top:1px solid var(--line)}.about-credentials{grid-template-columns:52px 1fr;padding:26px 20px}.about-credentials .gas-safe-crop-large{width:52px;height:52px}.about-credentials h3{font-size:18px}.about-credentials .reg-placeholder{grid-column:1 / -1}.mobile-actions a{font-size:11px}}

/* Refined conversion path */
@media(min-width:901px){.hero{min-height:760px;padding:142px 0 48px}.hero-grid{gap:64px}.hero-copy{padding-top:0}.hero h1{margin-bottom:22px;font-size:clamp(50px,5.15vw,74px)}.hero-lede{font-size:16px;line-height:1.55}.hero-proof{margin-bottom:26px}.trust-row{margin-top:32px;padding-top:22px}.hero-visual{min-height:550px}}
.project-preview{display:grid;gap:16px}.project-feature{display:grid;grid-template-columns:1.35fr .65fr;min-height:450px;background:#292d2a;color:var(--paper)}.project-image-placeholder,.portrait-placeholder{position:relative;display:flex;flex-direction:column;justify-content:flex-end;min-height:280px;padding:30px;overflow:hidden;background:linear-gradient(145deg,#cbc4b9,#e3ded6);color:#343735}.project-image-placeholder:before,.portrait-placeholder:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,transparent 49.8%,rgba(36,39,37,.12) 50%,transparent 50.2%),linear-gradient(45deg,transparent 49.8%,rgba(36,39,37,.08) 50%,transparent 50.2%)}.project-image-placeholder>* ,.portrait-placeholder>*{position:relative;z-index:1}.project-image-placeholder span,.portrait-placeholder span,.dev-label{display:block;margin-bottom:auto;color:#776d60;font-size:9px;font-weight:600;text-transform:uppercase;letter-spacing:.14em}.project-image-placeholder strong,.portrait-placeholder strong{font-size:20px;font-weight:500}.project-image-placeholder small,.portrait-placeholder small{margin-top:5px;color:#706f6a;font-size:11px}.project-feature-copy{display:flex;flex-direction:column;justify-content:center;padding:46px}.project-feature-copy h3{font-size:34px;font-weight:500;line-height:1.15}.project-feature-copy dl{margin:15px 0 0}.project-feature-copy dl div{display:grid;grid-template-columns:80px 1fr;padding:13px 0;border-top:1px solid rgba(255,255,255,.14)}.project-feature-copy dt{color:#8f918d;font-size:10px;text-transform:uppercase;letter-spacing:.1em}.project-feature-copy dd{margin:0;color:#d3d1cb;font-size:13px}.project-supporting{display:grid;grid-template-columns:1fr 1fr;gap:16px}.project-supporting .project-image-placeholder{min-height:250px}.service-v2-featured{min-height:430px;background:#303431}.service-v2-featured h3{font-size:clamp(36px,4vw,52px)}.service-v2-compact{grid-column:auto;grid-template-columns:56px 1fr;min-height:340px;align-content:initial}.about-portrait{display:grid;grid-template-rows:1fr auto;min-height:500px;background:var(--soft)}.portrait-placeholder{min-height:400px}.about-experience{display:flex;align-items:baseline;gap:18px;padding:22px 28px}.about-experience strong{color:var(--warm);font-family:var(--serif);font-size:48px;font-weight:500;line-height:1}.about-experience span{font-size:10px;text-transform:uppercase;letter-spacing:.13em}.about-credentials{grid-template-columns:76px 1fr}.reviews-intro{max-width:470px;color:#686b67}.review-draft{position:relative}.dev-label{margin:0 0 20px;color:#8b7356}.optional-details{margin:0 0 22px;border:1px solid #5b5e5a}.optional-details summary{padding:16px 18px;color:#d0d1cc;font-size:12px;font-weight:600;letter-spacing:.02em;cursor:pointer}.optional-details summary::marker{color:var(--warm)}.optional-details-inner{padding:6px 18px 0;border-top:1px solid #4b4e4a}.optional-details .upload-field{margin-bottom:18px}
@media(max-width:900px){.project-feature{grid-template-columns:1fr}.project-feature-copy{padding:34px}.project-supporting{grid-template-columns:1fr 1fr}.service-v2-featured{min-height:auto}.service-v2-compact{grid-column:auto;grid-template-columns:52px 1fr;min-height:auto}.about-portrait{min-height:0}.portrait-placeholder{min-height:420px}.about-experience{padding:20px 26px}}
@media(max-width:560px){.project-supporting{grid-template-columns:1fr}.project-image-placeholder{min-height:260px}.project-feature-copy{padding:28px 24px}.project-feature-copy h3{font-size:28px}.project-feature-copy dl div{grid-template-columns:72px 1fr}.portrait-placeholder{min-height:350px}.about-experience strong{font-size:42px}.optional-details-inner{padding-inline:14px}}
.paul-portrait{min-height:400px;margin:0;overflow:hidden;background:#cbc4b9}.paul-portrait img{width:100%;height:100%;object-fit:cover;object-position:52% center;filter:saturate(.88) contrast(.98)}
@media(max-width:900px){.paul-portrait{min-height:420px}}
@media(max-width:560px){.paul-portrait{min-height:350px}.paul-portrait img{object-position:52% center}}
.project-experience{max-width:710px;margin-top:30px;padding-top:22px;border-top:1px solid var(--line)}.project-experience span{display:block;margin-bottom:8px;color:#8b7356;font-size:9px;font-weight:600;text-transform:uppercase;letter-spacing:.14em}.project-experience p{margin:0;color:#5f625e;font-size:13px;line-height:1.65}
.project-concept{position:relative;min-height:250px;margin:0;overflow:hidden;background:#292d2a;color:var(--paper)}.project-concept-feature{min-height:450px}.project-concept:after{content:"";position:absolute;inset:38% 0 0;background:linear-gradient(transparent,rgba(18,20,19,.86));pointer-events:none}.project-concept img{width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.7,.2,1),filter .7s ease}.project-concept:hover img{transform:scale(1.02);filter:saturate(.92)}.project-concept figcaption{position:absolute;z-index:2;right:0;bottom:0;left:0;padding:24px}.project-concept figcaption span,.project-concept figcaption strong,.project-concept figcaption small{display:block}.project-concept figcaption span{margin-bottom:8px;color:#d0b38e;font-size:9px;font-weight:600;text-transform:uppercase;letter-spacing:.14em}.project-concept figcaption strong{font-size:16px;font-weight:500}.project-concept figcaption small{margin-top:3px;color:#c8c5be;font-size:10px}.project-supporting .project-concept{min-height:360px}.project-supporting .project-concept img{object-position:center 43%}
@media(max-width:900px){.project-concept-feature{min-height:400px}.project-supporting .project-concept{min-height:320px}}
@media(max-width:560px){.project-concept-feature{min-height:320px}.project-supporting .project-concept{min-height:360px}.project-concept figcaption{padding:20px}.project-concept figcaption small{font-size:9px}}

/* Responsive layout v4 — phone defaults, enhanced when content has room */
html{overflow-x:clip}body{overflow-x:clip;font-size:clamp(16px,1.05vw,17px)}.shell{width:min(calc(100% - 32px),1180px)}.section{padding-block:64px}p{max-width:68ch}.button,.menu-toggle,.mobile-actions a{min-height:48px}.button{padding-inline:22px}.menu-toggle{width:48px;height:48px;padding:10px}.eyebrow{margin-bottom:16px;font-size:.68rem;line-height:1.5}.section-number{font-size:.66rem}.intro h2,.section-heading h2,.why h2,.gallery h2,.reviews h2,.enquiry h2,.about-copy h2{font-size:clamp(2.55rem,10.5vw,4.4rem);line-height:1.01;overflow-wrap:anywhere}.section-heading,.gallery-heading,.reviews-grid,.enquiry-grid{grid-template-columns:minmax(0,1fr);gap:28px;margin-bottom:40px}.section-heading h2{margin:0}.site-header{position:absolute}.header-inner{height:82px}.brand{width:min(52vw,195px)}.menu-toggle{display:block}.site-nav{position:absolute;top:82px;right:16px;left:16px;display:none;gap:0;padding:12px;background:var(--paper);color:var(--ink);box-shadow:0 18px 45px rgba(0,0,0,.28)}.site-nav.is-open{display:flex;flex-direction:column}.site-nav>a{display:flex;align-items:center;min-height:46px;padding:10px 12px;font-size:.9rem}.site-nav .button{justify-content:center;margin-top:8px}.site-nav .header-phone{margin-top:6px;border-block:1px solid var(--line);color:var(--ink)}.site-nav .header-phone span{color:#765f45}.hero{min-height:0;padding:112px 0 52px}.hero-grid{grid-template-columns:minmax(0,1fr);gap:34px}.hero-copy{padding:0}.hero h1{max-width:12ch;margin-bottom:24px;font-size:clamp(3rem,13vw,4.65rem);line-height:.96;overflow-wrap:normal}.hero-lede{max-width:42rem;margin-bottom:20px;font-size:1.06rem;line-height:1.62}.hero-proof{max-width:38rem;margin-bottom:26px;font-size:.82rem}.hero-actions{align-items:flex-start;flex-direction:column;gap:18px}.hero-actions .button{width:auto}.trust-row{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:34px;padding-top:22px}.trust-row li{min-width:0;padding-right:10px}.trust-row li+li{padding-left:12px}.trust-row span{font-size:.58rem;overflow-wrap:anywhere}.hero-visual{width:100%;max-width:none;min-height:0;margin:0;aspect-ratio:4 / 5}.hero-bathroom-photo{object-position:center 52%}.visual-label{top:14px;left:14px;max-width:calc(100% - 28px);font-size:.62rem}.gallery-heading>p{font-size:1rem;line-height:1.65}.project-feature{grid-template-columns:minmax(0,1fr);min-height:0}.project-concept-feature{min-height:0;aspect-ratio:4 / 3}.project-feature-copy{padding:28px 24px}.project-feature-copy h3{font-size:clamp(1.85rem,8vw,2.35rem)}.project-supporting{grid-template-columns:minmax(0,1fr);gap:14px}.project-supporting .project-concept{min-height:0;aspect-ratio:4 / 3}.project-concept figcaption{padding:20px}.project-concept figcaption small{font-size:.62rem}.services-v2{grid-template-columns:minmax(0,1fr)}.service-v2,.service-v2-featured,.service-v2-compact{grid-column:auto;display:block;min-height:0;padding:30px 24px}.service-v2 .service-index{display:block;margin-bottom:28px}.service-v2 h3,.service-v2-featured h3{font-size:clamp(1.9rem,8vw,2.55rem);overflow-wrap:anywhere}.service-v2 p{font-size:1rem;line-height:1.7}.service-v2 .text-link{min-height:44px}.about-v2-grid{grid-template-columns:minmax(0,1fr);gap:36px}.about-portrait{min-height:0}.paul-portrait{min-height:0;aspect-ratio:4 / 5}.paul-portrait img{object-position:52% center}.about-copy{padding:0}.about-copy .about-lede{font-size:1.08rem;line-height:1.72}.values-v2{grid-template-columns:minmax(0,1fr);margin-top:52px}.values-v2 .value,.values-v2 .value+.value{padding:26px 18px;border-left:0;border-top:1px solid var(--line)}.values-v2 .value:first-child{border-top:0}.values-v2 .value>span{margin-bottom:22px}.about-credentials{grid-template-columns:52px minmax(0,1fr);gap:18px;margin-top:48px;padding:24px 18px}.about-credentials h3{font-size:1.12rem}.reviews-grid{gap:36px}.review-card{padding:30px 22px}.review-card blockquote{font-size:clamp(1.4rem,6.5vw,1.9rem)}.steps{grid-template-columns:minmax(0,1fr)}.steps li,.steps li+li{display:grid;grid-template-columns:46px minmax(0,1fr);padding:24px 0;border-left:0;border-top:1px solid var(--line)}.steps li:first-child{border-top:0}.steps span{grid-row:1 / 3;margin:0}.steps h3{margin-bottom:6px;font-size:1.12rem}.steps p{grid-column:2;font-size:.98rem;line-height:1.65}.enquiry-grid{gap:44px}.quote-form{padding:26px 20px}.form-row{grid-template-columns:minmax(0,1fr);gap:0}.field{margin-bottom:20px}.field label{color:#e0ded8;font-size:.72rem}.field label small{color:#b9bbb5;font-size:.65rem}.field input,.field select,.field textarea{min-height:48px;padding:13px 14px;font-size:1rem}.field textarea{min-height:150px}.optional-details summary{min-height:48px}.upload-field label{min-height:48px;gap:16px}.form-disclaimer,.area-note{color:#b1b3ad;font-size:.72rem}.footer-main{grid-template-columns:minmax(0,1fr);gap:34px}.footer-brand{width:min(76vw,280px)}.footer-base{align-items:flex-start}.mobile-actions{padding:8px}.mobile-actions a{font-size:.74rem}

@media(min-width:600px){.shell{width:min(calc(100% - 48px),1180px)}.section{padding-block:78px}.hero{padding-top:128px}.hero h1{max-width:13ch;font-size:clamp(3.6rem,10vw,5.15rem)}.hero-actions{align-items:center;flex-direction:row}.hero-visual{aspect-ratio:16 / 10}.project-supporting{grid-template-columns:repeat(2,minmax(0,1fr))}.project-supporting .project-concept{aspect-ratio:4 / 5}.values-v2{grid-template-columns:repeat(2,minmax(0,1fr))}.values-v2 .value:nth-child(2){border-top:0;border-left:1px solid var(--line)}.values-v2 .value:nth-child(4){border-left:1px solid var(--line)}.steps{grid-template-columns:repeat(2,minmax(0,1fr))}.steps li,.steps li+li{display:block;padding:28px 24px 28px 0;border-top:0}.steps li+li{padding-left:24px;border-left:1px solid var(--line)}.steps li:nth-child(3){padding-left:0;border-left:0;border-top:1px solid var(--line)}.steps li:nth-child(4){border-top:1px solid var(--line)}.steps span{display:inline-grid;margin-bottom:34px}.steps p{font-size:.94rem}.form-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.quote-form{padding:34px}.footer-main{grid-template-columns:1fr 1fr}}

@media(min-width:900px){.section{padding-block:90px}.services-v2{grid-template-columns:repeat(2,minmax(0,1fr))}.service-v2,.service-v2-featured,.service-v2-compact{display:grid;grid-template-columns:52px minmax(0,1fr);padding:38px}.service-v2 .service-index{margin:0}.service-v2 h3,.service-v2-featured h3{font-size:clamp(2rem,3.5vw,3rem)}.about-v2-grid{grid-template-columns:minmax(300px,.72fr) minmax(0,1.28fr);gap:64px}.paul-portrait{aspect-ratio:auto;min-height:420px}.reviews-grid{grid-template-columns:minmax(0,1fr) minmax(340px,.82fr);gap:64px;align-items:center}.enquiry-grid{grid-template-columns:minmax(300px,.78fr) minmax(0,1.22fr);gap:70px}.footer-main{grid-template-columns:1fr .8fr .8fr}.project-feature{grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr)}.project-concept-feature{aspect-ratio:auto;min-height:430px}.project-feature-copy{padding:40px}.project-supporting .project-concept{min-height:330px;aspect-ratio:auto}}

@media(min-width:1101px){.section{padding-block:100px}.header-inner{height:104px}.brand{width:240px}.menu-toggle{display:none}.site-nav{position:static;display:flex;flex-direction:row;align-items:center;gap:16px;padding:0;background:transparent;color:var(--paper);box-shadow:none}.site-nav>a{display:inline-flex;min-height:44px;padding:6px 4px;font-size:.76rem}.site-nav .button{justify-content:center;margin:0;padding-inline:16px}.site-nav .header-phone{margin:0;border:0;color:var(--paper)}.hero{padding:146px 0 64px}.hero-grid{grid-template-columns:minmax(0,1.08fr) minmax(390px,.92fr);gap:clamp(42px,5vw,74px);align-items:center}.hero h1{max-width:11.5ch;font-size:clamp(3.75rem,5.25vw,5.05rem)}.hero-lede{font-size:1.08rem}.hero-visual{aspect-ratio:4 / 5;max-height:610px}.section-heading,.gallery-heading{grid-template-columns:minmax(260px,.62fr) minmax(0,1.38fr);gap:64px;margin-bottom:58px}.gallery-heading{grid-template-columns:minmax(0,1fr) minmax(260px,.55fr)}.intro h2,.section-heading h2,.why h2,.gallery h2,.reviews h2,.enquiry h2,.about-copy h2{font-size:clamp(3.4rem,4.7vw,4.45rem)}.steps{grid-template-columns:repeat(4,minmax(0,1fr))}.steps li,.steps li+li,.steps li:nth-child(3),.steps li:nth-child(4){display:block;padding:30px 24px;border-top:0;border-left:1px solid var(--line)}.steps li:first-child{padding-left:0;border-left:0}.steps span{margin-bottom:44px}.mobile-actions{display:none}}

@media(min-width:1500px){.shell{width:min(calc(100% - 96px),1260px)}.hero-grid{gap:84px}.hero h1{font-size:5.2rem}.hero-visual{max-height:640px}}

@media(max-width:389px){.shell{width:calc(100% - 28px)}.hero h1{font-size:2.8rem}.hero-lede{font-size:1rem}.trust-row strong{font-size:.98rem}.quote-form{padding-inline:16px}.contact-cards strong{font-size:.94rem;overflow-wrap:anywhere}}
@media(min-width:600px) and (max-width:899px){.paul-portrait{min-height:0;aspect-ratio:16 / 10}.paul-portrait img{object-position:center 42%}}
@media(min-width:600px) and (max-width:767px){.form-row{grid-template-columns:minmax(0,1fr);gap:0}}
.liam-feature{display:grid;grid-template-columns:minmax(0,1fr);margin-top:56px;background:var(--ink);color:var(--paper)}.liam-feature figure{min-height:0;margin:0;overflow:hidden;aspect-ratio:3 / 2}.liam-feature img{width:100%;height:100%;object-fit:cover;object-position:center 32%}.liam-feature>div{align-self:center;padding:34px 26px}.liam-feature .eyebrow{margin-bottom:14px}.liam-feature h3{margin-bottom:18px;font-size:clamp(2rem,8vw,3rem);font-weight:500;line-height:1.05;letter-spacing:-.035em}.liam-feature p:last-child{margin-bottom:0;color:#c3c4bf;line-height:1.75}@media(min-width:760px){.liam-feature{grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr)}.liam-feature figure{aspect-ratio:auto;min-height:390px}.liam-feature>div{padding:48px}.liam-feature h3{font-size:clamp(2.2rem,4vw,3.3rem)}}
.form-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}.form-status.is-success{border-left-color:#8bb394;background:#203027}.form-status.is-error{border-left-color:#d59a8f;background:#382624}.quote-form button:disabled{cursor:wait;opacity:.7;transform:none}
.form-follow-up-note{margin:16px 0 18px;color:#b9bbb5;font-size:12px;line-height:1.6}
.reviews-development-heading{display:grid;grid-template-columns:minmax(0,1fr);gap:20px;margin-bottom:42px}.reviews-development-heading h2{font-size:clamp(2.55rem,10.5vw,4.4rem)}.reviews-development-heading>p{color:#676965}.testimonial-development-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:16px}.testimonial-development-card{padding:28px 24px;border:1px solid var(--line);background:var(--paper)}.testimonial-development-card>span{color:var(--warm);font-size:.72rem}.testimonial-development-card h3{margin:24px 0;font-size:1.4rem;font-weight:500}.testimonial-development-card dl,.testimonial-development-card dl div{margin:0}.testimonial-development-card dl div{padding:14px 0;border-top:1px solid var(--line)}.testimonial-development-card dt{color:#777a76;font-size:.64rem;text-transform:uppercase;letter-spacing:.11em}.testimonial-development-card dd{margin:4px 0 0;color:#4f524e;font-size:.85rem}@media(min-width:900px){.reviews-development-heading{grid-template-columns:minmax(0,1fr) minmax(280px,.5fr);align-items:end}.testimonial-development-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
.hero-grid{grid-template-areas:"copy" "visual" "trust"}.hero-copy{grid-area:copy}.hero-visual{grid-area:visual}.trust-row{grid-area:trust;margin-top:0}
@media(min-width:1101px){.hero-grid{grid-template-areas:"copy visual" "trust visual";grid-template-rows:auto 1fr}.hero-visual{align-self:stretch}.trust-row{align-self:end}}
@media(min-width:1101px){.hero{padding:132px 0 48px}.hero-grid{column-gap:clamp(42px,5vw,74px);row-gap:20px}.hero-visual{max-height:590px}}
@media(min-width:1500px){.hero-visual{max-height:620px}}
.values-intro{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;margin-top:64px}.values-intro .eyebrow{margin:0}.values-intro h3{max-width:780px;margin:0;font-size:clamp(2.25rem,8vw,4rem);font-weight:500;line-height:1.04;letter-spacing:-.04em}.values-intro h3 em{font-family:var(--serif);font-weight:500;color:var(--warm)}.values-intro+.values-v2{margin-top:38px}.values-v2 .value h3{font-size:clamp(1.35rem,2.2vw,1.65rem);line-height:1.18}.values-v2 .value p{font-size:.98rem;line-height:1.68}
@media(min-width:900px){.values-intro{grid-template-columns:minmax(180px,.5fr) minmax(0,1.5fr);align-items:start;margin-top:76px}.values-intro h3{grid-column:2}.values-intro .eyebrow{grid-column:1;grid-row:1}}
