:root{--ink:#222629;--gold:#9b7b5b;--paper:#f8f6f2;--muted:#716d68;--line:#ded9d0;--serif:"Cormorant Garamond",Georgia,serif;--sans:"Manrope",Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.7;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}img{display:block;width:100%}h1,h2,h3,p{margin-top:0}h1,h2{font-weight:400;letter-spacing:-.045em;line-height:1.02}h1{font-size:clamp(3.4rem,7.5vw,8.7rem);max-width:1000px;margin:0 0 2.3rem}h2{font-size:clamp(2.8rem,5vw,5.8rem);margin:0}h2 em{font-family:var(--serif);font-weight:500;color:var(--gold)}.eyebrow{text-transform:uppercase;letter-spacing:.22em;font-size:.75rem;font-weight:600;margin-bottom:2rem}.site-header{height:88px;padding:0 clamp(24px,5vw,80px);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(9,37,44,.14);position:relative;z-index:20;background:var(--paper)}.wordmark{text-transform:uppercase;letter-spacing:.22em;font-size:.72rem;font-weight:600;white-space:nowrap}.wordmark em{font-style:normal;color:var(--gold);margin-left:.55rem;font-weight:400}.site-header nav{display:flex;gap:2.4rem;font-size:.72rem;text-transform:uppercase;letter-spacing:.14em}.site-header nav a{position:relative}.site-header nav a:after{content:"";position:absolute;left:0;bottom:-8px;width:0;height:1px;background:var(--gold);transition:.25s}.site-header nav a:hover:after{width:100%}.menu-toggle{display:none;background:none;border:0;padding:8px}.hero{min-height:calc(100vh - 88px);padding:clamp(70px,10vh,130px) clamp(24px,7vw,120px) 42px;position:relative;display:flex;flex-direction:column;justify-content:center;overflow:hidden}.hero-copy{position:relative;z-index:2}.intro{max-width:620px;font-size:clamp(1.08rem,1.5vw,1.35rem);line-height:1.65;color:#4f514f;margin-bottom:2.2rem}.button{display:inline-flex;align-items:center;gap:2rem;background:var(--ink);color:#fff;padding:1rem 1.25rem;text-transform:uppercase;letter-spacing:.13em;font-size:.7rem;font-weight:600;transition:.25s}.button:hover{background:var(--gold)}.button span,.email span{font-size:1.1rem}.hero-mark{position:absolute;right:7vw;top:14%;width:170px;height:170px;display:grid;grid-template-columns:1fr 1fr;gap:18px;opacity:.18;transform:rotate(8deg)}.hero-mark i{background:var(--gold)}.hero-aside{display:flex;justify-content:space-between;position:absolute;left:7vw;right:7vw;bottom:28px;text-transform:uppercase;letter-spacing:.15em;font-size:.62rem;color:#77716a}.panorama,.wide-image{margin:0;overflow:hidden;position:relative}.panorama{height:55vh;min-height:400px}.wide-image{height:48vh;min-height:360px}.panorama img,.wide-image img{height:120%;object-fit:cover;transform:translateY(var(--parallax,0)) scale(1.02)}.wide-image figcaption{position:absolute;right:2rem;bottom:1.5rem;color:#fff;text-transform:uppercase;letter-spacing:.18em;font-size:.65rem}.section{padding:clamp(90px,12vw,190px) clamp(24px,7vw,120px)}.section-label{display:flex;align-items:center;gap:1rem;margin-bottom:clamp(65px,9vw,125px);text-transform:uppercase;letter-spacing:.17em;font-size:.65rem}.section-label span{color:var(--gold)}.section-label p{margin:0}.about-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(380px,.82fr);gap:clamp(60px,10vw,170px)}.prose{max-width:650px}.prose p{color:#4f514f}.prose .lead{font-size:1.3rem;line-height:1.6;color:var(--ink)}.prose .note{border-top:1px solid var(--line);padding-top:1.25rem;margin-top:2rem;font-size:.82rem}.edge-grid{display:grid;grid-template-columns:repeat(3,1fr);margin-top:clamp(90px,11vw,160px);border-top:1px solid var(--line)}.edge-grid article{padding:2rem 3rem 0 0;border-right:1px solid var(--line);min-height:230px}.edge-grid article+article{padding-left:3rem}.edge-grid article:last-child{border-right:0}.edge-grid span,.steps>li>span{color:var(--gold);font-size:.7rem;letter-spacing:.16em}.edge-grid h3{font-weight:500;font-size:1.05rem;margin-top:3rem}.edge-grid p{color:var(--muted);font-size:.9rem;line-height:1.7}.section-head{display:flex;justify-content:space-between;align-items:flex-start;gap:3rem;margin-bottom:80px}.section-head .eyebrow{width:260px;margin-top:1rem}.section-head h2{flex:1}.service-list{border-top:1px solid var(--ink)}details{border-bottom:1px solid var(--line)}summary{list-style:none;display:grid;grid-template-columns:100px 1fr 40px;align-items:center;padding:2.1rem 0;cursor:pointer}summary::-webkit-details-marker{display:none}.roman{font-family:var(--serif);font-size:1.45rem;color:var(--gold)}summary h3{font-weight:500;font-size:clamp(1.4rem,2.2vw,2rem);margin:0 0 .25rem}summary p{font-size:.75rem;color:var(--muted);text-transform:uppercase;letter-spacing:.11em;margin:0}summary b{font-size:1.7rem;font-weight:300;transition:.25s}details[open] summary b{transform:rotate(45deg)}.service-content{display:grid;grid-template-columns:1fr 1.5fr;gap:4rem;padding:0 40px 3rem 100px;color:#5f5b56}.service-content p{font-family:var(--serif);font-size:1.35rem;color:var(--ink)}.service-content ul{columns:2;gap:3rem;margin:0;padding:0;list-style:none}.service-content li{break-inside:avoid;border-top:1px solid var(--line);padding:.75rem 0;font-size:.88rem}.steps{list-style:none;padding:0;margin:0 0 0 31%;border-top:1px solid var(--ink)}.steps li{display:grid;grid-template-columns:80px 1fr;padding:2rem 0;border-bottom:1px solid var(--line)}.steps h3{font-weight:500;font-size:1.2rem}.steps p{max-width:650px;color:var(--muted);margin:0}.contact{background:var(--ink);color:#fff}.contact-image{height:40vh;min-height:300px;overflow:hidden}.contact-image img{height:100%;object-fit:cover;filter:saturate(.7)}.contact-inner{padding:clamp(90px,11vw,170px) clamp(24px,7vw,120px);display:grid;grid-template-columns:1.2fr .8fr;gap:12vw}.contact h2 em{color:#b89570}.contact-copy>p{color:#d6d0c8;max-width:520px;margin-bottom:2rem}.email{display:flex;justify-content:space-between;align-items:center;border-top:1px solid rgba(255,255,255,.22);padding:1rem 0;font-size:clamp(1rem,1.5vw,1.25rem)}.email:hover{color:#b89570}.button.light{background:var(--paper);color:var(--ink);margin-top:2rem}.button.light:hover{background:#b89570}.contact-meta{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-top:3.5rem;color:#bcb4aa;font-size:.8rem}.contact footer{border-top:1px solid rgba(255,255,255,.16);padding:2rem clamp(24px,7vw,120px);display:grid;grid-template-columns:1fr auto auto;gap:3rem;align-items:center;font-size:.65rem;color:#a9a198}.reveal{opacity:0;transform:translateY(22px);transition:opacity .8s ease,transform .8s ease}.reveal.visible{opacity:1;transform:none}@media(max-width:850px){.site-header{height:72px;padding:0 20px}.menu-toggle{display:block}.menu-toggle span{display:block;width:24px;height:1px;background:var(--ink);margin:6px}.site-header nav{position:absolute;left:0;right:0;top:72px;background:var(--paper);display:none;flex-direction:column;padding:28px 24px;border-bottom:1px solid var(--line);gap:1.3rem}.site-header nav.open{display:flex}.hero{min-height:calc(100svh - 72px);padding:70px 24px}.hero-mark{width:90px;height:90px;right:24px;top:9%;gap:10px}.hero-aside{left:24px;right:24px;bottom:20px}.hero-aside span:last-child{display:none}.panorama{height:43vh;min-height:330px}.section{padding:90px 24px}.about-grid,.contact-inner{grid-template-columns:1fr;gap:60px}.edge-grid{grid-template-columns:1fr}.edge-grid article,.edge-grid article+article{border-right:0;border-bottom:1px solid var(--line);padding:30px 0;min-height:auto}.edge-grid h3{margin-top:1.2rem}.section-head{display:block;margin-bottom:50px}.section-head .eyebrow{width:auto}.service-content{grid-template-columns:1fr;padding:0 0 2rem}.service-content ul{columns:1}summary{grid-template-columns:48px 1fr 25px}.steps{margin-left:0}.contact footer{grid-template-columns:1fr;gap:.5rem}.contact-inner{padding-top:90px}.wide-image{height:38vh;min-height:300px}}@media(max-width:520px){h1{font-size:3.2rem}.wordmark{font-size:.63rem}.hero-copy .eyebrow{margin-bottom:1.25rem}.intro{font-size:1rem}.button{gap:1rem}.section-label{margin-bottom:55px}.steps li{grid-template-columns:45px 1fr}.contact-meta{grid-template-columns:1fr}.service-content p{font-size:1.15rem}}
