:root{--navy:#0a3764;--cyan:#2dbce2;--ink:#183442;--cream:#f4f4ef;--line:#d9e0df;--muted:#67757b}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;color:var(--ink);background:white;font:15px 'DM Sans',Arial,sans-serif}h1,h2,h3,h4{font-family:'Manrope',Arial,sans-serif;font-weight:500;letter-spacing:-.045em;margin:0;line-height:1.16}h1{font-size:clamp(44px,5.5vw,80px)}h2{font-size:clamp(34px,3.8vw,56px)}h3{font-size:26px}h1 em,h2 em{font:italic 1em Georgia,serif}p{line-height:1.8}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}button,input,select,textarea{font:inherit}button,a{touch-action:manipulation}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--cyan);outline-offset:5px}.skip{position:absolute;top:-100px;z-index:100;background:white;padding:15px}.skip:focus{top:0}.topline{background:var(--navy);color:white;display:flex;justify-content:space-between;padding:11px 5%;font-size:10px;letter-spacing:.16em}.topline a{letter-spacing:.03em;font-size:12px}.header{height:102px;display:flex;align-items:center;justify-content:space-between;padding:0 5%;border-bottom:1px solid var(--line);gap:30px;background:white}.brand img{width:245px;height:70px;object-fit:contain}.nav{display:flex;align-items:center;gap:25px;font-size:12px}.nav a:hover{color:var(--navy);text-decoration:underline;text-underline-offset:7px}.service-nav{position:relative}.service-nav summary{cursor:pointer;list-style:none}.service-nav summary::-webkit-details-marker{display:none}.service-nav[open] .dropdown{display:grid}.dropdown{position:absolute;top:30px;left:-20px;width:245px;background:white;padding:22px;box-shadow:0 12px 30px #18344222;z-index:25;gap:18px}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:35px;background:var(--navy);color:white;border:0;padding:19px 25px;font-size:12px;font-weight:600;cursor:pointer}.button:hover{background:#164d81}.button.small{padding:15px 20px;white-space:nowrap}.button.white{background:white;color:var(--navy)}.text-link{display:inline-flex;border-bottom:1px solid currentColor;gap:25px;padding-bottom:8px;font-size:12px;font-weight:500}.eyebrow{display:block;font-size:10px;letter-spacing:.2em;line-height:1.6;margin-bottom:25px;font-weight:600}.section{padding:95px max(6%,calc((100vw - 1320px)/2))}.hero{height:740px;position:relative;overflow:hidden;background:var(--navy);color:white}.hero>img{position:absolute;right:0;top:0;width:62%;height:100%;object-fit:cover;object-position:center}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,var(--navy) 0%,var(--navy) 34%,#0a3764c0 46%,#0a376400 70%)}.hero-content{position:absolute;left:max(6%,calc((100vw - 1320px)/2));top:16%;max-width:650px}.hero h1{font-size:clamp(50px,5.5vw,80px)}.hero-content p{font-size:16px;color:#e2eaf0;max-width:460px;margin:28px 0 35px}.hero-actions{display:flex;align-items:center;gap:30px}.hero-bottom{position:absolute;bottom:0;left:0;right:0;padding:25px 6%;display:flex;justify-content:space-between;border-top:1px solid #ffffff40;font-size:9px;letter-spacing:.16em;background:#0a376433}.trust{display:grid;grid-template-columns:repeat(4,1fr);padding:27px 6%;background:var(--cream);gap:20px;font-size:12px;border-bottom:1px solid var(--line)}.trust span{border-right:1px solid var(--line)}.trust span:last-child{border:0}.intro{display:grid;grid-template-columns:1fr 1fr;gap:10%;padding-bottom:50px}.intro p{max-width:520px;margin-top:0;color:var(--muted)}.intro .lead{font-size:20px;color:var(--ink)}.service-grid{display:grid;grid-template-columns:1fr 1fr;gap:55px 35px;padding-top:20px}.service-card .photo{position:relative;overflow:hidden}.service-card img{width:100%;height:380px;object-fit:cover;transition:transform .5s}.service-card a:hover img{transform:scale(1.025)}.round-arrow{position:absolute;right:20px;bottom:20px;display:grid;place-items:center;width:44px;height:44px;background:white;border-radius:50%;color:var(--navy);font-size:23px}.service-title{display:flex;justify-content:space-between;align-items:center;margin-top:25px}.service-title span{font-size:10px;color:var(--muted)}.service-card p{font-size:14px;color:var(--muted);max-width:470px}.founder{display:grid;grid-template-columns:1fr 1fr;background:var(--cream)}.founder>img{width:100%;height:650px;object-fit:cover;object-position:center}.founder-copy{padding:80px 12%}.founder-copy p{color:var(--muted);font-size:14px}.signature{font:italic 24px Georgia,serif;color:var(--navy);margin:32px 0}.founder-name{font-size:11px!important}.heading-row{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:8%;align-items:end}.heading-row p{color:var(--muted);font-size:14px;margin:0}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;margin-top:55px}.steps article{border-top:1px solid var(--line);padding-top:24px}.steps span{font-size:10px;color:var(--navy)}.steps h3{font-size:21px;margin:35px 0 15px}.steps p{font-size:13px;color:var(--muted)}.transform{background:var(--navy);color:white}.before-after{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:45px}.before-after figure{margin:0;position:relative}.before-after img{height:450px;width:100%;object-fit:cover}.before-after figcaption{position:absolute;bottom:20px;left:20px;background:white;color:var(--navy);padding:10px 17px;font-size:10px;letter-spacing:.13em}.transform .project-note{color:#d9e4ed;font-size:13px}.journal{background:var(--cream)}.article-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;margin-top:45px}.article-card img{width:100%;height:260px;object-fit:cover}.article-card h3{font-size:23px;line-height:1.3;margin:17px 0}.article-card .article-meta{font-size:9px;letter-spacing:.1em;color:var(--muted)}.article-card p{font-size:13px;color:var(--muted)}.article-card .text-link{margin-top:7px}.portal{display:grid;grid-template-columns:1fr 1fr;gap:10%;background:#edf3f4}.portal p{color:var(--muted);max-width:530px}.portal-box{padding:35px;background:white;border-left:3px solid var(--cyan)}.portal-box h3{font-size:28px}.portal-box p{font-size:14px}.quote{display:grid;grid-template-columns:1fr 1fr;gap:10%;background:var(--cream)}.quote-copy p{color:var(--muted);max-width:450px;font-size:14px}.phone-large{display:block;font:30px 'Manrope',Arial;margin:25px 0;color:var(--navy)}.quote-card{background:white;padding:38px;border-top:3px solid var(--cyan)}.quote-card h3{font-size:27px;margin-bottom:20px}.quote-card p{font-size:12px;color:var(--muted)}.fields{display:grid;grid-template-columns:1fr 1fr;gap:18px}label{display:block;font-size:11px;margin-bottom:16px}input,select,textarea{width:100%;display:block;margin-top:8px;padding:13px 12px;border:1px solid var(--line);background:#fafbfb;border-radius:0;font-size:13px;color:var(--ink)}textarea{resize:vertical}.full{width:100%}.preview-note{border-top:1px solid var(--line);font-size:10px!important;padding-top:15px;line-height:1.6}.form-status{font-size:13px!important;color:var(--navy)!important}.footer{padding:65px 6%;display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:35px}.footer img{width:230px}.footer p{font-size:11px;color:var(--muted)}.footer h3{font:600 12px 'DM Sans',Arial;margin-bottom:20px;letter-spacing:0}.footer a{display:block;font-size:12px;margin-bottom:13px}.footnote{display:flex;justify-content:space-between;padding:22px 6%;border-top:1px solid var(--line);font-size:10px;color:var(--muted);gap:25px}.mobile-cta{display:none}.subhero{padding:75px 6% 85px;background:var(--cream)}.breadcrumb{font-size:11px;color:var(--muted);display:block;margin-bottom:35px}.subhero h1{max-width:1100px;font-size:clamp(40px,4.4vw,64px)}.subhero p{color:var(--muted);max-width:720px}.page-banner{width:100%;height:560px;object-fit:cover;object-position:center}.article-body{max-width:980px;width:100%;margin:0 auto;padding:70px clamp(24px,5vw,70px)}.article-body p,.article-body li{font-size:16px;line-height:1.9;color:#465b66}.article-body h2{font-size:33px;margin:50px 0 22px}.article-body h3,.article-body h4,.article-body h5,.article-body h6{font-size:25px;margin:35px 0 18px}.article-body a{text-decoration:underline;text-underline-offset:4px;color:var(--navy)}.article-body blockquote{border-left:3px solid var(--cyan);padding-left:25px;margin:35px 0;font-style:italic}.article-body ul,.article-body ol{padding-left:25px}.article-body img{margin:30px 0;width:100%;max-height:600px;object-fit:contain;background:var(--cream)}.page-gallery{display:grid;grid-template-columns:1fr 1fr;gap:25px;background:var(--cream)}.page-gallery img{width:100%;height:420px;object-fit:cover}.page-gallery figure{margin:0}.page-gallery figcaption{font-size:11px;line-height:1.6;margin-top:14px;color:var(--muted)}.founder-photos img{height:540px;object-fit:contain;background:#eef0ee}.blog-filter{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}.blog-filter button{border:1px solid var(--line);padding:11px 18px;background:white;font-size:12px;cursor:pointer}.blog-filter button.active{background:var(--navy);color:white}.search-input{max-width:500px;background:white}.search-label{margin-top:30px}.hidden{display:none!important}.no-results{padding:40px 0;color:var(--muted)}.library-count{font-size:12px;color:var(--muted);margin-top:20px}.all-pages{columns:2;list-style:none;padding:0}.all-pages li{margin-bottom:18px;font-size:14px}.all-pages a{border-bottom:1px solid var(--line);padding-bottom:4px}.preview-strip{background:#eaf5f8;color:var(--navy);padding:10px 6%;font-size:10px;display:flex;justify-content:space-between;gap:15px}.preview-strip a{text-decoration:underline}.article-date{margin:22px 0 0;font-size:11px;color:var(--muted)}
@media(max-width:1100px){.nav{gap:15px;font-size:11px}.brand img{width:205px}.header{gap:18px}.header .button{padding:14px;font-size:11px}.hero-content{max-width:560px}.hero h1{font-size:63px}.founder-copy{padding:65px 9%}.founder>img{height:620px}.service-card img{height:330px}.article-card img{height:220px}.section{padding:75px 6%}.steps{gap:22px}.footer{grid-template-columns:1fr 1fr}.before-after img{height:390px}}
@media(max-width:800px){.nav{display:none}.header{height:90px}.hero{height:780px}.hero>img{width:100%;height:51%;top:auto;bottom:0}.hero-shade{background:linear-gradient(180deg,var(--navy) 0%,var(--navy) 43%,#0a3764b0 55%,#0a376400 73%)}.hero-content{top:7%;left:6%;right:6%;max-width:none}.hero h1{font-size:49px}.hero-content p{font-size:13px;margin:20px 0 24px;max-width:480px}.hero-actions{gap:20px}.hero-actions .button{padding:17px 18px;font-size:11px}.hero-actions .text-link{font-size:11px}.hero-bottom{background:#0a3764a0;font-size:8px}.hero-bottom span:last-child{display:none}.intro,.quote,.portal,.heading-row{grid-template-columns:1fr;gap:30px}.section{padding:60px 6%}.intro{padding-bottom:25px}.service-grid{padding-top:15px}.founder{grid-template-columns:1fr}.founder>img{height:480px;object-position:center 35%}.founder-copy{padding:55px 6%}.steps{grid-template-columns:1fr 1fr}.article-grid{grid-template-columns:1fr 1fr}.quote-card{padding:28px}.page-banner{height:400px}.page-gallery img{height:320px}.founder-photos img{height:400px}.preview-strip{font-size:9px}.subhero{padding:50px 6% 60px}.article-body{padding:55px 6%}}
@media(max-width:550px){.topline{font-size:8px;letter-spacing:.07em}.topline a{font-size:10px}.brand img{width:185px;height:65px}.header{padding:0 5%;gap:12px}.header .button{padding:12px;font-size:10px;gap:12px}.hero h1{font-size:45px}.hero-actions{flex-wrap:wrap;gap:18px}.hero .eyebrow{font-size:8px;margin-bottom:20px}.trust{grid-template-columns:1fr 1fr;font-size:10px;gap:18px}.trust span:nth-child(2){border:0}.service-grid{grid-template-columns:1fr;gap:35px}.service-card img{height:330px}.service-title h3{font-size:28px}.founder>img{height:380px}.steps h3{font-size:20px;margin-top:25px}.steps p{font-size:12px}.before-after{grid-template-columns:1fr}.before-after img{height:420px}.article-grid{grid-template-columns:1fr;gap:35px}.article-card img{height:290px}.footer{gap:30px 20px;padding:50px 6%}.footer img{width:180px}.footer a{font-size:11px}.footnote{padding-bottom:90px;flex-direction:column;gap:12px}.mobile-cta{position:fixed;bottom:0;left:0;right:0;z-index:20;display:grid;grid-template-columns:1fr 1.5fr;box-shadow:0 -4px 20px #0001;background:white}.mobile-cta a{text-align:center;padding:18px 10px;font-size:12px;font-weight:600}.mobile-cta a:last-child{background:var(--navy);color:white}.fields{grid-template-columns:1fr;gap:0}.page-gallery{grid-template-columns:1fr}.page-gallery img{height:370px}.page-banner{height:310px}.all-pages{columns:1}.preview-strip span{max-width:230px}.phone-large{font-size:27px}.article-body h2{font-size:28px}.article-body p,.article-body li{font-size:15px}.subhero h1{font-size:38px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.header{position:sticky;top:0;z-index:30;box-shadow:0 2px 10px #18344208}.quick-enquiry{background:#edf3f4;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:10%}.quick-enquiry p{color:var(--muted);font-size:14px;max-width:500px}.quick-enquiry-options a{display:block;padding:23px 0;border-top:1px solid #cad7dd}.quick-enquiry-options span{display:block;font-size:9px;letter-spacing:.15em;color:var(--muted);margin-bottom:12px}.quick-enquiry-options strong{display:block;font-family:'Manrope',Arial;font-size:21px;font-weight:500;letter-spacing:-.035em;color:var(--navy)}.quick-enquiry-options small{display:block;font-size:12px;line-height:1.6;color:var(--muted);margin-top:8px}.quick-enquiry-options a:hover strong{text-decoration:underline;text-underline-offset:5px}@media(max-width:800px){.quick-enquiry{grid-template-columns:1fr;gap:25px}}

.header .brand img{width:220px;height:66px;object-fit:contain}.footer>div>img{background:#fff;padding:16px;border-radius:3px;width:235px;height:auto}.real-work>.page-gallery{padding:32px 0 0}.real-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.real-grid figure{margin:0;min-width:0}.real-grid img{width:100%;height:390px;object-fit:cover;cursor:zoom-in}.real-grid figcaption{font-size:12px;line-height:1.6;padding-top:12px;opacity:.7}.review-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.review-grid article{background:#f0f3f4;padding:30px;border-top:3px solid #31bce2}.review-grid article>span{font-size:11px;letter-spacing:.12em}.review-grid h3{font-size:24px}.review-grid p{line-height:1.8}.review-links{display:flex;gap:30px;flex-wrap:wrap;margin-top:30px}@media(max-width:900px){.real-grid,.review-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.header .brand img{width:165px}}@media(max-width:600px){.real-grid,.review-grid{grid-template-columns:1fr}.real-grid img{height:auto;max-height:600px;object-fit:contain}.header .brand img{width:145px;height:50px}}

/* Preserve original framing and faces rather than filling fixed crops. */
.real-grid{align-items:start}.real-grid img,.page-gallery img{height:auto;max-height:none;object-fit:contain}.real-grid figure a,.page-gallery figure a{display:block}.service-card img{height:420px;object-fit:contain;background:var(--cream)}.service-card a:hover img{transform:none}.page-banner{height:auto;max-height:760px;object-fit:contain;background:var(--cream)}.portrait-banner{height:auto;max-height:760px;width:100%;object-fit:contain;background:var(--cream)}.founder>img{height:auto;max-height:none;align-self:center;object-fit:contain}.founder-photos img{height:auto;max-height:none;object-fit:contain}@media(max-width:600px){.service-card img{height:auto;max-height:none}.real-grid img,.page-gallery img,.portrait-banner,.page-banner,.founder>img{height:auto;max-height:none}}

.area-service-links{display:flex;gap:22px;flex-wrap:wrap;margin:26px 0 50px}.local-faq details{border-bottom:1px solid var(--line);padding:22px 0}.local-faq summary{cursor:pointer;font-size:18px}.local-faq details p{max-width:800px;color:var(--muted)}

.mobile-menu{display:none}.mobile-menu-links{position:absolute;top:100%;left:0;right:0;background:white;padding:25px 6%;display:grid;gap:18px;box-shadow:0 10px 20px #0002}.mobile-menu summary{cursor:pointer;font-size:13px}@media(max-width:800px){.mobile-menu{display:block;margin-left:auto}.header{gap:12px}}
/* Final marketing pages */
.hero h1{font-size:clamp(39px,4.25vw,64px);max-width:650px}.hero-content{max-width:670px}.hero-content p{max-width:500px}.hero>img{width:64%;object-position:center}.hero .eyebrow{max-width:500px}.family-growth{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:7%;align-items:center;background:#edf3f4}.family-growth-photo img{width:100%;height:auto}.family-growth p{color:var(--muted);font-size:14px}.family-actions{display:flex;gap:24px;align-items:center;flex-wrap:wrap;margin-top:28px}.family-actions .text-link{font-size:12px}.family-growth .family-note{font-size:11px;line-height:1.7;margin-top:24px}.growth-timeline{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px}.growth-timeline article{border-top:2px solid var(--cyan);padding-top:25px}.growth-timeline span{font-size:16px;color:var(--navy)}.growth-timeline h2{font-size:29px;margin:20px 0}.business-choice{display:grid;grid-template-columns:1fr 1fr;gap:35px;margin-top:35px}.business-choice article{background:var(--cream);padding:35px}.business-choice img{width:300px;height:110px;object-fit:contain}.business-choice p{font-size:15px;color:var(--muted)}.area-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:45px}.area-grid h2{font-size:34px}.area-grid article{border-top:1px solid var(--line);padding-top:28px}.area-grid p{color:var(--muted)}.enquiry-note{font-size:11px!important;line-height:1.7}.enquiry-note a{text-decoration:underline}.email-alternative{background:none;border:0;color:var(--navy);padding:16px 0 4px;text-align:left;font-size:12px;cursor:pointer;text-decoration:underline;text-underline-offset:4px}.witney-feature{background:var(--navy);color:#fff}.witney-feature .heading-row p{color:#dce7ef}.witney-feature .project-summary{display:grid;grid-template-columns:1fr 1fr;gap:6%;margin:30px 0}.witney-feature .project-summary p{font-size:15px;color:#dce7ef}.witney-feature .page-gallery{background:none;padding:20px 0 0;grid-template-columns:repeat(3,minmax(0,1fr))}.witney-feature figcaption{color:#dce7ef}.witney-feature .button{background:#fff;color:var(--navy)}.witney-feature .project-note{font-size:12px;color:#dce7ef}.trust span{line-height:1.5}.article-body a.text-link{display:inline;text-decoration:underline;border:0;padding:0;font-size:inherit}.article-body a.text-link span{display:none}.business-choice .button{gap:20px}.growth-timeline p{color:var(--muted)}
@media(max-width:1100px){.header .nav{gap:16px}.hero h1{font-size:56px;max-width:570px}.hero-content{max-width:580px}.growth-timeline h2{font-size:25px}}
@media(max-width:800px){.family-growth,.growth-timeline,.business-choice,.area-grid{grid-template-columns:1fr}.family-growth-photo{max-width:550px}.hero h1{font-size:43px;max-width:500px}.hero-content{max-width:none}.hero>img{width:100%}.family-growth h2{font-size:37px}.witney-feature .page-gallery{grid-template-columns:1fr 1fr}.witney-feature .project-summary{grid-template-columns:1fr}.growth-timeline{gap:40px}}
@media(max-width:550px){.hero h1{font-size:37px}.hero{height:800px}.hero-content p{font-size:13px;max-width:340px}.witney-feature .page-gallery{grid-template-columns:1fr}.family-actions{align-items:flex-start;flex-direction:column}.family-growth h2{font-size:33px}.business-choice article{padding:26px}.header .button{padding:12px 9px}.header .brand img{width:135px}.mobile-menu summary{font-size:12px}.hero .eyebrow{font-size:8px}.hero-actions{gap:18px}.hero-content{top:6%}.trust{padding:25px 6%}}

/* Keep the completed home visible beside the introductory copy. */
.hero>img{object-position:center 55%}.service-card .photo img{object-position:center 55%}

/* Genuine project photography and earlier enquiry routes. */
.service-lead-photo{padding:0 6% 35px;max-width:1400px;margin:auto}.service-lead-photo img{width:100%;height:auto;max-height:720px;object-fit:contain;background:var(--cream)}
.service-contact{display:flex;align-items:center;gap:26px;flex-wrap:wrap;padding-top:28px;padding-bottom:28px;background:#edf3f4}.service-contact p{flex:1;min-width:220px;margin:0}.service-contact>a:last-child{font-size:14px;color:var(--navy)}
.site-story{display:grid;grid-template-columns:1fr 1.2fr;gap:7%;align-items:center;background:var(--cream)}.site-story figure{margin:0}.site-story img{width:100%;height:auto}.site-story figcaption{font-size:12px;color:var(--muted);margin-top:12px}.site-story p{color:var(--muted);max-width:480px}
.extension-feature{background:#edf3f4}.extension-feature .page-gallery{padding:35px 0 0;background:none}.extension-grid{grid-template-columns:1.35fr 1fr;align-items:start}
@media(max-width:800px){.site-story,.extension-grid{grid-template-columns:1fr}.service-contact{gap:18px}.service-lead-photo{padding:0 6% 25px}.section{padding-top:65px;padding-bottom:65px}.service-contact{padding-top:28px;padding-bottom:28px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
