:root{--red:#d71c28;--ink:#16191c;--grey:#60666c;--line:#dde0e3;--paper:#f4f5f6}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;color:var(--ink);font-family:'DM Sans',Arial,sans-serif;font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}a:focus-visible{outline:3px solid #ed1c24;outline-offset:5px}header{max-width:1320px;margin:auto;padding:26px 54px;display:flex;align-items:center;justify-content:space-between;gap:25px}.logo{width:215px;height:auto;display:block}nav{display:flex;gap:34px;align-items:center;font-size:14px;font-weight:600}.nav-call{padding-left:32px;border-left:1px solid var(--line)}.hero{background:var(--paper);display:grid;grid-template-columns:1.3fr 1fr;max-width:1440px;margin:0 auto}.hero-inner{padding:78px max(54px,calc((100vw - 1212px)/2)) 56px;padding-right:48px}.eyebrow{font-size:12px;letter-spacing:.14em;font-weight:700;margin:0 0 24px}.eyebrow span{display:inline-block;width:7px;height:7px;background:var(--red);margin-right:8px}h1,h2,h3{font-family:Manrope,Arial,sans-serif;line-height:1.15;letter-spacing:-.045em}h1{font-size:clamp(44px,5.3vw,76px);margin:0 0 26px;font-weight:800}h1 span{color:var(--red)}.intro{font-size:19px;max-width:440px;color:var(--grey);margin-bottom:32px}.actions{display:flex;align-items:center;gap:25px;flex-wrap:wrap}.button{display:inline-flex;background:var(--red);color:white;padding:15px 22px;font-size:14px;font-weight:700;border-radius:3px;transition:background .15s}.button:hover{background:#b31520}.text-link{font-size:14px;font-weight:700;border-bottom:1px solid currentColor;padding:5px 0}.hero-note{font-size:13px;letter-spacing:.03em;color:var(--grey);margin-top:42px}.hero-aside{background:var(--ink);color:white;padding:58px 46px 28px;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden;border-top:5px solid var(--red)}.small-label{font-size:12px;letter-spacing:.16em;color:#b8bcc0;font-weight:600}.statement{margin:auto 0;padding:30px 0}.statement h2{font-size:clamp(32px,3.3vw,48px);line-height:1.22;margin:22px 0}.statement p{color:#b8bcc0;font-size:16px}.aside-foot{border-top:1px solid #383d42;padding-top:22px;display:flex;justify-content:space-between;align-items:center;font-size:12px;letter-spacing:.12em;color:#b8bcc0}.aside-foot span{font-size:20px;font-weight:800;color:white;letter-spacing:-.03em}.section{max-width:1212px;margin:auto;padding:76px 0}h2{font-size:36px;margin:0 0 22px;font-weight:800}.section-heading{display:flex;justify-content:space-between;gap:30px;align-items:start;margin-bottom:38px}.section-heading h2{width:66.66%;margin-bottom:0}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:42px}.service-grid article{border-top:1px solid var(--line);padding-top:23px}.number{font-size:13px;font-weight:700;color:var(--red)}h3{font-size:20px;margin:18px 0 14px;letter-spacing:-.025em}.service-grid p,.approach-copy{color:var(--grey);font-size:16px;margin-bottom:0}.approach{border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:100px}.approach-copy{max-width:430px;margin-bottom:25px}.steps{list-style:none;padding:0;margin:0}.steps li{display:flex;gap:23px;padding:22px 0;border-bottom:1px solid var(--line)}.steps li:first-child{padding-top:0}.steps li>span{font-size:13px;color:var(--red);padding-top:4px;font-weight:700}.steps h3{margin:0 0 8px;font-size:19px}.steps p{color:var(--grey);font-size:15px;margin:0}.clients{border-top:1px solid var(--line);padding:48px 0}.clients h2{font-size:27px;margin-bottom:18px}.clients .eyebrow{margin-bottom:18px}.clients p:last-child{color:var(--grey);margin-bottom:0}.clients p span{padding:0 10px;color:#a1a5a9}.contact{max-width:none;background:var(--red);color:white;display:grid;grid-template-columns:1fr 1fr;gap:60px;padding:65px max(54px,calc((100vw - 1212px)/2))}.contact h2{font-size:42px}.contact p{font-size:16px}.contact .eyebrow{font-size:12px}.contact-details{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:14px}.phone{font-family:Manrope,sans-serif;font-size:38px;font-weight:800;letter-spacing:-.04em}.email{font-size:20px;border-bottom:1px solid #f48990;overflow-wrap:anywhere}.contact-details span{font-size:14px;color:#ffdde0;margin-top:12px}footer{max-width:1320px;margin:auto;display:flex;justify-content:space-between;padding:25px 54px;color:var(--grey);font-size:13px}footer p{margin:0}a:hover{opacity:.86}@media(min-width:1440px){.hero-inner{padding-left:114px}.contact{padding-left:calc((100vw - 1212px)/2)}}@media(max-width:1320px){.section{margin-left:54px;margin-right:54px}.contact{margin:0}}@media(max-width:800px){header{padding:20px 24px}.logo{width:170px}nav{gap:18px}nav a:not(.nav-call){display:none}.nav-call{padding-left:0;border:0;font-size:13px}.hero{grid-template-columns:1fr}.hero-inner{padding:48px 24px 34px}h1{font-size:52px}.intro{font-size:18px}.hero-aside{padding:27px 24px}.statement{padding:0;display:grid;grid-template-columns:1fr 1fr;gap:8px 25px}.statement .small-label{grid-column:1/-1}.statement h2{font-size:28px;margin:15px 0}.statement p{align-self:center;font-size:14px}.aside-foot{display:none}.section{padding:48px 0;margin:0 24px}.section-heading{display:block;margin-bottom:30px}.section-heading h2{width:auto}h2{font-size:30px}.service-grid{grid-template-columns:1fr;gap:25px}.service-grid p{max-width:550px}.service-grid h3{margin-top:10px}.approach{grid-template-columns:1fr;gap:35px}.clients{padding:35px 0}.clients p:last-child{line-height:2}.clients p span{padding:0 5px}.contact{margin:0;padding:45px 24px;grid-template-columns:1fr;gap:25px}.contact h2{font-size:36px}.phone{font-size:34px}.email{font-size:18px}footer{padding:22px 24px;font-size:12px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}@media(max-width:370px){.logo{width:140px}h1{font-size:43px}.statement{grid-template-columns:1fr}.phone{font-size:30px}}
.logo-tagline{display:block;font-size:12px;font-weight:700;letter-spacing:.01em;text-align:center;margin-top:2px;white-space:nowrap;color:var(--grey)}.contact-details{justify-content:flex-start;padding-top:35px}.enquiry-form{grid-column:1/-1;background:white;color:var(--ink);padding:32px;border-radius:4px;max-width:850px;width:100%;margin:0 auto}.enquiry-form h3{font-size:24px;margin:0 0 25px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px 24px}.enquiry-form label{display:block;font-size:14px;font-weight:600;margin-bottom:18px}.enquiry-form label span{font-weight:400;color:var(--grey)}.enquiry-form input,.enquiry-form textarea{display:block;width:100%;padding:12px 14px;font:inherit;font-size:16px;color:var(--ink);background:#fafafb;border:1px solid #b5bbc1;border-radius:3px;margin-top:7px;min-width:0}.enquiry-form textarea{resize:vertical}.enquiry-form input:focus,.enquiry-form textarea:focus{outline:2px solid var(--red);outline-offset:2px}.enquiry-form button{border:0;cursor:pointer;font:inherit;font-size:14px;font-weight:700}.contact .form-note{font-size:13px;color:var(--grey);margin:15px 0 0;line-height:1.6}.copy-button{background:var(--ink);color:white;border-radius:3px;padding:10px 16px;margin-top:12px}.contact #form-status{font-size:14px;color:var(--grey)}@media(max-width:800px){.logo-tagline{font-size:10px}.enquiry-form{padding:24px}.form-grid{grid-template-columns:1fr;gap:0}.contact-details{padding-top:0}}@media(max-width:370px){header{flex-wrap:wrap}.logo-tagline{font-size:10px}.enquiry-form{padding:20px}}

/* Keep the original light page independent of device colour scheme. */
:root{color-scheme:only light}html,body{background:#ffffff;color:var(--ink)}header,footer,.services,.approach,.clients{background:#ffffff}.enquiry-form{background:#ffffff;color:var(--ink)}
.programmes{display:grid;grid-template-columns:1.15fr 1fr;gap:80px;border-top:1px solid var(--line);background:#fff;align-items:start}.programme-intro{color:var(--grey);margin:0 0 27px;max-width:510px}.programme-option{border-top:1px solid var(--line);padding:18px 0}.programme-option h3{margin:0 0 9px;font-size:19px}.programme-option p{color:var(--grey);font-size:15px;margin:0}.programme-copy>.text-link{display:inline-block;margin-top:12px}.survey-preview{margin:0;padding:22px;background:var(--paper);border:1px solid var(--line);border-radius:4px}.survey-preview img{display:block;width:100%;height:auto;box-shadow:0 8px 22px #16191c15}.survey-preview figcaption{display:flex;justify-content:space-between;gap:15px;font-size:13px;color:var(--grey);padding-top:17px}.survey-preview figcaption a{font-weight:600;text-decoration:underline}@media(max-width:800px){.programmes{grid-template-columns:1fr;gap:32px}.survey-preview{max-width:470px;width:100%;margin:0 auto;padding:16px}}
.hero{grid-template-columns:1.45fr 1fr}.hero h1{font-size:clamp(38px,4vw,57px);line-height:1.16}.starting-points{display:grid;grid-template-columns:1fr 1fr;gap:60px;padding-bottom:0}.start-option{border-top:3px solid var(--red);padding-top:25px}.start-option h2{font-size:27px}.start-option .eyebrow{margin-bottom:18px}.start-option p:not(.eyebrow){color:var(--grey);font-size:16px}.handover{border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:0 70px}.handover ul{list-style:none;margin:0;padding:0}.handover li{padding:12px 0;border-bottom:1px solid var(--line);font-size:16px}.handover li:before{content:'•';color:var(--red);margin-right:12px}.scope-note{grid-column:1/-1;font-size:14px;color:var(--grey);margin:10px 0 0}.about{border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:70px}.about p:not(.eyebrow){color:var(--grey);margin-top:0}.faq details{border-bottom:1px solid var(--line);padding:18px 0}.faq summary{cursor:pointer;font-weight:600;font-size:17px}.faq details p{color:var(--grey);max-width:780px}.mobile-call{display:none}@media(max-width:800px){.hero{grid-template-columns:1fr}.hero h1{font-size:40px}.starting-points{grid-template-columns:1fr;gap:35px;padding-bottom:0}.handover,.about{grid-template-columns:1fr;gap:22px}.scope-note{margin-top:10px}.mobile-call{display:block;position:fixed;bottom:0;left:0;width:100%;background:var(--red);color:white;text-align:center;padding:14px 20px calc(14px + env(safe-area-inset-bottom));font-weight:700;font-size:16px;z-index:20;box-shadow:0 -3px 14px #0002}body{padding-bottom:calc(54px + env(safe-area-inset-bottom))}footer{padding-bottom:24px}.contact p{max-width:540px}}@media(max-width:370px){.hero h1{font-size:35px}}
.check-banner{display:grid;grid-template-columns:1.2fr 1fr;gap:70px;align-items:center;border-bottom:1px solid var(--line)}.check-banner h2{margin-bottom:16px}.check-banner p:not(.eyebrow){max-width:550px;color:var(--grey)}.small-copy{font-size:14px;line-height:1.6;color:var(--grey)}.check-banner .small-copy{max-width:370px}.check-main{max-width:920px;margin:auto;padding:40px 32px 60px}.check-title h1{font-size:clamp(38px,6vw,60px)}.check-title h1 span{color:var(--red)}.check-title>p:last-child{font-size:20px;color:var(--grey)}.check-guidance{background:var(--paper);padding:24px 28px;border-left:4px solid var(--red);margin:28px 0 38px}.check-guidance h2{font-size:23px;margin-bottom:12px}.check-guidance p{margin:10px 0}.check-page label{display:block;font-size:14px;font-weight:600}.check-page input:not([type=radio]),.check-page textarea,.check-page select{display:block;margin-top:7px;width:100%;min-width:0;padding:12px;font:inherit;font-size:16px;line-height:1.5;border:1px solid #a7adb3;background:white;color:var(--ink);border-radius:3px}.check-page textarea{resize:vertical}.check-page input:focus-visible,.check-page textarea:focus-visible,.check-page select:focus-visible,.check-page button:focus-visible{outline:3px solid var(--red);outline-offset:3px}.door-context{margin:0 0 36px}.door-context h2{font-size:25px}.check-question{border:0;border-top:1px solid var(--line);margin:0 0 28px;padding:18px 0 0;min-width:0}.check-question legend{font-family:Manrope,Arial,sans-serif;font-size:20px;font-weight:800;padding:0 12px 0 0;line-height:1.4}.check-question legend span{color:var(--red);font-size:14px;margin-right:8px}.check-question p{margin:4px 0 16px;color:var(--grey)}.answers{display:flex;flex-wrap:wrap;gap:10px}.check-page .answer{display:flex;gap:9px;align-items:center;border:1px solid #adb3b8;border-radius:3px;padding:11px 16px;cursor:pointer;font-size:16px}.answer input{accent-color:var(--red);width:18px;height:18px;margin:0}.answer:has(input:checked){background:#fff1f2;border-color:var(--red)}.check-page button{cursor:pointer;font:inherit;font-weight:700;border:0;font-size:14px}.check-progress{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:25px}.check-progress span{font-size:14px;color:var(--grey)}.check-result{padding:32px;background:var(--paper);border-top:5px solid #158044;margin-top:38px;scroll-margin-top:24px}.check-result[data-level=review],.check-result[data-level=attention]{border-color:#a45f00}.check-result[data-level=urgent]{border-color:var(--red)}.check-result h2{font-size:30px}.result-limit{font-weight:600;font-size:14px}.result-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}.secondary-button{padding:12px 16px;background:white;color:var(--ink);border:1px solid #a7adb3!important;border-radius:3px}.text-button{background:none;text-decoration:underline;padding:12px 0;color:var(--ink);margin-top:20px}.check-next{border-top:1px solid var(--line);padding-top:35px;margin-top:45px}.check-next h2{font-size:28px}.check-next .small-copy a{text-decoration:underline}.check-page [hidden]{display:none!important}#check-enquiry{border-top:1px solid var(--line);padding-top:25px;margin-top:25px}#check-enquiry .form-grid{margin-bottom:25px}#check-email-fallback{margin-top:25px}.check-page footer{border-top:1px solid var(--line)}
@media(max-width:800px){.check-banner{grid-template-columns:1fr;gap:20px}.check-main{padding:25px 24px 45px}.check-guidance{padding:20px}.check-progress{align-items:flex-start;flex-direction:column}.check-result{padding:24px 20px}.check-page{padding-bottom:0}.check-page nav a:not(.nav-call){display:block}.check-page header{flex-wrap:wrap}.check-page .form-grid{gap:18px}.check-result h2{font-size:26px}.check-page .answer{padding:10px 12px}}
@media print{.check-page header,.check-page footer,.check-guidance,.check-title,#door-check,.result-actions,#check-enquiry,#check-email-fallback,.text-button,.check-next{display:none!important}.check-main{padding:0}.check-result{background:white;border:1px solid #555;margin:0}.check-result .small-copy{display:none}}
/* Shared navigation and short, focused pages. */
.site-header{max-width:1440px;padding:24px 40px;flex-wrap:wrap}.site-nav{gap:23px}.site-nav a[aria-current=page]{color:var(--red);text-decoration:underline;text-underline-offset:7px}.site-nav .nav-call{padding-left:22px}.menu-toggle{display:none;background:var(--ink);color:white;border:0;border-radius:3px;padding:11px 16px;font:inherit;font-size:14px;font-weight:700;cursor:pointer}.skip-link{position:absolute;left:16px;top:-100px;background:white;padding:12px;z-index:100;border:2px solid var(--red)}.skip-link:focus{top:12px}.site-footer>div{display:flex;gap:22px}.home-services .text-link{display:inline-block;margin-top:24px}.starting-points.section{padding-top:0;padding-bottom:65px}.repair-feature{background:var(--ink);color:white;padding:45px 48px;border-left:5px solid var(--red);max-width:1212px}.repair-feature h2{font-size:clamp(28px,3.2vw,42px)}.repair-feature h2 span{color:#f3b6bb}.repair-feature p:not(.eyebrow){color:#d0d3d6;max-width:680px;margin-bottom:22px}.client-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;list-style:none;margin:28px 0 0;padding:0}.client-grid li{background:var(--paper);padding:18px 20px;border-left:2px solid var(--red);font-weight:600}.page-heading.section{padding-bottom:35px}.page-heading h1{font-size:clamp(38px,4.7vw,62px)}.page-heading .intro{max-width:620px;margin-bottom:0}.page-jumps.section{padding:15px 0 32px;display:flex;flex-wrap:wrap;gap:12px}.page-jumps a{padding:10px 15px;border:1px solid var(--line);font-size:14px;font-weight:600;border-radius:3px}.page-jumps a:hover{border-color:var(--red);color:var(--red)}.detail-section{display:grid;grid-template-columns:1.15fr 1fr;gap:70px;align-items:start;border-top:1px solid var(--line)}.detail-section p:not(.eyebrow){color:var(--grey)}.feature-list{padding:0;list-style:none;margin:22px 0}.feature-list li{padding:12px 0;border-bottom:1px solid var(--line)}.feature-list li:before{content:'•';color:var(--red);margin-right:12px}.info-detail{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:18px 0;margin-bottom:25px}.info-detail summary{cursor:pointer;font-weight:600}.info-detail p{margin-bottom:0}.repair-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.repair-grid article{background:var(--paper);padding:22px}.repair-grid h3{margin:0 0 12px}.repair-grid p{margin:0}.programme-cards.section{display:grid;grid-template-columns:1fr 1fr;gap:26px;padding-top:10px}.programme-cards article{background:var(--paper);padding:30px;border-top:3px solid var(--red)}.programme-cards h2{font-size:25px;margin:14px 0}.programme-cards p{margin:0;color:var(--grey)}.register-section{border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:70px}.register-section .feature-list{margin:0}.register-section p:not(.eyebrow){color:var(--grey)}.page-cta{background:var(--paper);padding:38px 42px;display:flex;justify-content:space-between;align-items:center;gap:30px;margin-bottom:60px}.page-cta h2{font-size:28px;margin-bottom:12px}.page-cta p{color:var(--grey);max-width:560px;margin:0}.page-cta .actions{flex-shrink:0;align-items:flex-start;flex-direction:column;gap:12px}.check-page .site-nav a:not(.nav-call){display:block}.check-page .site-header{flex-wrap:wrap}button:focus-visible,summary:focus-visible{outline:3px solid var(--red);outline-offset:4px}
@media(max-width:1050px){.site-header{padding:20px 24px;gap:20px}.menu-toggle{display:block}.site-nav,.check-page .site-nav{display:none;width:100%;border-top:1px solid var(--line);padding-top:14px;flex-direction:column;align-items:stretch;gap:0}.site-nav.is-open{display:flex}.site-nav a:not(.nav-call),.check-page .site-nav a:not(.nav-call){display:block}.site-nav a{padding:12px 0;font-size:16px}.site-nav .nav-call{border-left:0;padding-left:0;font-size:16px}.logo{width:185px}.logo-tagline{font-size:11px}}
@media(max-width:800px){.starting-points.section{padding-bottom:40px}.repair-feature{padding:32px 25px}.client-grid{grid-template-columns:1fr 1fr;gap:10px}.client-grid li{padding:14px;font-size:14px}.detail-section,.register-section{grid-template-columns:1fr;gap:30px}.repair-grid{gap:12px}.repair-grid article{padding:18px}.repair-grid h3{font-size:18px}.programme-cards.section{grid-template-columns:1fr;gap:18px}.programme-cards article{padding:25px}.page-cta{margin:0 24px 40px;padding:26px;flex-direction:column;align-items:flex-start}.page-cta .actions{align-items:flex-start}.page-heading.section{padding-bottom:25px}.site-footer{flex-direction:column;gap:14px}.site-footer>div{flex-wrap:wrap;gap:12px 22px}.check-page .logo-tagline{font-size:11px}}
@media(max-width:370px){.repair-grid,.client-grid{grid-template-columns:1fr}.site-header{gap:12px}.site-header .logo{width:160px}.site-header .logo-tagline{font-size:10px}}
.qualification-strip.section{display:flex;align-items:center;gap:34px;padding-top:28px;padding-bottom:28px;border-bottom:1px solid var(--line)}.qualification-strip img{display:block;flex:0 0 auto;width:180px;max-width:100%;height:auto;object-fit:contain}.qualification-strip h2{font-size:25px;margin:0 0 14px}.qualification-strip .eyebrow{margin-bottom:12px;font-size:12px}.qualification-strip .text-link{font-size:14px}@media(max-width:800px){.qualification-strip.section{gap:20px;align-items:center}.qualification-strip img{width:125px}.qualification-strip h2{font-size:20px}.qualification-strip .eyebrow{font-size:12px;letter-spacing:.07em}}@media(max-width:480px){.qualification-strip.section{align-items:flex-start;flex-direction:column;gap:18px}.qualification-strip img{width:170px}.qualification-strip h2{font-size:23px}}
.repair-feature{display:grid;grid-template-columns:minmax(0,1fr) 180px;gap:36px;align-items:start}.repair-feature .repair-copy{min-width:0}.repair-feature .approach-badge{display:block;width:180px;height:auto;max-width:100%;justify-self:end;border-radius:5px}.repair-feature h2{font-size:clamp(28px,3vw,40px)}@media(max-width:800px){.repair-feature{grid-template-columns:minmax(0,1fr) 140px;gap:24px}.repair-feature .approach-badge{width:140px}.repair-feature h2{font-size:28px}}@media(max-width:600px){.repair-feature{grid-template-columns:minmax(0,1fr) 110px;gap:20px}.repair-feature .approach-badge{width:110px}.repair-feature .repair-copy h2,.repair-feature .repair-copy p:not(.eyebrow),.repair-feature .repair-copy .text-link{grid-column:1/-1}.repair-feature .repair-copy{display:contents}.repair-feature .repair-copy .eyebrow{grid-column:1;grid-row:1;align-self:start;margin:0}.repair-feature .approach-badge{grid-column:2;grid-row:1}.repair-feature .repair-copy h2{margin:0}.repair-feature .repair-copy p:not(.eyebrow){margin:0}.repair-feature .repair-copy .text-link{justify-self:start}}
.breadcrumbs.section{padding-top:20px;padding-bottom:0}.breadcrumbs{display:flex;flex-wrap:wrap;gap:10px;font-size:14px;color:var(--grey);align-items:center}.breadcrumbs a{text-decoration:underline;text-underline-offset:3px}.check-main>.breadcrumbs{margin-bottom:28px}.page-heading h1{overflow-wrap:break-word}

#inspections.detail-section{display:block}#inspections>div:first-child{max-width:780px}.report-examples{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px;margin-top:38px;align-items:start}.report-examples .survey-preview{max-width:none;width:100%;margin:0}.report-examples figcaption{flex-wrap:wrap;font-size:14px}.report-examples img{width:100%;height:auto}@media(max-width:650px){.report-examples{grid-template-columns:1fr;gap:26px}.report-examples .survey-preview{max-width:480px;margin:auto}}

/* Homepage service heading */
.services .service-heading{display:block;text-align:center}
.services .service-heading h2{width:auto;margin:0}
