:root{--ivory:#f5f2eb;--ink:#252622;--oak:#a58b6c;--stone:#e6e1d7;--muted:#616457}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--ivory);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:15px;line-height:1.75}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}img{max-width:100%;display:block}figure{margin:0}h1,h2,h3,p{margin:0}p+p{margin-top:20px}h1,h2,h3,.brand{font-family:Georgia,'Times New Roman',serif;font-weight:400}h1{font-size:clamp(46px,4.9vw,76px);line-height:1.08;letter-spacing:-2.7px}h2{font-size:clamp(36px,3.8vw,56px);line-height:1.12;letter-spacing:-1.7px}h3{font-size:25px;line-height:1.25}em{font-weight:400;color:#7b644b}header{max-width:1440px;margin:auto;padding:27px 5%;display:flex;align-items:center;justify-content:space-between;gap:30px;border-bottom:1px solid #d8d4ca}.brand{font-size:27px;line-height:1.2;white-space:nowrap}.brand span{font:9px Arial,sans-serif;letter-spacing:2.1px;display:block;margin-top:8px}nav{display:flex;gap:25px;font-size:12px}.header-call{font-size:13px;border-bottom:1px solid var(--oak);padding-bottom:6px}.header-call span{margin-left:20px}.menu{display:none}.wrap{max-width:1200px;margin:auto;padding:100px 6%}.eyebrow{font-size:10px;font-weight:600;letter-spacing:2.1px;line-height:1.6;margin-bottom:27px}.hero{max-width:1440px;margin:auto;padding:65px 5% 0;display:grid;grid-template-columns:1.05fr 1fr;gap:0 6%;align-items:center}.hero-copy{padding:18px 0 38px}.lead{max-width:405px;margin-top:28px;color:var(--muted);font-size:15px;line-height:1.9}.actions{display:flex;gap:25px;align-items:center;margin-top:30px}.button{display:inline-flex;gap:35px;align-items:center;background:var(--ink);color:var(--ivory);padding:15px 20px;font-size:12px}.button:hover{background:#554b3e}.text-link{font-size:12px;border-bottom:1px solid var(--oak);padding-bottom:5px}.hero-note{display:flex;gap:16px;align-items:center;margin-top:48px}.hero-note>span{font-family:Georgia,serif;font-size:40px;line-height:1}.hero-note p{font-size:11px;line-height:1.6;border-left:1px solid #bbb3a5;padding-left:16px;color:var(--muted)}.hero-image{position:relative;padding:0 0 28px 20px}.hero-image:before{content:'';position:absolute;inset:27px 20px 0 0;background:var(--stone);z-index:-1}.hero-image img{width:100%;height:505px;object-fit:cover;object-position:center}.hero-image figcaption{display:flex;justify-content:space-between;font-size:8px;letter-spacing:1.5px;padding-top:14px;gap:15px}.hero-image figcaption span{letter-spacing:0;color:var(--muted)}.hero-bottom{grid-column:1/-1;display:flex;justify-content:space-between;gap:20px;border-top:1px solid #d8d4ca;margin-top:40px;padding:23px 0;font-size:9px;letter-spacing:1.5px}.hero-bottom a{letter-spacing:0}.intro{display:grid;grid-template-columns:1fr 1.7fr;gap:8%;border-bottom:1px solid #d8d4ca}.intro .eyebrow{max-width:180px;padding-top:10px}.intro h2{margin-bottom:30px}.intro p:not(.eyebrow){max-width:560px;color:var(--muted)}.intro .text-link{display:inline-block;margin-top:25px}.section-head{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:48px}.section-head>p{color:var(--muted);font-size:12px;max-width:310px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0 40px}.service-grid article{padding:26px 0 30px;border-top:1px solid #ccc6b9}.number{display:block;color:#7b644b;font-size:10px;letter-spacing:1px;margin-bottom:22px}.service-grid h3{margin-bottom:15px}.service-grid p{font-size:13px;color:var(--muted)}.work{background:var(--stone)}.gallery{display:grid;grid-template-columns:1fr 1fr;gap:8%;max-width:920px;margin:auto}.gallery figure:nth-child(2){margin-top:65px}.project{display:block;width:100%;padding:0;border:0;background:#d5cebf;position:relative;overflow:hidden}.project img{width:100%;max-width:400px;margin:auto;aspect-ratio:400/329;object-fit:cover;transition:transform .4s}.project:hover img{transform:scale(1.025)}.project>span{position:absolute;bottom:12px;right:12px;background:var(--ivory);padding:5px 12px;font-size:10px}.gallery figcaption{font-size:12px;margin-top:17px}.gallery figcaption>span{font-size:10px;color:#76644e;margin-right:20px}.about{display:grid;grid-template-columns:1fr 1.4fr;gap:12%;align-items:center}.about-mark{aspect-ratio:1;background:#e9e4da;display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px solid #d3ccbf;outline:1px solid #d3ccbf;outline-offset:-15px}.about-mark>span{font:100px Georgia,serif;letter-spacing:-15px;padding-right:15px;color:#806e56}.about-mark small{font-size:8px;letter-spacing:2px;text-align:center;line-height:2;margin-top:20px}.about h2{margin-bottom:25px}.about p:not(.eyebrow){color:var(--muted)}.about .large-copy{font:23px/1.5 Georgia,serif;color:var(--ink)}.signature{font:italic 26px Georgia,serif!important;margin-top:25px}.process{border-top:1px solid #d8d4ca}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin-top:50px}.steps article{border-top:1px solid #c7bfaf;padding-top:20px}.steps span{color:#826e55;font:24px Georgia,serif}.steps h3{font-size:23px;margin:20px 0 15px}.steps p{font-size:13px;color:var(--muted)}.area{padding-top:0;text-align:center}.area h2{font-size:38px}.area>p:last-child{max-width:510px;margin:25px auto 0;color:var(--muted);font-size:13px}.contact{background:var(--ink);color:var(--ivory)}.contact .eyebrow{color:#c6b393}.contact h2{font-size:clamp(55px,7vw,98px)}.contact em{color:#c5ad8c}.contact-row{display:grid;grid-template-columns:1fr 1fr;gap:15%;margin-top:38px;align-items:end}.contact-row p{font-size:13px;color:#cecfc6;max-width:365px}.contact-row a{font:clamp(24px,2.9vw,38px) Georgia,serif;border-bottom:1px solid #777568;padding-bottom:15px;white-space:nowrap}.contact-row small{display:block;font:9px Arial,sans-serif;letter-spacing:2px;margin-bottom:20px}.contact-row a span{float:right}footer.wrap{padding-top:50px;padding-bottom:25px;display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:35px}footer p{font-size:12px;color:var(--muted)}footer nav{flex-wrap:wrap;gap:10px 25px}.copyright{grid-column:1/-1;border-top:1px solid #d8d4ca;padding-top:23px;margin-top:20px;font-size:9px;color:var(--muted);display:flex;gap:5px}.copyright>span:last-child{margin-left:auto}dialog{border:0;background:var(--ivory);padding:50px 24px 20px;max-width:95vw;color:var(--ink)}dialog::backdrop{background:#171911e8}dialog img{max-height:75vh;width:400px;object-fit:contain}dialog p{font-size:11px;margin-top:14px}.close{position:absolute;right:15px;top:8px;background:none;border:0;padding:8px}.skip{position:fixed;left:10px;top:-100px;background:white;padding:10px;z-index:20}.skip:focus{top:10px}:focus-visible{outline:2px solid #8c6943;outline-offset:5px}a:hover{color:#876c4c}.button:hover,.contact a:hover{color:#e6d9c3}
@media(min-width:1400px){.hero{padding-top:80px}.hero-image img{height:560px}}
@media(max-width:1000px){header{gap:20px}nav{gap:17px}.header-call{display:none}.hero{gap:5%}h1{font-size:51px}.hero-image img{height:470px}.actions{gap:15px;flex-wrap:wrap}.service-grid{gap:0 25px}.about{gap:8%}.contact-row{gap:8%}}
@media(max-width:700px){html{scroll-padding-top:85px}header{position:relative;padding:22px 6%;flex-wrap:wrap}.brand{font-size:25px}.brand span{font-size:8px;letter-spacing:1.8px}.menu{display:block;border:0;background:none;font-size:12px;padding:10px 0 10px 10px}.menu span{margin-left:10px}header nav{display:none;width:100%;flex-direction:column;gap:0;padding-top:10px}header nav.open{display:flex}header nav a{padding:10px 0;border-top:1px solid #d8d4ca}.hero{display:block;padding:36px 6% 0}.hero-copy{padding:0 0 30px}.eyebrow{font-size:9px;letter-spacing:1.7px;margin-bottom:21px}h1{font-size:48px;letter-spacing:-2px;line-height:1.1}h2{font-size:38px}.lead{font-size:14px;margin-top:23px;line-height:1.8}.actions{margin-top:25px;gap:22px}.button{padding:14px 17px;font-size:11px;gap:20px}.text-link{font-size:11px}.hero-note{margin-top:28px}.hero-note>span{font-size:34px}.hero-note p{font-size:10px}.hero-image{padding:0 0 22px 12px;margin-top:5px}.hero-image img{height:310px;object-position:center 55%}.hero-image:before{inset:18px 14px 0 0}.hero-image figcaption{font-size:7px;letter-spacing:1px}.hero-bottom{margin-top:25px;flex-wrap:wrap;gap:12px;font-size:8px}.hero-bottom a{display:none}.wrap{padding:65px 6%}.intro{display:block}.intro .eyebrow{max-width:none;padding:0}.intro h2{margin-bottom:25px}.intro p:not(.eyebrow){font-size:14px}.section-head{display:block;margin-bottom:30px}.section-head>p{margin-top:24px;font-size:12px}.service-grid{grid-template-columns:1fr 1fr;gap:0 22px}.service-grid h3{font-size:23px}.service-grid p{font-size:12px}.number{margin-bottom:17px}.service-grid article{padding:23px 0 27px}.gallery{grid-template-columns:1fr;gap:35px;max-width:400px}.gallery figure:nth-child(2){margin-top:0}.about{display:flex;flex-direction:column-reverse;gap:35px;align-items:stretch}.about-mark{aspect-ratio:auto;padding:40px}.about-mark>span{font-size:70px}.about-mark small{margin-top:12px}.about p:not(.eyebrow){font-size:14px}.about .large-copy{font-size:23px!important}.steps{grid-template-columns:1fr;gap:28px;margin-top:35px}.steps h3{margin:12px 0;font-size:24px}.steps p{max-width:340px}.area{padding-top:0;text-align:left}.area h2{font-size:34px}.area>p:last-child{margin-left:0}.contact-row{display:block;margin-top:28px}.contact-row a{display:block;margin-top:40px;font-size:30px}.contact h2{font-size:61px}.contact-row small{margin-bottom:12px}footer.wrap{grid-template-columns:1fr 1fr;padding-top:40px;gap:25px}footer .brand{grid-column:1/-1}footer nav{font-size:11px}.copyright{flex-wrap:wrap}.copyright>span:last-child{width:100%;margin-left:0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Bespoke joinery illustration */
.hero-image.joinery-art{padding:0 0 20px}.hero-image.joinery-art:before{display:none}.hero-image.joinery-art img{height:auto;aspect-ratio:620/650;object-fit:contain}.joinery-art figcaption{font-size:8px;letter-spacing:1px;line-height:1.7}.joinery-art figcaption span{white-space:nowrap}@media(max-width:700px){.hero-image.joinery-art{margin-top:10px}.joinery-art figcaption{font-size:7px;gap:12px}.hero-image.joinery-art img{height:auto}.hero h1{font-size:48px}}

/* The illustrated service catalogue */
.craft-services{padding-bottom:75px}.craft-group{border-top:1px solid #c7bfaf;padding-top:28px;margin-top:45px}.craft-group-head{display:grid;grid-template-columns:1fr 1.7fr 1.3fr;gap:25px;align-items:start;margin-bottom:32px}.craft-group-head .eyebrow{font-size:9px;margin:4px 0}.craft-group-head h3{font-size:25px}.craft-group-head>p:last-child{font-size:12px;color:var(--muted);margin:0}.craft-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#d9d2c4;border:1px solid #d9d2c4}.craft-item{background:var(--ivory);min-height:168px;position:relative;padding:25px 22px 23px;display:flex;flex-direction:column;gap:17px;transition:background .2s,color .2s}.craft-item svg{width:61px;height:61px;color:#826b4d;transition:transform .25s}.craft-item>span:not(.craft-arrow){font:17px/1.35 Georgia,serif;max-width:185px}.craft-arrow{position:absolute;right:17px;top:17px;font-size:13px;color:#a39175;opacity:0;transition:opacity .2s}.craft-item:hover,.craft-item:focus-visible{background:#e9e2d5;color:var(--ink)}.craft-item:hover svg{transform:translateY(-3px)}.craft-item:hover .craft-arrow,.craft-item:focus-visible .craft-arrow{opacity:1}.service-invite{display:flex;justify-content:space-between;gap:25px;align-items:center;margin-top:35px}.service-invite h3{font-size:26px}.service-invite p{margin-top:7px;font-size:12px;color:var(--muted)}.service-invite .button{white-space:nowrap;gap:20px}@media(max-width:900px){.craft-group-head{grid-template-columns:1fr 2fr}.craft-group-head>p:last-child{grid-column:2}.craft-grid{grid-template-columns:repeat(3,1fr)}.service-invite{align-items:start;flex-direction:column}}@media(max-width:700px){.craft-services{padding-bottom:55px}.craft-group{margin-top:32px;padding-top:24px}.craft-group-head{display:block;margin-bottom:24px}.craft-group-head .eyebrow{margin-bottom:14px}.craft-group-head h3{font-size:27px}.craft-group-head>p:last-child{margin-top:14px;max-width:300px}.craft-grid{grid-template-columns:1fr 1fr}.craft-item{min-height:157px;padding:23px 17px 20px;gap:14px}.craft-item svg{width:56px;height:56px}.craft-item>span:not(.craft-arrow){font-size:17px}.craft-arrow{opacity:1;right:12px;top:12px;font-size:11px}.service-invite{margin-top:28px}.service-invite .button{font-size:11px;gap:17px}}

/* A typographic first impression */
.hero{display:flex;flex-direction:column;align-items:stretch;padding-top:75px}.hero-copy{max-width:none;padding:0}.hero h1{font-size:clamp(48px,6.3vw,91px);line-height:1.11;letter-spacing:-3.6px;max-width:1100px}.hero .eyebrow{margin-bottom:30px}.hero h1:after{content:'';display:block;width:68px;height:2px;background:var(--oak);margin-top:32px}.hero .lead{max-width:490px;margin-top:26px}.hero .hero-note{display:none}.hero .actions{margin-top:28px}.hero-crafts{display:flex;gap:0;align-self:flex-end;margin-top:-140px;margin-bottom:30px}.hero-crafts a{width:132px;padding:0 25px;text-align:center;display:flex;align-items:center;flex-direction:column;gap:13px;border-left:1px solid #d8d0c0}.hero-crafts svg{width:64px;height:64px;color:#826b4d;transition:transform .2s}.hero-crafts span{font-size:10px;white-space:nowrap;color:var(--muted)}.hero-crafts a:hover svg{transform:translateY(-4px)}.hero-bottom{margin-top:65px}.hero-bottom span:first-child{font-size:9px}@media(max-width:1050px){.hero-crafts{margin-top:35px;margin-bottom:0;align-self:flex-start}.hero-crafts a:first-child{padding-left:0;border-left:0;width:108px}.hero-bottom{margin-top:35px}}@media(max-width:700px){.hero{display:flex;padding-top:42px}.hero h1{font-size:clamp(39px,10.5vw,64px);letter-spacing:-1.8px;line-height:1.16}.hero .eyebrow{font-size:8px;letter-spacing:1.5px;margin-bottom:25px}.hero h1:after{margin-top:27px;width:50px}.hero .lead{font-size:14px;margin-top:23px;max-width:330px}.hero .actions{gap:22px;margin-top:26px}.hero-crafts{margin-top:37px;width:100%;align-self:stretch;justify-content:flex-start}.hero-crafts a,.hero-crafts a:first-child{width:33.333%;padding:0 12px}.hero-crafts a:first-child{padding-left:0}.hero-crafts svg{width:53px;height:53px}.hero-crafts span{font-size:9px}.hero-bottom{margin-top:33px;width:100%;font-size:7px}.hero-bottom span:first-child{font-size:8px}}

/* Objects of the craft, drawn at architectural scale */
.hero{position:relative;padding-top:62px}.hero h1{font-size:clamp(45px,5.6vw,79px);max-width:1000px}.hero .lead{max-width:500px}.craft-panorama{margin:30px -2% -12px 12%;max-width:1080px}.craft-panorama img{width:100%;height:auto}.hero-bottom{margin-top:12px}.hero .actions{position:relative;z-index:1}.craft-panorama{border-bottom:1px solid #d5c8b4}@media(min-width:1100px){.craft-panorama{margin-top:-110px;margin-left:38%;margin-right:-3%;padding-top:10px}.hero .lead{max-width:380px}.hero .actions{max-width:430px;flex-wrap:wrap}.hero-bottom{margin-top:26px}}@media(max-width:700px){.hero{padding-top:39px}.hero h1{font-size:clamp(39px,10.5vw,64px)}.craft-panorama{margin:28px -4% 0;width:108%;max-width:none}.craft-panorama img{width:100%}.hero-bottom{margin-top:20px}.hero .lead{max-width:330px}}

/* An illustrated catalogue of Trevor's work */
.craft-grid{grid-template-columns:repeat(3,1fr);background:transparent;border:0;gap:32px 28px}.craft-item{padding:0 0 17px;min-height:0;background:transparent;border-bottom:1px solid #cfc5b3;gap:18px}.service-drawing{background:#eee8dc;width:100%;overflow:hidden;transition:background .25s}.service-drawing img{display:block;width:100%;height:auto;transition:transform .3s}.craft-item>span:not(.craft-arrow){font-size:22px;max-width:none;padding-right:20px}.craft-arrow{top:auto;bottom:20px;right:0;opacity:1;color:#806744}.craft-item:hover,.craft-item:focus-visible{background:transparent}.craft-item:hover .service-drawing{background:#e8dfce}.craft-item:hover img{transform:translateY(-4px)}.craft-group{margin-top:60px}.craft-group-head{margin-bottom:32px}.craft-group-head h3{font-size:28px}@media(max-width:900px){.craft-grid{grid-template-columns:1fr 1fr;gap:28px 22px}}@media(max-width:700px){.craft-grid{gap:28px 16px}.craft-item{padding:0 0 14px;gap:14px}.craft-item>span:not(.craft-arrow){font-size:19px;padding-right:14px;line-height:1.3}.craft-arrow{bottom:17px;right:0}.craft-group{margin-top:40px}.service-drawing{margin:0}.craft-group-head h3{font-size:28px}}@media(max-width:400px){.craft-grid{grid-template-columns:1fr;gap:30px}.service-drawing{max-height:255px}.service-drawing img{max-height:255px;object-fit:contain}.craft-item>span:not(.craft-arrow){font-size:24px}}
