@charset "UTF-8";
:root{--paper:#f6f6f2;--ink:#202c30;--red:#bd3427;--line:#d2d5cd;--muted:#566165;--gutter:clamp(22px,5vw,88px)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:120px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.65}button,input,select,textarea{font:inherit}a{color:inherit}a,button{-webkit-tap-highlight-color:transparent}button{cursor:pointer}img{max-width:100%;height:auto;display:block}p{margin:0 0 1.2em}h1,h2,h3{line-height:1.02;letter-spacing:-.055em;margin:0;font-weight:600}h1{font-size:clamp(62px,7.9vw,118px)}h2{font-size:clamp(36px,4.1vw,64px)}h1 span{color:var(--red)}.wrap{max-width:1536px;margin-inline:auto;padding-inline:var(--gutter)}.site-header{min-height:114px;display:flex;align-items:center;gap:34px;border-bottom:1px solid var(--line);position:relative;z-index:5}.brand{flex-shrink:0;display:block;width:178px}.brand img{mix-blend-mode:multiply}.site-header nav{display:flex;gap:25px;align-items:center;margin:auto}.site-header nav a{font-size:13px;font-weight:600;text-decoration:none;padding-block:12px;position:relative}.site-header nav a[aria-current]:after{content:"";height:2px;position:absolute;bottom:3px;left:0;right:0;background:var(--red)}.header-phone{text-decoration:none;white-space:nowrap;font-size:17px;font-weight:600}.header-phone small{display:block;color:var(--muted);font-size:10px;letter-spacing:.1em;text-transform:uppercase;font-weight:400}.header-phone span{color:var(--red);padding-left:12px}.menu-toggle{display:none}.eyebrow{font-size:10px;font-weight:700;letter-spacing:.15em;text-transform:uppercase;margin-bottom:26px;line-height:1.6}.dot{display:inline-block;width:7px;height:7px;background:var(--red);border-radius:50%;margin-right:8px}.hero{display:grid;grid-template-columns:1fr 1fr;min-height:690px;padding-top:60px;padding-bottom:42px;gap:24px;align-items:center}.hero h1{margin-bottom:28px}.hero-intro{max-width:365px;font-size:17px;line-height:1.65;color:var(--muted)}.actions{display:flex;gap:28px;align-items:center;margin-top:30px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:34px;padding:15px 22px;color:#fff;background:var(--red);border:1px solid var(--red);font-size:12px;font-weight:600;text-decoration:none;transition:background .2s}.button:hover{background:#982c22}.button span{font-size:21px;line-height:1}.text-link{text-decoration:none;font-size:12px;font-weight:600;padding-bottom:6px;border-bottom:1px solid currentColor;display:inline-block}.text-link span{margin-left:22px}.text-link:hover{color:var(--red)}.hero-note{display:flex;gap:20px;align-items:center;margin-top:50px;font-size:10px;color:var(--muted);line-height:1.6}.note-line{width:42px;height:1px;background:var(--line)}.hero-art{height:555px;position:relative;margin-left:15px}.drawing-grid{position:absolute;inset:5px 8px 4px 4px;background-image:linear-gradient(#b9c2bc38 1px,transparent 1px),linear-gradient(90deg,#b9c2bc38 1px,transparent 1px);background-size:35px 35px;border:1px solid #d2d5cd77}.hero figure{margin:0;position:absolute}.hero-window{width:82%;top:65px;right:0;z-index:1}.hero-window .photo{box-shadow:0 12px 40px #202c3010}.hero-curve{width:31%;bottom:0;left:0;z-index:2;outline:9px solid var(--paper)}.hero figcaption{font-size:9px;color:var(--muted);margin-top:9px}.photo{padding:0;border:0;background:#e3e4de;display:block;width:100%;position:relative;overflow:hidden;text-align:left}.photo img{width:100%;transition:transform .45s}.photo:hover img{transform:scale(1.025)}.expand{position:absolute;right:10px;bottom:10px;background:var(--paper);width:28px;height:28px;display:grid;place-items:center;font-size:18px;color:var(--ink)}.hero-window .expand,.hero-curve .expand{opacity:0;transition:opacity .2s}.hero-window .photo:hover .expand,.hero-curve .photo:hover .expand,.photo:focus-visible .expand{opacity:1}.spec-label{position:absolute;top:19px;left:23px;font-size:9px;letter-spacing:.12em}.vertical-label{position:absolute;right:-20px;bottom:30px;writing-mode:vertical-rl;font-size:8px;letter-spacing:.16em}.arch-drawing{position:absolute;width:119px;height:155px;bottom:13px;right:34px;stroke:var(--red);stroke-width:.8}.arch-drawing .measure{stroke-width:.5}.service-index{display:grid;grid-template-columns:1fr 1.2fr 1.1fr 1.2fr;border-top:1px solid var(--line);border-bottom:1px solid var(--line);min-height:100px;align-items:center;gap:28px}.service-index>span{font-size:12px;color:var(--muted)}.service-index a{display:flex;align-items:center;gap:16px;color:var(--red);font-size:10px;text-decoration:none;border-left:1px solid var(--line);padding-left:24px}.service-index strong{font-size:13px;font-weight:500;color:var(--ink)}.service-index a>span{margin-left:auto;font-size:18px}.work-section{padding-top:105px;padding-bottom:100px}.work-heading{display:flex;gap:80px;align-items:end;justify-content:space-between;margin-bottom:55px}.work-heading>p{max-width:285px;font-size:14px;color:var(--muted);margin-bottom:3px}.featured-work{display:grid;grid-template-columns:1.35fr .78fr .9fr;gap:38px;align-items:start;margin-bottom:45px}.featured-work figure,.work-grid figure{margin:0}.featured-work figure:nth-child(2){margin-top:95px}.featured-work figure:nth-child(3){margin-top:205px}.featured-work figure:nth-child(2) .photo{max-width:240px}.featured-work figcaption,.work-grid figcaption{border-top:1px solid var(--line);padding-top:14px;margin-top:15px;display:flex;flex-direction:column;line-height:1.6;font-size:12px}.featured-work small,.work-grid small{font-size:9px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-top:4px}.workshop-section{background:#e9ece6;border-block:1px solid var(--line)}.workshop-layout{display:grid;grid-template-columns:1fr 1.05fr;gap:110px;padding-block:82px}.workshop-layout h2{margin-bottom:30px}.workshop-layout>div>p:not(.eyebrow){font-size:15px;max-width:480px;color:var(--muted)}.workshop-layout .text-link{margin-top:15px}.workshop-index{border:1px solid #c2c8bf;position:relative;padding:30px;align-self:stretch;min-height:320px;display:flex;flex-direction:column;justify-content:space-between}.workshop-index>span{font-size:70px;letter-spacing:-.08em;color:var(--red);line-height:1}.workshop-index>p{font-size:10px!important;letter-spacing:.1em;margin-top:20px}.workshop-index svg{stroke:var(--muted);stroke-width:.8;width:240px;align-self:flex-end;margin-top:-30px}.contact-band{display:grid;grid-template-columns:1fr 1fr;gap:110px;padding-block:100px}.contact-band>div:last-child{padding-top:45px}.contact-band p:not(.eyebrow){font-size:15px;color:var(--muted);max-width:420px}.phone-big{font-size:clamp(27px,3.1vw,45px);line-height:1.25;letter-spacing:-.045em;text-decoration:none;display:block;font-weight:500;margin-block:30px}.phone-big span{color:var(--red);margin-left:20px}footer{background:var(--ink);color:#eef0e9;padding-block:55px 20px}.footer-main{display:grid;grid-template-columns:1fr 1fr auto;gap:40px;padding-bottom:45px}.footer-main p,.footer-main>div{font-size:12px;color:#b9c2bf}.footer-main a{text-decoration:none}.footer-name{font-size:23px;letter-spacing:-.03em;line-height:1.2}.footer-name span{display:block;font-size:8px;letter-spacing:.18em;margin-top:8px}.footer-bottom{display:flex;gap:35px;flex-wrap:wrap;border-top:1px solid #ffffff25;padding-top:20px;font-size:9px;color:#c4cbc7}.footer-bottom>span{margin-right:auto}.footer-bottom a{text-decoration:none}.page-lead{padding-block:75px 65px}.page-lead h1{font-size:clamp(55px,6.8vw,96px);max-width:1120px}.lead-bottom{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-top:35px}.lead-bottom>p{max-width:480px;font-size:17px;color:var(--muted);margin:0}.service-feature{display:grid;grid-template-columns:1fr .9fr;gap:90px;align-items:center;padding-block:30px 90px}.service-feature figure{margin:0}.service-feature figcaption{font-size:10px;padding-top:12px;color:var(--muted)}.service-feature h2{margin-bottom:26px}.service-feature p{font-size:14px;color:var(--muted)}.plain-list{list-style:none;padding:10px 0 0;margin:0;font-size:12px}.plain-list li{padding:10px 0;border-top:1px solid var(--line)}.plain-list li:before{content:'+';color:var(--red);margin-right:18px}.split-copy{display:grid;grid-template-columns:1fr 1.05fr;gap:110px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding-block:65px}.split-copy h2{margin-bottom:25px}.split-copy p:not(.eyebrow){color:var(--muted);font-size:14px;max-width:500px}.split-copy .fine-print{font-size:11px!important}.section-heading{max-width:650px;margin-bottom:45px}.section-heading .intro{margin-top:25px;font-size:14px;color:var(--muted)}.work-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:45px 35px;align-items:start}.work-grid .photo{height:330px;background:#e6e8e1;display:grid;place-items:center;padding:20px}.work-grid .photo img{width:auto;max-width:100%;max-height:290px;object-fit:contain}.contact-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px;padding-block:20px 100px}.contact-details .phone-big{font-size:37px}.contact-details>p:not(.eyebrow){font-size:14px}.address{border-top:1px solid var(--line);margin-top:45px;padding-top:35px}.address h2{font-size:28px;letter-spacing:-.03em;margin-bottom:22px}.address p{font-size:14px;color:var(--muted)}.enquiry-panel{padding:35px;background:#e9ece6}.enquiry-panel h2{font-size:32px;letter-spacing:-.04em;margin-bottom:20px}.preview-notice{font-size:11px;color:var(--muted);border-left:2px solid var(--red);padding-left:12px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}label{display:block;font-size:11px;font-weight:600;margin-bottom:18px}input,select,textarea{display:block;width:100%;background:var(--paper);border:1px solid #bfc5bc;border-radius:0;color:var(--ink);padding:10px;margin-top:6px;font-size:14px}textarea{resize:vertical}#form-status{font-size:12px;margin-top:20px}.prose{max-width:720px;margin-top:40px;font-size:16px;color:var(--muted)}.lightbox{border:0;background:var(--paper);color:var(--ink);padding:20px 25px;width:min(860px,94vw);max-height:94vh;overflow:auto}.lightbox::backdrop{background:#101c20ed}.lightbox-top,.lightbox-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:12px}.lightbox-top p{margin:0}.lightbox button{border:0;background:transparent;color:var(--ink);padding:12px;font-size:12px}.lightbox>img{object-fit:contain;width:auto;max-height:72vh;margin:15px auto}.lightbox button:hover{color:var(--red)}.lightbox-bottom{border-top:1px solid var(--line)}body.modal-open{overflow:hidden}.skip-link{position:fixed;top:-80px;left:10px;background:var(--ink);color:white;padding:12px;z-index:100}.skip-link:focus{top:5px}:focus-visible{outline:3px solid #145f8a;outline-offset:5px}a:hover{transition:color .15s}.photo:focus-visible{outline-offset:5px;z-index:3}
@media(min-width:1450px){.hero{min-height:760px}.hero-art{height:605px}.hero-window{top:65px}.hero-curve{width:30%}}
@media(max-width:1100px){.site-header{gap:25px}.site-header nav{gap:17px}.site-header nav a{font-size:11px}.brand{width:150px}.header-phone{font-size:14px}.hero{min-height:640px;gap:10px}.hero-art{height:490px}.hero-window{top:85px;width:86%}.hero-curve{width:34%;bottom:0}.hero-copy h1{font-size:85px}.hero-note{margin-top:32px}.hero-intro{font-size:15px;max-width:290px}.actions{gap:20px}.button{padding:14px 17px;gap:20px}.service-index{gap:15px}.service-index a{padding-left:15px;gap:12px}.service-index strong{font-size:11px}.workshop-layout,.contact-band,.split-copy{gap:60px}.service-feature{gap:50px}.contact-layout{gap:45px}.contact-details .phone-big{font-size:28px}.featured-work{gap:25px}.featured-work figure:nth-child(3){margin-top:160px}}
@media(max-width:800px){html{scroll-padding-top:90px}.site-header{min-height:88px;gap:20px}.brand{width:145px}.menu-toggle{display:flex;gap:16px;align-items:center;padding:10px 0;background:none;border:0;font-size:12px;margin-left:auto}.menu-toggle span{font-size:20px}.header-phone{font-size:13px}.header-phone small{font-size:8px}.header-phone span{display:none}.site-header nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--paper);padding:18px var(--gutter) 26px;border-bottom:1px solid var(--line)}.site-header nav.is-open{display:flex;flex-direction:column;align-items:stretch;gap:0}.site-header nav a{font-size:16px;padding:15px 0}.site-header nav a[aria-current]:after{right:auto;width:25px}.hero{padding-top:45px;grid-template-columns:1fr;gap:25px;padding-bottom:35px}.hero-copy h1{font-size:clamp(68px,13vw,104px)}.hero .eyebrow{margin-bottom:22px}.hero-intro{max-width:410px;font-size:16px}.hero-note{display:none}.hero-art{height:530px;max-width:570px;width:100%;margin:10px auto 0}.hero-window{width:78%;top:55px;right:8px}.hero-curve{width:30%;left:5px}.vertical-label{right:-8px}.service-index{grid-template-columns:1fr;gap:0;min-height:0;padding-block:20px}.service-index>span{margin-bottom:10px}.service-index a{border-left:0;border-top:1px solid var(--line);padding:17px 0}.service-index strong{font-size:15px}.work-section{padding-block:65px}.work-heading{gap:35px;align-items:start;margin-bottom:35px}.work-heading>p{max-width:240px;font-size:12px}.featured-work{gap:20px;grid-template-columns:1.15fr .85fr}.featured-work figure:nth-child(2){margin-top:60px}.featured-work figure:nth-child(3){margin-top:0;max-width:65%;grid-column:1 / -1}.workshop-layout{padding-block:60px;gap:45px;grid-template-columns:.8fr 1.2fr}.workshop-index{padding:20px;min-height:250px}.workshop-index>span{font-size:50px}.workshop-index svg{width:100%;margin-top:0}.workshop-layout>div>p:not(.eyebrow){font-size:13px}.contact-band{gap:45px;padding-block:65px}.contact-band>div:last-child{padding-top:28px}.contact-band p:not(.eyebrow){font-size:13px}.footer-main{grid-template-columns:1fr 1fr}.footer-main>div{grid-column:2}.footer-bottom{gap:15px 25px}.footer-bottom>span{width:100%}.page-lead{padding-block:50px 40px}.page-lead h1{font-size:clamp(48px,8vw,75px)}.lead-bottom{align-items:start;gap:25px}.lead-bottom>p{font-size:15px}.service-feature{gap:35px;grid-template-columns:1fr 1fr;padding-bottom:55px}.service-feature p{font-size:13px}.service-feature h2{font-size:35px}.split-copy{gap:35px;padding-block:45px}.work-grid{grid-template-columns:1fr 1fr;gap:35px 22px}.work-grid .photo{height:290px}.work-grid .photo img{max-height:250px}.contact-layout{grid-template-columns:1fr;gap:50px}.contact-details{display:grid;grid-template-columns:1fr 1fr;gap:0 35px}.contact-details .eyebrow,.contact-details>.phone-big,.contact-details>p{grid-column:1}.contact-details .address{grid-column:2;grid-row:1 / 5;margin:0;border:0;padding:0}}
@media(max-width:500px){.header-phone{display:none}.hero{padding-top:35px}.hero-copy h1{font-size:76px}.hero-intro{max-width:300px;font-size:15px}.actions{margin-top:25px;gap:24px}.hero-art{height:425px;margin-top:5px}.hero-window{width:82%;top:55px}.hero-curve{width:35%;bottom:0;outline-width:6px}.spec-label{font-size:8px;left:15px}.arch-drawing{width:90px;height:120px;right:20px;bottom:0}.hero figcaption{font-size:8px}.hero-curve figcaption{font-size:8px}.vertical-label{font-size:7px;right:-13px;bottom:135px}.work-heading{display:block}.work-heading>p{max-width:295px;margin-top:25px;font-size:13px}.featured-work{grid-template-columns:1fr 1fr;gap:28px 18px}.featured-work figure:first-child{grid-column:1 / -1}.featured-work figure:nth-child(2){margin-top:0}.featured-work figure:nth-child(3){grid-column:auto;max-width:100%;margin-top:75px}.featured-work figcaption{font-size:11px}.featured-work small{font-size:8px}.workshop-layout{grid-template-columns:1fr;gap:35px}.workshop-index{min-height:190px;display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.workshop-index svg{grid-column:2;grid-row:1 / 3}.workshop-index>p{font-size:8px!important;align-self:end;margin-bottom:0}.workshop-layout h2{font-size:40px}.contact-band{grid-template-columns:1fr;gap:5px}.contact-band>div:last-child{padding-top:22px}.contact-band h2{font-size:48px}.contact-band .phone-big{font-size:34px}.footer-main{grid-template-columns:1fr;gap:25px}.footer-main>div{grid-column:auto}.footer-main p{margin:0}.footer-bottom{font-size:9px}.page-lead h1{font-size:clamp(43px,10.4vw,53px)}.lead-bottom{display:block;margin-top:25px}.lead-bottom .button{margin-top:25px}.service-feature{grid-template-columns:1fr;gap:32px;padding-top:0}.service-feature h2{font-size:40px}.service-feature figure{max-width:100%}.split-copy{grid-template-columns:1fr;gap:12px}.split-copy h2{font-size:36px}.split-copy .eyebrow{margin-bottom:10px}.work-grid{grid-template-columns:1fr;gap:35px}.work-grid .photo{height:auto;padding:25px;min-height:260px}.work-grid .photo img{max-height:360px}.contact-details{display:block}.contact-details .address{border-top:1px solid var(--line);padding-top:30px;margin-top:30px}.enquiry-panel{padding:25px 20px}.form-row{grid-template-columns:1fr;gap:0}.contact-details .phone-big{font-size:35px}.lightbox{padding:12px}.lightbox-top{font-size:11px;gap:8px}.lightbox button{font-size:11px;padding:10px}.lightbox>img{max-height:65vh}.prose{font-size:14px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
.hero-window figcaption{text-align:right}.header-call{display:none}@media(max-width:500px){.header-call{display:flex;align-items:center;min-height:44px;font-size:12px;text-decoration:none;color:var(--red);font-weight:600}.hero-copy h1{font-size:clamp(58px,17vw,76px)}}
.header-call{white-space:nowrap;min-width:44px;justify-content:center}@media(max-width:360px){.site-header{gap:12px}.brand{width:125px}}
