@font-face{font-family:Inter;src:url(/fonts/inter-400.ttf) format('truetype');font-weight:400;font-display:swap}@font-face{font-family:Inter;src:url(/fonts/inter-500.ttf) format('truetype');font-weight:500;font-display:swap}@font-face{font-family:Inter;src:url(/fonts/inter-600.ttf) format('truetype');font-weight:600;font-display:swap}@font-face{font-family:Newsreader;src:url(/fonts/newsreader-300.ttf) format('truetype');font-weight:300;font-display:swap}@font-face{font-family:Newsreader;src:url(/fonts/newsreader-500.ttf) format('truetype');font-weight:500;font-display:swap}@font-face{font-family:Newsreader;src:url(/fonts/newsreader-300-italic.ttf) format('truetype');font-style:italic;font-weight:300;font-display:swap}
:root{--paper:#F5F2EA;--ink:#161616;--graphite:#5E5B55;--quiet-stone:#6C6A64;--rule:#D8D2C7;--accent:#6B5737;--gutter:80px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:80px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,Arial,sans-serif;font-weight:400}::selection{background:var(--accent);color:var(--paper)}a{color:var(--ink);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}a:hover{text-decoration:underline}a:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.skip{position:absolute;top:-100px;left:24px;z-index:10;background:var(--paper);padding:12px}.skip:focus{top:8px}.wrap{max-width:1280px;margin-inline:auto;padding-inline:var(--gutter)}.site-header{height:80px;position:sticky;top:0;z-index:5;background:var(--paper);border-bottom:1px solid transparent;transition:border-color 180ms ease-out}.site-header.scrolled{border-color:#E6E1D7}.header-inner{height:100%;display:flex;align-items:center;justify-content:space-between;gap:24px}.wordmark{font-weight:600;font-size:13px;letter-spacing:.16em;line-height:1.4;text-decoration:none;white-space:nowrap}.wordmark:hover{text-decoration:underline}.nav{display:flex;gap:32px;align-items:center}.nav a{font-size:13px;font-weight:500;text-decoration:none;min-height:44px;display:inline-flex;align-items:center}.nav a:hover{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}.hero{min-height:82svh;display:grid;place-items:center;text-align:center}.hero-content{transform:translateY(-6%);padding-block:64px}.hero h1{font-family:Newsreader,Georgia,serif;font-size:80px;line-height:.98;letter-spacing:-.025em;font-weight:300;margin:0 0 24px}.occupation{font-size:14px;letter-spacing:.14em;font-weight:500;color:var(--graphite);text-transform:uppercase;margin:0 0 32px}.tagline{font-family:Newsreader,Georgia,serif;font-size:28px;line-height:1.25;letter-spacing:-.01em;font-style:italic;font-weight:300;color:var(--graphite);margin:0}.section{border-top:1px solid var(--rule);scroll-margin-top:80px}.section-inner{padding-top:96px}.section h2,.eyebrow{font-size:12px;letter-spacing:.18em;font-weight:500;color:var(--graphite);text-transform:uppercase;margin:0 0 48px;line-height:1.5}.about .section-inner{padding-bottom:144px}.about p{max-width:680px;font-size:18px;line-height:1.7;margin:0}.contact .section-inner{padding-bottom:160px}.contact p{font-size:18px;line-height:1.7;margin:0}.contact .email{margin-top:16px}.footer{border-top:1px solid var(--rule);font-size:13px;line-height:1.55;color:var(--graphite)}.footer-inner{padding-top:40px;padding-bottom:40px;display:flex;justify-content:space-between;gap:32px}.footer p{margin:0}.footer-links{display:flex;gap:24px;align-items:flex-start}.footer-links a{color:var(--ink)}.legal-main,.error-main{min-height:60svh}.legal-inner,.error-inner{padding-top:96px;padding-bottom:160px}.legal-inner .eyebrow{margin-bottom:48px}.legal-inner h1,.error-inner h1{font-family:Newsreader,Georgia,serif;font-weight:300;line-height:1.08;letter-spacing:-.025em;font-size:56px;margin:0}.legal-body{max-width:720px;font-size:16px;line-height:1.75}.error-inner h1{margin-bottom:32px}.error-inner h2{font-family:Newsreader,Georgia,serif;font-size:40px;font-weight:300;margin:0 0 24px}.error-inner p{font-size:16px;line-height:1.75;margin:0 0 32px}
@media(min-width:1440px){.hero h1{font-size:88px}}@media(min-width:1200px) and (max-width:1439px){:root{--gutter:64px}}@media(min-width:768px) and (max-width:1199px){:root{--gutter:40px}.site-header{height:72px}.hero{min-height:78svh}.hero h1{font-size:64px}.tagline{font-size:26px}}@media(max-width:767px){:root{--gutter:24px}html{scroll-padding-top:64px}.site-header{height:64px}.wordmark{font-size:12px}.nav{gap:16px}.nav a{font-size:12px}.hero{min-height:74svh}.hero-content{padding-block:48px}.hero h1{font-size:48px;margin-bottom:20px}.occupation{font-size:13px;margin-bottom:28px}.tagline{font-size:22px}.section{scroll-margin-top:64px}.section-inner{padding-top:72px}.section h2,.eyebrow{font-size:11px;margin-bottom:36px}.about .section-inner{padding-bottom:104px}.about p,.contact p{font-size:17px;line-height:1.65}.contact .section-inner{padding-bottom:112px}.footer-inner{flex-direction:column;gap:24px}.legal-inner,.error-inner{padding-top:72px;padding-bottom:112px}.legal-inner h1{font-size:40px}}@media(max-width:359px){:root{--gutter:20px}.header-inner{align-items:flex-start;flex-direction:column;justify-content:center;gap:0}.site-header{height:88px}.nav a{min-height:36px}.hero h1{font-size:44px}.section{scroll-margin-top:88px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.site-header{transition:none}a{transition:none}}
/* Homepage hero photograph; all other routes retain the paper header and page system. */
.home .site-header{margin-bottom:-80px;background:transparent;color:var(--paper)}
.home .site-header .wordmark,.home .site-header .nav a{color:var(--paper)}
.home .site-header.scrolled{background:var(--paper);color:var(--ink)}
.home .site-header.scrolled .wordmark,.home .site-header.scrolled .nav a{color:var(--ink)}
.home .hero{position:relative;isolation:isolate;overflow:hidden;width:100%;max-width:none;padding-inline:var(--gutter);color:var(--paper)}
.home .hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:-2}
.home .hero::before{content:"";position:absolute;inset:0;background:rgba(0,0,0,.34);z-index:-1}
.home .hero .occupation,.home .hero .tagline{color:var(--paper)}
@media(min-width:768px) and (max-width:1199px){.home .site-header{margin-bottom:-72px}}
@media(max-width:767px){.home .site-header{margin-bottom:-64px}}
@media(max-width:359px){.home .site-header{margin-bottom:-88px}}
