@import url('/assets/fonts.css');
:root{--ink:#123f45;--teal:#25666c;--pale:#eaf3f3;--muted:#5d7073;--brass:#dfc694;--line:#d9e4e5;--radius:16px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;font-family:'DM Sans',sans-serif;color:var(--ink);background:#fff;font-size:17px;line-height:1.65}h1,h2,h3,.brand{font-family:Manrope,sans-serif;line-height:1.12;letter-spacing:-.045em;margin:0 0 22px}h1{font-size:clamp(38px,4.2vw,60px);font-weight:700}h2{font-size:clamp(30px,3.2vw,44px);font-weight:600}h3{font-size:24px;font-weight:650}p{margin:0 0 20px}a{color:inherit;text-underline-offset:5px}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #bd934a;outline-offset:4px}img{max-width:100%;display:block;border-radius:var(--radius);object-fit:cover}figure{margin:0}figcaption,.caption{font-size:12px;color:var(--muted);margin-top:9px}.wrap{max-width:1240px;width:calc(100% - 80px);margin-inline:auto}.section{padding-block:90px}.skip{position:fixed;top:-80px;left:15px;background:#fff;padding:12px;z-index:100}.skip:focus{top:12px}.top{border-bottom:1px solid var(--line)}.header{height:96px;display:flex;align-items:center;gap:34px}.brand{margin:0;flex-shrink:0}.brand img{width:207px;height:62px;object-fit:contain;border-radius:0}.nav{display:flex;gap:27px;margin-left:auto;align-items:center}.nav a{font-size:14px;font-weight:600;text-decoration:none}.nav a:hover,.nav a[aria-current]{text-decoration:underline}.header-phone{font-size:15px;text-decoration:none;font-weight:700;white-space:nowrap;border-left:1px solid var(--line);padding-left:26px}.menu{display:none}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:13px 23px;background:var(--ink);color:white;border:1px solid var(--ink);border-radius:8px;text-decoration:none;font-weight:650;font-size:15px;cursor:pointer;line-height:1.4}.btn:hover{background:var(--teal)}.btn.light{background:white;color:var(--ink);border-color:white}.btn.outline{background:transparent;color:var(--ink);border-color:#9cafb2}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:27px}.hero{padding-top:30px}.hero-frame{display:grid;grid-template-columns:46% 54%;background:var(--ink);border-radius:20px;overflow:hidden;min-height:600px}.hero-copy{padding:54px 38px 46px 44px;color:#fff;align-self:center}.hero-copy h1{font-size:clamp(36px,3.75vw,55px);max-width:480px}.hero-copy p{color:#d9e8e9;max-width:39ch;font-size:18px}.hero-copy .outline{color:white;border-color:#84a6a9}.benefits{padding:0;list-style:none;font-size:14px;line-height:1.8;margin:24px 0}.benefits li:before{content:'✓';color:var(--brass);margin-right:11px}.hero-photo{position:relative;margin:15px 15px 15px 0}.hero-photo>img{height:100%;width:100%;min-height:570px;object-position:center}.hero-photo .detail{min-height:0;position:absolute;width:175px;height:145px;bottom:25px;left:-36px;border:6px solid var(--ink);object-fit:cover}.hero-photo .caption{position:absolute;bottom:15px;right:18px;background:rgba(255,255,255,.94);padding:5px 10px;border-radius:5px;color:var(--ink)}.intro-line{display:flex;gap:30px;justify-content:space-between;align-items:center;padding:26px 0;border-bottom:1px solid var(--line);font-size:14px}.intro-line strong{font-weight:600}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:50px;margin-bottom:42px}.section-heading h2{max-width:560px;margin-bottom:0}.section-heading p{max-width:42ch;color:var(--muted);margin:0}.service-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:85px}.service-intro p{color:var(--muted)}.service-list{border-top:1px solid var(--line)}.service-row{display:grid;grid-template-columns:1fr 36px;padding:23px 0;border-bottom:1px solid var(--line);text-decoration:none;align-items:center}.service-row h3{font-size:23px;margin-bottom:8px}.service-row p{font-size:15px;margin:0;color:var(--muted);max-width:48ch}.service-row span{display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;height:36px;font-size:25px}.service-row:hover span{background:var(--ink);color:white}.pale{background:var(--pale)}.style-layout{display:grid;grid-template-columns:1.25fr .75fr;gap:34px}.style-big img{width:100%;height:520px}.style-big h3{margin:22px 0 12px}.style-side img{width:100%;height:300px}.style-side .style-text{padding:25px 0 0}.text-link{font-weight:650;font-size:15px}.style-side p{color:var(--muted)}.scope-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px}.scope-grid>figure img{height:540px;width:100%}.scope-copy{align-self:center}.checklist{list-style:none;padding:0}.checklist li{padding:17px 0;border-bottom:1px solid var(--line)}.checklist strong{display:block;font-size:17px;margin-bottom:6px}.checklist span{font-size:15px;color:var(--muted)}.process-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px}.steps{list-style:none;margin:0;padding:0}.steps li{position:relative;padding:0 0 28px 55px;border-left:1px solid #a9c4c7;margin-left:18px}.steps li:last-child{padding-bottom:0;border-color:transparent}.steps .number{position:absolute;left:-19px;top:0;width:37px;height:37px;display:grid;place-items:center;border-radius:50%;background:var(--ink);color:white;font-size:14px}.steps h3{font-size:22px;margin:0 0 12px}.steps p{font-size:16px;color:var(--muted);margin:0}.faq-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px}details{border-bottom:1px solid var(--line);padding:20px 0}summary{font-weight:600;cursor:pointer;list-style:none;display:flex;gap:20px;justify-content:space-between}summary:after{content:'+';font-size:24px;line-height:1}details[open] summary:after{content:'−'}details p{color:var(--muted);font-size:16px;margin:17px 0 0}.enquiry{background:var(--ink);color:white;padding:68px 0}.enquiry-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px}.enquiry h2{font-size:38px}.enquiry .phone{font-size:28px;font-weight:600}.enquiry-copy p{color:#d6e6e7;max-width:33ch}.enquiry-form{background:white;color:var(--ink);border-radius:16px;padding:30px;display:grid;grid-template-columns:1fr 1fr;gap:18px}.enquiry-form h3{font-size:25px;margin:0}.enquiry-form p{font-size:13px;margin:0}.full{grid-column:1/-1}.enquiry-form label{font-size:14px;font-weight:600;display:block}input,textarea,select{width:100%;margin-top:7px;border:1px solid #a5b6b8;background:#fff;border-radius:6px;color:var(--ink);padding:11px 12px;min-height:47px}textarea{resize:vertical;min-height:90px}input:focus,textarea:focus,select:focus{outline:2px solid var(--teal);outline-offset:1px}.optional{font-weight:400;color:var(--muted);font-size:12px}.trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.status{grid-column:1/-1;font-size:14px}.status:empty{display:none}.error{color:#9e2323}.success{color:#1b604e}button:disabled{opacity:.6;cursor:wait}.footer{padding:45px 0 30px}.footer-grid{display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:70px}.footer img{width:220px;height:65px;object-fit:contain;border-radius:0}.footer p{font-size:14px;max-width:30ch;color:var(--muted);margin-top:16px}.footer-links{display:grid;gap:8px;font-size:14px}.footer-links a{text-decoration:none}.footer-links a:hover{text-decoration:underline}.footer-bottom{margin-top:40px;padding-top:22px;border-top:1px solid var(--line);display:flex;gap:25px;justify-content:space-between;font-size:12px;color:var(--muted)}.mobile-actions{display:none}.breadcrumb{font-size:13px;margin:24px 0;color:var(--muted)}.page-hero{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center;padding-bottom:45px}.page-hero h1{font-size:clamp(38px,4vw,57px)}.page-hero p{font-size:19px;color:var(--muted);max-width:43ch}.page-hero img{width:100%;height:450px}.article-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px}.article-grid p{color:var(--muted)}.detail-strip{display:grid;grid-template-columns:1fr 1fr 1fr;gap:24px;margin:50px 0 0}.detail-strip img{width:100%;height:260px}.detail-strip figcaption{font-size:13px}.note{background:var(--pale);padding:32px;border-radius:14px}.note h3{font-size:23px}.note p:last-child{margin:0}.gallery{display:grid;grid-template-columns:1fr 1fr;gap:35px}.gallery figure:nth-child(3n+1){grid-column:1/-1}.gallery img{height:440px;width:100%}.gallery figure:nth-child(3n+1) img{height:520px}.gallery figcaption{font-size:15px;margin-top:16px}.reading{max-width:760px;margin:auto}.reading h2{font-size:30px;margin-top:43px}.reading h1{font-size:47px}.reading p,.reading li{color:#405e62}.reading>img{width:100%;height:400px;margin:30px 0}.guide-list{display:grid;grid-template-columns:1fr 1fr;gap:0 55px}.guide-list article{padding:28px 0;border-bottom:1px solid var(--line)}.guide-list h2{font-size:25px}.guide-list p{color:var(--muted);font-size:16px}.quiet{color:var(--muted)}.legal{padding:50px 0 90px}.contact-intro{max-width:740px;padding:48px 0}.contact-intro h1{font-size:54px}.page-hero .caption{font-size:12px}.guide-meta{font-size:13px;color:var(--muted)}
@media(min-width:1600px){.hero-frame{min-height:610px}.hero-photo>img{min-height:580px}}
@media(max-width:1050px){.wrap{width:calc(100% - 48px)}.nav{gap:16px}.header{gap:20px}.header-phone{padding-left:15px;font-size:13px}.brand img{width:180px}.hero-copy{padding:30px}.hero-copy h1{font-size:42px}.hero-copy p{font-size:16px}.hero-frame{grid-template-columns:48% 52%;min-height:560px}.hero-photo>img{min-height:530px}.hero-photo .detail{width:125px;height:120px;left:-15px}.service-layout,.scope-grid,.process-grid,.faq-grid,.enquiry-grid{gap:45px}.section{padding-block:65px}.page-hero{gap:35px}}
@media(max-width:760px){html{scroll-padding-top:80px}.wrap{width:calc(100% - 36px)}.header{height:79px;justify-content:space-between;gap:12px}.brand img{width:170px;height:54px}.header-phone{display:none}.menu{display:block;background:white;border:1px solid var(--line);padding:9px 15px;border-radius:6px;font-size:14px;min-height:44px;color:var(--ink)}.nav{display:none;position:absolute;top:79px;left:0;right:0;z-index:20;background:#fff;border-bottom:1px solid var(--line);padding:22px;flex-direction:column;align-items:stretch;margin:0;gap:0}.nav.open{display:flex}.nav a{padding:12px}.hero{padding-top:18px}.hero-frame{display:flex;flex-direction:column;min-height:0;border-radius:16px}.hero-photo{order:-1;margin:10px 10px 0;height:170px}.hero-photo>img{min-height:0;height:170px;object-position:center 55%;border-radius:10px}.hero-photo .detail{display:none}.hero-photo .caption{font-size:10px;bottom:8px;right:10px}.hero-copy{padding:27px 22px 31px}.hero-copy h1{font-size:38px;margin-bottom:16px;max-width:370px}.hero-copy p{font-size:16px;margin-bottom:16px}.benefits{margin:16px 0;font-size:13px}.actions{margin-top:20px;gap:10px}.hero .actions{display:grid;grid-template-columns:1fr}.btn{min-height:48px;padding:12px 15px;font-size:14px}.intro-line{gap:15px;align-items:start;font-size:12px;padding:20px 0}.intro-line span:last-child{display:none}.section{padding-block:52px}.section-heading{display:block;margin-bottom:28px}.section-heading h2{margin-bottom:18px}.section-heading p{font-size:16px}.service-layout,.scope-grid,.process-grid,.faq-grid,.enquiry-grid,.page-hero,.article-grid{grid-template-columns:1fr;gap:30px}.service-row h3{font-size:21px}.style-layout{grid-template-columns:1fr;gap:36px}.style-big img{height:340px}.style-side img{height:250px}.scope-grid>figure img{height:320px}.process-grid{gap:35px}.enquiry{padding:45px 0}.enquiry h2{font-size:32px}.enquiry-form{padding:22px;gap:16px;grid-template-columns:1fr}.enquiry-form h3{font-size:23px}.enquiry-form .phone{font-size:24px}.enquiry-copy p{max-width:40ch}.footer-grid{grid-template-columns:1fr 1fr;gap:30px}.footer-grid>div:first-child{grid-column:1/-1}.footer{padding-bottom:90px}.footer-bottom{display:block}.footer-bottom a{display:inline-block;margin-top:12px}.mobile-actions{position:fixed;bottom:0;left:0;right:0;z-index:40;display:grid;grid-template-columns:1fr 1fr;background:white;padding:10px 15px calc(10px + env(safe-area-inset-bottom));border-top:1px solid var(--line);gap:10px}.mobile-actions a{min-height:44px}.editing .mobile-actions,.form-visible .mobile-actions{display:none}.breadcrumb{margin:20px 0;font-size:12px}.page-hero figure{order:-1}.page-hero img{height:210px}.page-hero h1{font-size:39px}.page-hero p{font-size:17px}.detail-strip{gap:15px;grid-template-columns:1fr;margin-top:35px}.detail-strip img{height:250px}.gallery{grid-template-columns:1fr;gap:30px}.gallery figure:nth-child(3n+1){grid-column:auto}.gallery img,.gallery figure:nth-child(3n+1) img{height:320px}.guide-list{grid-template-columns:1fr}.reading h1{font-size:36px}.reading h2{font-size:27px}.reading>img{height:250px}.contact-intro h1{font-size:40px}.note{padding:25px}.contact-intro{padding:35px 0 15px}}
@media(max-width:360px){.hero-copy{padding:23px 17px}.hero-copy h1{font-size:33px}.wrap{width:calc(100% - 28px)}.brand img{width:157px}.enquiry-form{padding:18px}.hero-photo,.hero-photo>img{height:145px}.hero-copy p{font-size:15px}.page-hero h1{font-size:35px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Shared bathroom finance offer — verified with Ultimate Home Solutions, 29 September 2026. */
.uhs-finance{background:#edf3ef;color:#173f3a;border-bottom:1px solid #d2dfd7;padding:14px 24px;font-family:inherit}.uhs-finance .uhs-finance-inner{max-width:1240px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:5px 24px;flex-wrap:wrap}.uhs-finance .uhs-finance-offer{font-size:16px;line-height:1.5;margin:0;color:inherit}.uhs-finance .uhs-finance-offer strong{font-weight:700;white-space:nowrap}.uhs-finance .uhs-finance-brand{font-size:13px;font-weight:600;color:inherit;text-decoration:none;text-underline-offset:3px;line-height:1.5}.uhs-finance .uhs-finance-terms{flex-basis:100%;font-size:11px;line-height:1.5;margin:0;color:#38564e;max-width:none}.uhs-finance .uhs-finance-terms a{color:inherit;text-decoration:underline;text-underline-offset:2px;white-space:nowrap}.uhs-finance a:focus-visible{outline:2px solid #173f3a;outline-offset:4px}@media(max-width:640px){.uhs-finance{padding:12px 20px}.uhs-finance .uhs-finance-inner{gap:4px}.uhs-finance .uhs-finance-offer{flex-basis:100%;font-size:15px}.uhs-finance .uhs-finance-brand{font-size:12px}.uhs-finance .uhs-finance-terms{font-size:11px;margin-top:3px}}

/* Bathroom photography: consistent subtle corners and uncropped article views. */
figure img,.hero-photo>img,.hero-photo .detail{border-radius:16px}.reading figure img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}.reading figure{margin:2rem 0}.article-section{margin:2rem 0}

/* Compact mobile navigation: portfolio update 2026-10-03. */
@media(max-width:850px){.top .nav{gap:0;align-items:stretch;justify-content:flex-start;max-height:calc(100dvh - 80px);overflow-y:auto;padding:8px 18px 12px}.top .nav a{display:flex;align-items:center;flex:none;min-height:44px;padding:9px 0;font-size:15px;line-height:1.3}.top .nav a+a{border-top:1px solid var(--line)}}

/* Customer copy and readable supporting text — reviewed 11 October 2026. */
body{font-size:18px;line-height:1.65}p,dd,.reading p,.reading li,.hero-copy p,.hero-summary,.hero-copy .lead,.journey-steps p,.style-row p,.service-row p,.call-band p,details p,.section-heading p,.guide-list p{font-size:18px;line-height:1.65}
:root{--muted:#303030}.reading p,.reading li,.quiet,figcaption{color:#303030}
.small,.caption,figcaption,.guide-meta,.breadcrumb,.header-location,.header-phone,.header-call,.intro-line,.intro-line span,.change-links a span,.style-row span,small,label,label span,.optional,.form-note,.form-status,.status,.quote-form label,.quote-form label span,.quote-form p.small,.enquiry-form label,.enquiry-form p,.enquiry-form label span,.footer nav a,.footer-v4 nav a,.footer-links a,.footer-bottom,.nav a,.nav-links a,.site-header nav a,.button,.btn,.text-link,.menu,.menu-toggle,.mobile-contact a,.mobile-actions a{font-size:16px;line-height:1.5}
.benefits,.hero-points,.benefits li,.hero-points li{font-size:18px;line-height:1.6;font-weight:600}.benefits li+li,.hero-points li+li{margin-top:10px}
.uhs-finance .uhs-finance-offer,.uhs-finance .uhs-finance-brand,.uhs-finance .uhs-finance-terms,.uhs-finance a{font-size:16px;line-height:1.6}.uhs-finance .uhs-finance-terms a{white-space:normal}
.prose,.reading,.legal,.hero-copy{overflow-wrap:anywhere}input,select,textarea{font-size:16px}h2+p,h3+p{margin-top:16px}
.copy-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.copy-gallery figure{margin:0;min-width:0}.copy-gallery img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;border-radius:16px}.copy-gallery figcaption{margin-top:12px}.copy-gallery-section .section-intro{max-width:700px;margin:0 auto 30px;text-align:center}.copy-gallery-section .section-intro p{margin:16px auto 0}.copy-gallery-section>.actions{justify-content:center}
.gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery figure:nth-child(3n+1){grid-column:auto}.gallery img,.gallery figure:nth-child(3n+1) img{height:auto;aspect-ratio:3/2}
@media(max-width:760px){.copy-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.copy-gallery figcaption{font-size:16px}.hero-visual,.hero-collection,.page-hero>figure{order:-1}.hero-copy p,.page-hero p{font-size:18px;line-height:1.65}.hero-photo,.hero-photo>img{height:240px}.hero .actions{flex-wrap:wrap}.gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.intro-line{flex-wrap:wrap}.mobile-actions{padding-inline:8px;gap:8px}.mobile-actions a{padding-inline:8px}.copy-gallery-section .section-intro{text-align:left}}
@media(max-width:420px){.copy-gallery{grid-template-columns:1fr}.gallery{grid-template-columns:1fr}.hero-copy h1{overflow-wrap:normal}.hero-copy{min-width:0}}

/* Final computed-type review: component selectors must not shrink customer copy. */
main p,main dd,footer p,.steps p,.planning p,.scope dd,.decision-rows p,.blog-card p,.article-list p{font-size:18px!important;line-height:1.65!important}
main figcaption,main small,main label,main label span,.enquiry-form small,nav a,button{font-size:16px!important;line-height:1.5!important}
main p.small,main .small,main p.form-note,main form p,main .uhs-finance .uhs-finance-offer,main .uhs-finance .uhs-finance-brand,main .uhs-finance .uhs-finance-terms{font-size:16px!important;line-height:1.6!important}
