:root{--navy:#162f4d;--ink:#211d19;--paper:#f0e7d2;--cream:#faf5e8;--brass:#ae8a4e;--blue:#2c6478;--water:#69c8d7;--line:rgba(33,29,25,.22);--pad:clamp(22px,4vw,68px)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Work Sans",sans-serif;line-height:1.65;overflow-x:hidden}body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:20;box-shadow:inset 0 0 80px rgba(40,24,10,.08)}.grain{position:fixed;inset:0;z-index:19;opacity:.12;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.35'/%3E%3C/svg%3E")}.masthead{height:92px;padding:0 var(--pad);display:grid;grid-template-columns:210px 1fr auto;align-items:center;gap:30px;background:var(--cream);border-bottom:1px solid var(--line);position:relative;z-index:10}.brand img{width:180px;display:block}.masthead nav{display:flex;justify-content:center;gap:clamp(16px,3vw,42px)}a{color:inherit}.masthead nav a{text-decoration:none;text-transform:uppercase;font-size:12px;font-weight:700;letter-spacing:.12em}.phone{text-decoration:none;font-family:"Cormorant Garamond";font-size:23px;font-weight:700}.phone span{display:block;font:600 10px "Work Sans";text-transform:uppercase;letter-spacing:.16em;color:var(--brass)}h1,h2{font-family:"Cormorant Garamond",serif;letter-spacing:.01em;line-height:1.04;margin:0;font-weight:700}h1{font-size:clamp(54px,7.7vw,124px);max-width:1000px}h2{font-size:clamp(43px,5.2vw,76px)}.kicker{text-transform:uppercase;letter-spacing:.16em;font-size:11px;font-weight:700;color:var(--brass);margin:0 0 14px}.hero{min-height:calc(100svh - 92px);padding:72px var(--pad) 44px;display:flex;align-items:center;position:relative;isolation:isolate;border-bottom:1px solid var(--line)}.hero:before{content:"";position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(240,231,210,.98) 0 58%,rgba(240,231,210,.4) 80%)}.hero:after{content:"";position:absolute;inset:20px;border:1px solid rgba(33,29,25,.18);z-index:-1}.hero-copy{width:min(69%,990px);position:relative;z-index:2}.hero h1 em{font-weight:600;color:var(--navy)}.intro{font-size:clamp(16px,1.5vw,21px);max-width:650px}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.button{border:1px solid var(--navy);padding:13px 20px;text-decoration:none;text-transform:uppercase;letter-spacing:.1em;font-size:11px;font-weight:700;background:rgba(250,245,232,.7)}.button.filled{background:var(--navy);color:var(--cream)}.craftsman{position:absolute;right:4vw;bottom:0;width:min(35vw,480px)}.craftsman img{width:100%;display:block;filter:contrast(1.08) sepia(.08);transform-origin:bottom}.seal{position:absolute;left:-20px;top:12%;z-index:2;background:var(--navy);color:var(--cream);width:110px;height:110px;border-radius:50%;display:grid;place-content:center;text-align:center;text-transform:uppercase;font-size:9px;letter-spacing:.18em;outline:1px solid var(--brass);outline-offset:6px}.seal b{font:700 28px "Cormorant Garamond";letter-spacing:.02em}.hero-note{position:absolute;left:var(--pad);bottom:16px;font-size:11px;text-transform:uppercase;letter-spacing:.14em}.ledger{padding:64px var(--pad);display:grid;grid-template-columns:minmax(260px,.7fr) 1.3fr;gap:clamp(30px,7vw,110px);background:var(--cream)}.section-title{position:sticky;top:30px;align-self:start}.section-title>p:last-child{max-width:430px}.ledger-grid{border-top:1px solid var(--ink)}.trade{display:grid;grid-template-columns:58px 1fr auto;align-items:center;gap:17px;padding:17px 4px;border-bottom:1px solid var(--line);text-decoration:none;transition:.25s}.trade:hover{padding-left:12px;background:var(--paper)}.trade img{width:54px;height:54px;object-fit:contain;filter:sepia(1) saturate(.5) contrast(1.3)}.trade span{display:grid;grid-template-columns:42px 1fr;align-items:baseline}.trade b{font:600 15px "Cormorant Garamond";color:var(--brass)}.trade strong{font:700 25px "Cormorant Garamond"}.trade small{grid-column:2;color:#635a50}.trade i{font-style:normal;font-size:11px;text-transform:uppercase;letter-spacing:.1em}.heritage{min-height:540px;background:var(--navy);color:var(--cream);padding:60px var(--pad);display:grid;grid-template-columns:.8fr 1fr;gap:8vw;align-items:center;position:relative;overflow:hidden}.pipework{position:absolute;inset:0;width:100%;height:100%;opacity:.46;pointer-events:none}.pipe-shadow,.pipe-water{fill:none;stroke-linejoin:round}.pipe-shadow{stroke:#0a1d30;stroke-width:34}.pipe-water{stroke:var(--water);stroke-width:9;stroke-dasharray:1;stroke-dashoffset:var(--pipe,1);filter:drop-shadow(0 0 7px var(--water));transition:stroke-dashoffset .1s linear}.year{font:700 clamp(100px,18vw,260px)/.8 "Cormorant Garamond";color:transparent;-webkit-text-stroke:1px var(--brass);position:relative}.heritage-copy{position:relative;background:rgba(22,47,77,.84);padding:22px}.heritage-copy p{max-width:640px}.heritage-copy ul{padding-left:20px}.text-link{display:inline-block;margin-top:12px;color:inherit;text-transform:uppercase;letter-spacing:.1em;font-size:11px;font-weight:700}.team{padding:64px var(--pad);display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(30px,7vw,100px);align-items:center}.photo-card{margin:0;padding:14px;border:1px solid var(--line);background:var(--cream);transform:rotate(-1deg)}.photo-card img{width:100%;display:block;filter:saturate(.75) contrast(1.08)}.photo-card figcaption{text-align:center;padding:9px 0 0;font:600 18px "Cormorant Garamond"}.team-copy p{max-width:600px}.principles{display:grid;grid-template-columns:repeat(3,1fr);border-block:1px solid var(--line);margin:24px 0}.principles span{padding:15px 8px;font:700 18px "Cormorant Garamond"}.principles b{display:block;font:600 10px "Work Sans";letter-spacing:.15em;color:var(--brass)}.field-note{height:490px;position:relative;overflow:hidden;background:var(--ink)}.field-note img{width:100%;height:100%;object-fit:cover;opacity:.72;filter:sepia(.2)}.field-note:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(22,47,77,.85),transparent 70%)}blockquote{position:absolute;z-index:2;left:var(--pad);top:50%;transform:translateY(-50%);margin:0;color:#fff;font:700 clamp(38px,5vw,72px)/1.05 "Cormorant Garamond";max-width:760px}blockquote small{display:block;font:600 11px "Work Sans";letter-spacing:.14em;text-transform:uppercase;margin-top:18px}.contact{background:var(--cream);padding:60px var(--pad)}.contact h2{max-width:900px}.contact-grid{display:grid;grid-template-columns:repeat(3,1fr);margin-top:32px;border-top:1px solid var(--ink)}.contact-grid>*{padding:22px 16px 0 0;text-decoration:none}.contact-grid span{display:block;text-transform:uppercase;font-size:10px;letter-spacing:.16em;color:var(--brass);font-weight:700}.contact-grid strong{font:700 clamp(20px,2vw,30px)/1.2 "Cormorant Garamond"}.chapter-nav{position:fixed;right:16px;top:50%;transform:translateY(-50%);z-index:15;display:grid;gap:8px}.chapter-nav a{width:7px;height:7px;border:1px solid var(--navy);border-radius:50%;font-size:0;background:var(--paper)}.chapter-nav a.active{background:var(--brass);transform:scale(1.55)}.top-button{position:fixed;right:18px;bottom:18px;width:42px;height:42px;border-radius:50%;border:1px solid var(--brass);background:var(--navy);color:#fff;z-index:15;cursor:pointer;opacity:0;transform:translateY(10px);transition:.2s}.top-button.show{opacity:1;transform:none}footer{background:#0b1c2d;color:var(--cream);padding:26px var(--pad);display:flex;align-items:center;gap:30px}footer img{width:150px;filter:brightness(0) invert(1)}footer p{flex:1;font-size:11px;text-transform:uppercase;letter-spacing:.12em}footer a{font-weight:700}.reveal{opacity:0;transform:translateY(22px);transition:.7s cubic-bezier(.2,.8,.2,1)}.reveal.seen{opacity:1;transform:none}@media(max-width:820px){.masthead{height:78px;grid-template-columns:150px 1fr}.brand img{width:140px}.masthead nav{display:none}.phone{text-align:right;font-size:18px}.hero{min-height:720px;padding-top:45px;align-items:flex-start}.hero-copy{width:100%}.hero h1{font-size:clamp(49px,14vw,76px)}.craftsman{width:290px;right:-34px}.seal{width:78px;height:78px;left:-2px}.intro{max-width:82%}.ledger{grid-template-columns:1fr;padding-block:48px}.section-title{position:relative;top:auto}.heritage{grid-template-columns:1fr;padding-block:48px}.year{font-size:34vw}.team{grid-template-columns:1fr;padding-block:48px}.field-note{height:420px}.contact{padding-block:48px}.contact-grid{grid-template-columns:1fr}.chapter-nav{display:none}footer{align-items:flex-start;flex-wrap:wrap}.pipework{opacity:.28}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}
