@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&family=Libre+Caslon+Display&display=swap');
:root{--paper:#f5f2eb;--ink:#232c27;--muted:#646b61;--line:#d6d8cb;--accent:#d8eb89;--green:#254334;--serif:'Libre Caslon Display',Georgia,serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:32px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 'DM Sans',Arial,sans-serif}a{color:inherit;text-decoration:none}a:focus-visible{outline:3px solid #697e27;outline-offset:6px}a:hover{text-decoration:underline;text-underline-offset:5px}header,main,footer{max-width:1440px;margin:auto}header{height:112px;padding:0 6%;display:flex;align-items:center;justify-content:space-between;gap:28px;border-bottom:1px solid var(--line)}.brand{font-size:25px;font-weight:650;letter-spacing:-1.5px;white-space:nowrap}.brand-dot{color:#6c8534}nav{display:flex;gap:30px;font-size:14px}nav a{color:var(--muted)}nav a[aria-current]{color:var(--ink);text-decoration:underline;text-decoration-color:#7b933e;text-decoration-thickness:2px;text-underline-offset:9px}.nav-contact{font-size:14px;border-bottom:1px solid var(--ink);padding:5px 0}.nav-contact span{margin-left:25px}.hero,.page-hero{padding:55px 6% 75px}.hero-top{display:flex;justify-content:space-between;align-items:center}.eyebrow{font-size:11px;font-weight:650;letter-spacing:1.7px;text-transform:uppercase;line-height:1.7}.location{font-size:12px;color:var(--muted)}.dot{display:inline-block;width:7px;height:7px;background:#658640;border-radius:50%;margin-right:10px}.hero h1{font-size:clamp(72px,8.8vw,128px);line-height:.98;font-weight:500;letter-spacing:-7px;margin:48px 0 36px}em{font-family:var(--serif);font-weight:400}h1 em{letter-spacing:-4px}h2{font-size:clamp(35px,3.6vw,53px);line-height:1.13;letter-spacing:-1.7px;font-weight:500;margin:18px 0 24px}h3{font-size:25px;line-height:1.3;letter-spacing:-.7px;font-weight:500;margin:0 0 15px}p{margin:0 0 20px}p:last-child{margin-bottom:0}.hero-bottom{display:flex;align-items:end;justify-content:space-between;gap:30px}.hero-bottom p{font-size:18px;max-width:510px;color:var(--muted);line-height:1.7;margin:0}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:44px;background:var(--ink);color:var(--paper);padding:17px 23px;font-size:14px;border:1px solid var(--ink);flex-shrink:0}.button:hover{background:var(--green);text-decoration:none}.button span{font-size:21px;line-height:1}.proof{margin:0 6%;padding:32px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr 1.25fr;gap:30px}.proof div{display:flex;flex-direction:column;gap:5px}.proof strong{font-size:34px;letter-spacing:-1px;font-weight:500}.proof span{font-size:12px;color:var(--muted)}.feature{padding:100px 6%;display:grid;grid-template-columns:1.05fr 1fr;gap:80px;align-items:center}.feature-intro p:not(.eyebrow){color:var(--muted);max-width:470px}.text-link{display:inline-block;border-bottom:1px solid var(--ink);font-size:14px;padding:10px 0}.text-link span{margin-left:16px}.project-panel{display:flex;flex-direction:column;background:var(--accent);padding:28px 30px;min-height:390px;justify-content:space-between;transition:transform .2s}.project-panel:hover{transform:translateY(-4px);text-decoration:none}.panel-top,.panel-bottom{display:flex;align-items:center;justify-content:space-between;gap:16px}.panel-top{font-size:21px;font-weight:600;letter-spacing:-.7px}.panel-statement{position:relative;font-size:64px;line-height:1;letter-spacing:-3.5px;padding:48px 0}.asterisk{font-size:91px;position:absolute;right:0;bottom:0;font-weight:400;line-height:1}.panel-bottom{font-size:9px;font-weight:650;letter-spacing:.6px}.intro-grid{margin:0 6%;padding:75px 0;display:grid;grid-template-columns:1fr 2fr;gap:70px;border-top:1px solid var(--line)}.intro-grid h2{margin-top:0}.intro-grid p:not(.eyebrow){max-width:670px;color:var(--muted)}.intro-grid .large-copy{font-size:23px!important;line-height:1.5;color:var(--ink)!important}.contact{padding:70px 6%;background:var(--green);color:var(--paper);position:relative;margin-top:30px}.contact h2{font-size:64px;line-height:1.05}.contact>.eyebrow{color:var(--accent)}.contact .button{position:absolute;right:6%;top:130px}.contact>p:last-child{max-width:400px;font-size:14px;color:#d2dbd1}.light{background:var(--accent);border-color:var(--accent);color:var(--ink)}.light:hover{background:#e5f4b1}footer{padding:48px 6% 24px;display:grid;grid-template-columns:1fr 1fr;gap:40px}footer p{font-size:12px;color:var(--muted);margin-top:10px}.footer-links{display:flex;justify-content:end;align-items:start;gap:28px;font-size:14px}.copyright{grid-column:1/-1;border-top:1px solid var(--line);padding-top:22px;margin:0}.page-hero{padding-top:70px;padding-bottom:65px}.page-hero h1{font-size:clamp(54px,7vw,96px);font-weight:500;line-height:1.04;letter-spacing:-4.5px;margin:28px 0}.lede{font-size:20px;color:var(--muted);max-width:740px;line-height:1.7}.career{padding:55px 6%;background:#eaece2}.section-heading{display:flex;justify-content:space-between;gap:30px;margin-bottom:40px}.section-heading h2{margin-top:0;width:66%}.timeline-row{display:grid;grid-template-columns:1fr 1.5fr 1.5fr;gap:40px;border-top:1px solid #cdd1c2;padding:30px 0}.timeline-row>p{font-size:14px;color:var(--muted)}.role{color:var(--muted);font-size:13px;line-height:1.7}.timeline-row h3{margin-bottom:8px}.work-entry{margin:0 6%;padding:60px 0;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1.25fr;gap:75px}.work-entry h2{margin-top:12px}.work-entry>div+div{padding-top:35px}.work-entry>div+div p{color:var(--muted)}.tags{display:flex;gap:8px;flex-wrap:wrap;padding-top:8px}.tags span{border:1px solid var(--line);padding:6px 10px;font-size:11px}.notes{padding:0 6%}.notes article{border-top:1px solid var(--line);padding:44px 0 55px;display:grid;grid-template-columns:1fr 1fr;gap:0 70px}.notes .eyebrow{grid-column:1/-1}.notes h2{grid-row:2/4;margin-top:5px}.notes article>p:not(.eyebrow){grid-column:2;color:var(--muted);font-size:17px}.follow{background:var(--accent);padding:65px 6%;margin-top:25px}.skip{position:absolute;top:-90px;left:20px;padding:12px;background:var(--ink);color:white;z-index:10}.skip:focus{top:10px}
@media(min-width:1450px){body{border-left:1px solid var(--line);border-right:1px solid var(--line);max-width:1440px;margin:auto}}
@media(max-width:900px){header{padding:0 5%;gap:20px}.nav-contact{display:none}.hero,.page-hero{padding-left:5%;padding-right:5%}.hero h1{letter-spacing:-4px}.location{display:none}.feature{gap:35px;padding:70px 5%}.panel-statement{font-size:50px}.asterisk{font-size:65px}.project-panel{min-height:350px;padding:23px}.panel-bottom{flex-direction:column;align-items:start;gap:5px}.intro-grid{gap:35px}.timeline-row{grid-template-columns:.8fr 1.2fr 1.3fr;gap:24px}.work-entry{gap:35px}}
@media(max-width:600px){header{height:auto;min-height:112px;padding-top:20px;padding-bottom:20px;flex-wrap:wrap;gap:18px}.brand{font-size:24px}nav{width:100%;gap:0;justify-content:space-between;font-size:13px}.hero{padding-top:30px;padding-bottom:40px}.hero h1{font-size:64px;letter-spacing:-3.7px;margin:32px 0 28px}h1 em{letter-spacing:-2.5px}.hero-bottom{display:block}.hero-bottom p{font-size:16px;margin-bottom:25px}.button{padding:14px 20px;font-size:13px}.proof{gap:20px;grid-template-columns:1fr 1fr;padding:23px 0}.proof div:last-child{grid-column:1/-1;border-top:1px solid var(--line);padding-top:15px}.proof div:last-child strong{font-size:25px}.proof strong{font-size:30px}.proof span{font-size:11px}.feature{grid-template-columns:1fr;padding-top:55px;padding-bottom:55px;gap:30px}.project-panel{min-height:340px}.panel-statement{font-size:66px}.panel-bottom{flex-direction:row}.intro-grid{grid-template-columns:1fr;gap:20px;padding:45px 0}.intro-grid>.eyebrow{margin:0}.intro-grid .large-copy{font-size:20px!important}.contact{padding:40px 6%;margin-top:10px}.contact h2{font-size:49px}.contact .button{position:static;margin:0 0 25px}.contact>p:last-child{font-size:13px}footer{gap:25px;grid-template-columns:1fr}.footer-links{justify-content:start}.page-hero{padding-top:40px;padding-bottom:45px}.page-hero h1{font-size:49px;letter-spacing:-2.8px}.lede{font-size:17px}.section-heading{display:block}.section-heading h2{width:auto}.timeline-row{grid-template-columns:1fr;gap:10px;padding:25px 0}.timeline-row .eyebrow{font-size:10px}.timeline-row>p{margin:0}.work-entry{grid-template-columns:1fr;gap:15px;padding:36px 0}.work-entry>div+div{padding-top:0}.work-entry h2{font-size:38px}.notes article{display:block;padding:35px 0}.notes h2{font-size:36px;margin-bottom:25px}.notes article>p:not(.eyebrow){font-size:16px}.follow{padding:40px 6%}.eyebrow{font-size:10px;letter-spacing:1.3px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* NeigborDrop identity and sourced writing */
.project-panel{background:#050504;color:#eee;min-height:0;padding:0 25px 24px;gap:0}
.venture-wordmark{display:block;width:100%;height:auto;object-fit:contain}
.project-panel .panel-bottom{border-top:1px solid #30312c;padding-top:18px}
.venture-title{display:flex;align-items:center;gap:15px;margin:15px 0}
.venture-title img{width:70px;height:70px;object-fit:contain;border-radius:14px;background:#000}
.venture-title h2{margin:0;font-size:clamp(28px,3.5vw,50px)}
.media-feature{margin:0 6% 65px;display:grid;grid-template-columns:1fr 1.25fr;gap:60px;align-items:center}
.media-brand{background:#17181a}
.media-brand img{display:block;width:100%;height:auto;object-fit:contain}
.media-feature>div>p:not(.eyebrow){color:var(--muted);max-width:550px}
.writing{padding:0 6% 65px}
.writing-heading{border-top:1px solid var(--line);padding-top:30px;display:flex;justify-content:space-between;gap:30px}
.writing-heading>p:last-child{font-size:13px;color:var(--muted)}
.writing-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 65px}
.writing-card{border-bottom:1px solid var(--line);padding:32px 0 40px;display:flex;flex-direction:column;align-items:start}
.writing-card h2{font-size:37px;margin:0 0 20px;max-width:460px}
.writing-card>p:not(.eyebrow){color:var(--muted)}
.writing-card .text-link{margin-top:auto}
.article-hero{padding:45px 6% 40px;max-width:1000px;margin:auto}
.article-hero>.eyebrow{margin-top:50px}
.article-hero h1{font-size:clamp(45px,6vw,78px);letter-spacing:-3px;font-weight:500;line-height:1.08;margin:22px 0}
.article-byline{font-size:13px;color:var(--muted)}
.article-body{max-width:820px;margin:auto;padding:10px 6% 80px}
.article-body>p{font-size:21px;line-height:1.85;margin-bottom:26px}
.article-source{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:30px 0;margin:35px 0}
.article-source p{font-size:13px;color:var(--muted)}
@media(max-width:900px){.media-feature{gap:30px}.writing-grid{gap:0 35px}}
@media(max-width:600px){.media-feature{grid-template-columns:1fr;gap:28px;margin-bottom:45px}.media-brand{max-width:100%}.writing-heading{display:block}.writing-heading>.eyebrow{margin-bottom:8px}.writing-grid{grid-template-columns:1fr}.writing-card h2{font-size:32px}.article-hero h1{font-size:45px;letter-spacing:-2px}.article-body>p{font-size:18px}.article-hero{padding-top:25px}.article-hero>.eyebrow{margin-top:35px}.project-panel .panel-bottom{flex-wrap:wrap}.venture-title img{width:56px;height:56px}}

/* Personal section: supporting photography, with original framing preserved. */
.personal-life{padding:56px 0;border-top:1px solid var(--line)}
.personal-intro{display:grid;grid-template-columns:3fr 2fr;gap:40px;align-items:center}
.personal-life figure{margin:0;min-width:0}.personal-life img{display:block;width:100%;height:auto;border-radius:4px}
.personal-life h2{font-size:clamp(30px,3.5vw,48px)}
.personal-life figcaption{font-size:13px;color:var(--muted);padding:10px 0;line-height:1.5}
.personal-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:32px}
.personal-photo{height:200px;background:#ebe8df;border-radius:4px;display:flex;align-items:center;justify-content:center}
.personal-photo img{width:100%;height:100%;object-fit:contain}
@media(max-width:700px){.personal-life{padding:36px 24px}.personal-intro{grid-template-columns:1fr;gap:20px}.personal-family{width:100%;max-width:340px;justify-self:center}.personal-gallery{grid-template-columns:1fr;gap:16px;max-width:340px;margin:24px auto 0}.personal-photo{height:180px}}
