:root{--paper:#f6f5ef;--ink:#172e29;--muted:#626d64;--line:#d4d8cc;--accent:#a55335;--sage:#e3e6d9;--serif:Georgia,'Times New Roman',serif;--sans:Arial,Helvetica,sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:32px}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
a:focus-visible{outline:2px solid var(--accent);outline-offset:6px}
::selection{background:#b4bda5;color:var(--ink)}
.page-shell{max-width:1600px;margin:0 auto;padding:0 6.25%}
.skip-link{position:absolute;left:20px;top:-100px;padding:12px 18px;background:var(--ink);color:var(--paper);z-index:10}
.skip-link:focus{top:16px}
.site-header{min-height:118px;display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid var(--line)}
.wordmark{font-size:44px;font-weight:600;letter-spacing:-3px;line-height:1;display:inline-block}
.brand-dot{color:var(--accent)}
.header-descriptor{font-size:11px;text-transform:uppercase;letter-spacing:1.8px;margin-left:auto;margin-right:54px}
.header-contact{font-size:13px;display:flex;gap:25px;align-items:center}
.header-contact span{font-size:21px;font-weight:400}
.hero{display:grid;grid-template-columns:1.4fr 1fr;gap:6%;padding:99px 0 83px;align-items:center}
.eyebrow{margin:0;font-size:10px;font-weight:600;letter-spacing:1.7px;text-transform:uppercase;line-height:1.5}
.hero .eyebrow{display:flex;align-items:center;gap:10px;margin-bottom:30px}
.hero .eyebrow>span{width:6px;height:6px;background:var(--accent);border-radius:50%}
h1,h2,h3,p{margin-top:0}
h1{font-family:var(--serif);font-size:clamp(44px,4.7vw,74px);font-weight:400;letter-spacing:-2.6px;line-height:1.08;margin-bottom:28px}
h1 em{font-weight:400;font-style:italic}
.hero-description{font-size:15px;line-height:1.8;max-width:355px;color:var(--muted);margin-bottom:28px}
.text-link{font-size:13px;display:inline-flex;gap:37px;align-items:center;border-bottom:1px solid var(--ink);padding-bottom:10px}
.text-link span{font-size:21px;transition:transform .18s}
.text-link:hover span,.contact-email:hover span{transform:translate(3px,-3px)}
.trade-illustration{max-width:440px;width:100%;justify-self:end;padding-top:8px}
.trade-drawing{display:block;width:100%;height:auto}
.drawing-caption{display:flex;justify-content:space-between;margin-top:18px;font-size:8px;letter-spacing:1.4px;color:var(--muted)}
.drawing-caption span:last-child{font-size:18px;line-height:.6;color:var(--accent)}
.approach{border-top:1px solid var(--line);padding:68px 0 85px;display:grid;grid-template-columns:1fr 1.32fr;gap:12%}
.section-heading .eyebrow{margin-bottom:20px;color:var(--muted)}
h2{font-family:var(--serif);font-size:clamp(35px,3.25vw,50px);line-height:1.15;letter-spacing:-1.4px;font-weight:400;margin-bottom:0}
.section-intro{font-size:15px;line-height:1.8;max-width:510px;margin-bottom:33px;color:var(--muted)}
.service{border-top:1px solid var(--line);display:grid;grid-template-columns:35px 1fr;gap:13px;padding-top:21px;margin-top:24px}
.service-number{color:var(--accent);font-size:10px;letter-spacing:.5px;padding-top:4px}
h3{font-size:15px;line-height:1.4;font-weight:500;margin-bottom:8px}
.service p{font-size:13px;color:var(--muted);line-height:1.75;max-width:420px;margin-bottom:0}
.contact{background:var(--ink);color:var(--paper);padding:53px 54px 58px;display:grid;grid-template-columns:1.15fr 1fr;gap:12%;align-items:end}
.contact .eyebrow{color:#bac8b7;margin-bottom:19px}
.contact h2{font-size:clamp(37px,3.5vw,52px);margin-bottom:19px}
.contact-heading>p:last-child{font-size:13px;line-height:1.8;color:#bac8b7;max-width:330px;margin-bottom:0}
.contact-details{padding-bottom:4px}
.contact-name{font-size:16px;margin-bottom:7px}
.contact-role{font-size:11px;color:#bac8b7;margin-bottom:28px}
.contact-email{font-size:clamp(19px,2.2vw,29px);letter-spacing:-.5px;border-bottom:1px solid #687e71;display:flex;justify-content:space-between;align-items:center;gap:20px;padding-bottom:13px}
.contact-email span{transition:transform .18s;color:#bac8b7;font-size:26px}
.site-footer{display:flex;align-items:center;gap:32px;min-height:133px}
.footer-wordmark{font-size:30px;letter-spacing:-2px}
.site-footer p{font-size:10px;color:var(--muted);margin-bottom:0;letter-spacing:.2px}
.site-footer>span{font-size:10px;margin-left:auto;color:var(--muted)}
@media(min-width:1500px){.hero{padding-top:116px;padding-bottom:106px}}
@media(max-width:1000px){.page-shell{padding:0 6%}.site-header{min-height:95px}.header-descriptor{margin-right:20px;font-size:9px;letter-spacing:1.1px}.hero{gap:4%;padding-top:70px;padding-bottom:64px;grid-template-columns:1.32fr 1fr}h1{font-size:clamp(40px,5.2vw,55px);letter-spacing:-2px}.hero .eyebrow{font-size:8px;letter-spacing:1.2px}.hero-description{font-size:14px}.approach{gap:8%;padding-top:53px;padding-bottom:65px}.contact{padding:44px 38px;gap:9%}.contact-email{font-size:22px}}
@media(max-width:700px){.page-shell{padding:0 6%}.site-header{min-height:88px;gap:16px}.wordmark{font-size:38px}.header-descriptor{display:none}.header-contact{font-size:12px;gap:17px}.hero{grid-template-columns:1fr;padding-top:56px;padding-bottom:47px;gap:40px}.hero .eyebrow{font-size:9px;letter-spacing:1.4px;margin-bottom:24px}h1{font-size:clamp(39px,8.2vw,57px);letter-spacing:-1.8px;margin-bottom:24px}.hero-description{max-width:325px;font-size:14px}.text-link{font-size:12px}.trade-illustration{width:76%;max-width:330px;justify-self:center}.drawing-caption{margin-top:12px;font-size:7px;letter-spacing:1px}.approach{grid-template-columns:1fr;gap:26px;padding:44px 0 48px}.section-heading .eyebrow{margin-bottom:15px}h2{font-size:37px}.section-intro{font-size:14px;margin-bottom:27px}.service{grid-template-columns:29px 1fr;gap:10px;padding-top:19px;margin-top:21px}.service p{font-size:13px}.contact{grid-template-columns:1fr;gap:39px;padding:35px 27px 38px}.contact h2{font-size:38px}.contact-heading>p:last-child{font-size:12px;max-width:290px}.contact-name{font-size:15px}.contact-role{margin-bottom:21px}.contact-email{font-size:24px;max-width:350px}.site-footer{min-height:124px;gap:11px;flex-wrap:wrap;align-content:center;justify-content:space-between}.footer-wordmark{font-size:28px}.site-footer p{font-size:9px;order:3;width:100%}.site-footer>span{font-size:9px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
