@import url('/assets/fonts.css');
:root{--paper:#f8f7f4;--ink:#222420;--muted:#676a64;--line:#d7d8d0;--accent:#dec76d;--serif:'Libre Caslon Display',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid #746111;outline-offset:6px}img{display:block;width:100%;height:auto}figure,h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:400}h1,h2{font-family:var(--serif);line-height:1.04;letter-spacing:-.028em}h1 em,h2 em{font-weight:400}p+p{margin-top:1em}.skip-link{position:fixed;top:-100px;left:20px;z-index:100;background:var(--ink);color:#fff;padding:10px 20px}.skip-link:focus{top:10px}.site-header{height:104px;padding:0 4.6%;display:flex;align-items:center;justify-content:space-between;gap:35px;border-bottom:1px solid var(--line);background:var(--paper);position:sticky;top:0;z-index:20}.brand{display:flex;align-items:center;gap:12px;font-size:15px;line-height:1.2;letter-spacing:.065em;font-weight:650}.brand svg{width:42px;height:42px;stroke:currentColor;fill:none;stroke-width:1.4;flex-shrink:0}.brand svg circle{fill:currentColor;stroke:none}.brand small{display:block;font-size:10px;letter-spacing:.18em;margin-top:7px;font-weight:400}nav{display:flex;align-items:center;gap:30px;font-size:14px}nav>a:not(.nav-cta){position:relative}nav>a:not(.nav-cta):after{content:'';position:absolute;bottom:-5px;left:0;width:0;height:1px;background:currentColor;transition:width .3s}nav>a:hover:after{width:100%}.nav-cta{border:1px solid #b4b6ad;padding:13px 18px;margin-left:8px;display:flex;gap:28px;align-items:center;transition:background .25s,color .25s}.nav-cta:hover{background:var(--ink);color:white}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:46% 54%;min-height:650px;height:calc(100svh - 160px);max-height:850px}.hero-copy{padding:68px 8% 36px 10%;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.eyebrow,.section-label{font-size:12px;letter-spacing:.14em;font-weight:500}.eyebrow{margin-bottom:34px}.hero h1{font-size:clamp(48px,5vw,80px);white-space:nowrap;margin-bottom:26px}.hero-description{max-width:350px;color:var(--muted);font-size:16px;line-height:1.8}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:40px;padding:16px 24px;min-height:54px;font-size:14px;border:1px solid var(--ink);transition:background .25s,transform .25s,color .25s}.button.dark{background:var(--ink);color:white}.button:hover{background:#3c4038;color:white}.button span{display:inline-block;transition:transform .25s}.button:hover span{transform:translate(2px,-2px)}.hero .button{margin-top:33px}.hero-scroll{display:flex;gap:13px;align-items:center;font-size:12px;color:var(--muted);margin-top:auto;padding-top:52px}.scroll-line{width:1px;height:34px;background:#969b8f}.hero-image{position:relative;overflow:hidden;min-height:0}.hero-image img{height:100%;object-fit:cover;object-position:62% center;animation:image-settle 1.6s ease-out both}.hero-image:after{content:'';position:absolute;inset:65% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.4));pointer-events:none}.hero-image figcaption{position:absolute;bottom:27px;left:32px;right:32px;display:flex;justify-content:space-between;gap:15px;font-size:10px;letter-spacing:.15em;color:white;z-index:1}.intro-strip{display:flex;justify-content:space-around;gap:15px;padding:25px 4.6%;font-size:12px;border-bottom:1px solid var(--line);color:var(--muted)}.intro-strip span+span:before{content:'·';margin-right:35px}.section{padding:110px 8%}.experience{display:grid;grid-template-columns:32% 68%;gap:20px}.section-label{display:flex;align-items:center;gap:24px;padding-top:12px}.short-rule{width:36px;height:1px;background:#8e9485}h2{font-size:clamp(42px,4.3vw,64px)}.large-copy{font-size:18px;line-height:1.9;color:var(--muted);max-width:620px;margin-top:32px}.site-footer{padding:48px 4.6%;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:30px;font-size:14px}.reveal{transition:opacity .7s ease,transform .7s ease}.reveal.pending{opacity:0;transform:translateY(20px)}@keyframes image-settle{from{transform:scale(1.035)}to{transform:scale(1)}}
@media(min-width:1700px){.hero-copy{padding-left:14%}.site-header{padding:0 6.5%}}
@media(max-width:1100px){nav{gap:18px;font-size:13px}.site-header{padding:0 3%;gap:20px}.brand{font-size:13px}.brand svg{width:34px;height:34px}.nav-cta{gap:12px;margin-left:0}.hero-copy{padding-left:8%;padding-right:5%}.hero h1{font-size:5.1vw}.hero-description{max-width:290px}.hero-image figcaption{left:24px;right:24px}.hero{min-height:590px}.section{padding:85px 6%}}
@media(max-width:800px){html{scroll-padding-top:80px}.site-header{height:80px;padding:0 6%}.brand{font-size:12px}.brand small{font-size:9px}.brand svg{width:32px;height:32px}.menu-toggle{display:flex;align-items:center;gap:14px;border:0;background:none;padding:12px 0;font-size:14px;color:var(--ink)}nav{display:none;position:absolute;top:80px;left:0;right:0;background:var(--paper);padding:24px 6% 32px;border-bottom:1px solid var(--line)}nav.open{display:flex;align-items:stretch;flex-direction:column;gap:8px}nav>a{padding:10px 0;font-size:16px}nav>.nav-cta{padding:13px 18px;margin-top:10px}.hero{height:auto;max-height:none;min-height:0;grid-template-columns:1fr}.hero-copy{padding:46px 7% 44px}.hero h1{font-size:clamp(48px,8vw,68px)}.eyebrow{font-size:10px;margin-bottom:22px;letter-spacing:.1em}.hero-description{max-width:440px}.hero .button{margin-top:25px}.hero-scroll{display:none}.hero-image{height:420px}.hero-image img{object-position:50% 50%}.hero-image figcaption{font-size:9px;bottom:21px}.intro-strip{flex-wrap:wrap;justify-content:center;padding:22px 6%;gap:5px 20px}.intro-strip span+span:before{display:none}.section{padding:68px 7%}.experience{grid-template-columns:1fr;gap:25px}.section-label{padding-top:0}h2{font-size:44px}.large-copy{font-size:17px;margin-top:24px}.site-footer{padding:35px 7% 100px;flex-wrap:wrap}.button{gap:32px}}
@media(max-width:380px){.hero h1{font-size:44px}.hero-image{height:330px}.brand{font-size:11px}.brand small{font-size:8px}.hero-image figcaption span:last-child{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.reveal.pending{opacity:1;transform:none}}
