:root{--bg:#10100f;--panel:#191917;--text:#eeeae2;--muted:#b4b0a7;--line:#45443f;--accent:#d4b88c;--serif:Georgia,'Times New Roman',serif;--sans:Arial,Helvetica,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--sans);font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:6px}img{display:block;max-width:100%;height:auto}h1,h2,h3,p,figure,blockquote{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.12}em{font-weight:400}h1{font-size:clamp(52px,7.5vw,112px);letter-spacing:-.045em}h2{font-size:clamp(36px,4.5vw,65px);letter-spacing:-.035em}h3{font-size:32px;letter-spacing:-.02em}.eyebrow{text-transform:uppercase;letter-spacing:.21em;font-size:11px;font-weight:500;line-height:1.6}.skip-link{position:fixed;top:-100px;left:20px;padding:12px;background:var(--text);color:var(--bg);z-index:100}.skip-link:focus{top:15px}.site-header{position:fixed;top:0;width:100%;padding:29px 4.5%;display:flex;align-items:center;justify-content:space-between;gap:30px;z-index:20;background:linear-gradient(#080808bf,transparent);transition:background .2s,padding .2s}.site-header.scrolled,body:not(.home):not(.project-page) .site-header{background:#10100ff2;backdrop-filter:blur(12px);padding-top:21px;padding-bottom:21px}.wordmark{font-family:var(--serif);font-style:italic;font-size:24px;letter-spacing:.025em;white-space:nowrap}nav{display:flex;gap:30px;align-items:center}nav a{font-size:12px;letter-spacing:.08em;padding:5px 0}nav a:after{content:'';display:block;width:0;height:1px;background:var(--text);transition:width .2s}nav a:hover:after{width:100%}.menu-toggle{display:none}.hero{height:100svh;min-height:650px;position:relative;overflow:hidden}.hero-photo,.project-hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 42%}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#030303c4 0%,#03030345 55%,#0303030a),linear-gradient(0deg,#080808c7,transparent 45%)}.hero-text{position:absolute;left:8%;bottom:19%;max-width:750px}.hero-text .eyebrow{margin-bottom:24px;color:#e2d9ca}.hero h1{font-size:clamp(66px,8.6vw,132px);line-height:.98;margin-bottom:38px}.hero h1 em{letter-spacing:-.055em}.pill{display:inline-flex;align-items:center;justify-content:center;gap:35px;border:1px solid #88847b;padding:13px 24px;border-radius:100px;font-size:12px;letter-spacing:.07em;transition:background .2s,color .2s}.pill:hover{background:var(--text);color:var(--bg)}.hero-caption{position:absolute;bottom:35px;left:8%;right:5%;font-size:12px;letter-spacing:.02em}.hero-caption span{color:#cec8bc}.hero-caption small{display:block;font-size:10px;color:#d4d0c8;margin-top:3px}.work-section{padding:105px 7.5% 110px}.section-top{display:flex;justify-content:space-between;gap:50px;align-items:end;margin-bottom:55px}.section-top .eyebrow{color:var(--accent);margin-bottom:22px}.intro-small{font-size:14px;line-height:1.9;color:var(--muted);max-width:340px;padding-bottom:7px}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:65px 35px}.project-card{display:block;min-width:0}.project-card.featured{grid-column:1/-1}.card-photo{position:relative;overflow:hidden;background:var(--panel);aspect-ratio:1.5}.featured .card-photo{aspect-ratio:2.15}.card-photo img{width:100%;height:100%;object-fit:cover;transition:transform .65s ease}.project-card:hover .card-photo img{transform:scale(1.025)}.view-project{position:absolute;bottom:20px;right:20px;padding:8px 13px;border-radius:50px;background:#0a0a0ab0;font-size:11px;opacity:0;transition:opacity .2s}.project-card:hover .view-project,.project-card:focus-visible .view-project{opacity:1}.card-caption{display:flex;justify-content:space-between;align-items:start;padding-top:20px;gap:15px}.card-caption h3{font-size:30px}.card-caption p{font-size:12px;color:var(--muted);margin-top:6px}.card-caption>span{font-size:12px;color:var(--muted);padding-top:9px}.teaching-teaser{margin:0 7.5%;padding:75px 0 100px;border-top:1px solid var(--line)}.teaching-teaser .eyebrow{color:var(--accent)}blockquote{font-family:var(--serif);font-style:italic;font-size:clamp(30px,4.5vw,64px);line-height:1.2;letter-spacing:-.035em;max-width:900px;margin:25px 0 35px}.teaching-teaser>div{display:flex;justify-content:space-between;align-items:end;gap:35px}.teaching-teaser p:not(.eyebrow){color:var(--muted);max-width:470px;font-size:15px}.text-link{display:inline-flex;gap:35px;border-bottom:1px solid var(--line);padding:10px 0;font-size:13px}.text-link:hover{border-color:var(--text)}footer{border-top:1px solid var(--line);padding:45px 7.5% 30px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:30px}footer .footer-name{font-family:var(--serif);font-size:25px;font-style:italic}footer p{color:var(--muted);font-size:12px;margin-top:7px}footer div:nth-child(2){text-align:right;font-size:14px}footer small{width:100%;color:#8f8b83;font-size:10px;margin-top:30px}.project-hero{height:83svh;min-height:600px;position:relative}.project-hero .hero-shade{background:linear-gradient(0deg,#080808de,transparent 70%),linear-gradient(90deg,#08080861,transparent)}.project-hero-text{position:absolute;left:7.5%;bottom:60px;max-width:1000px}.back-link{display:inline-block;color:#e2d9ca;font-size:12px;margin-bottom:30px}.project-hero .eyebrow{margin-bottom:15px}.project-hero h1{font-size:clamp(54px,7vw,98px)}.project-hero-text>p:last-child{font-size:15px;margin-top:15px}.project-subtitle{font-family:var(--serif);font-style:italic;font-size:30px!important}.photo-credit{position:absolute;right:4%;bottom:20px;font-size:10px;color:#e2ddd4}.project-body{padding:80px 7.5% 0}.project-intro{display:grid;grid-template-columns:1fr 1fr;gap:90px;margin-bottom:90px}.project-intro .eyebrow{color:var(--accent);margin-bottom:22px}.project-intro h2{font-size:48px}.role-label{font-size:13px;color:var(--muted);margin-top:25px}.credits{margin:0}.credits>div{display:grid;grid-template-columns:145px 1fr;gap:14px;padding:9px 0;border-bottom:1px solid #30302d;font-size:13px}.credits dt{color:var(--muted)}.credits dd{margin:0}.gallery-heading{display:flex;justify-content:space-between;align-items:baseline;gap:20px;margin-bottom:30px}.gallery-heading h2{font-size:32px}.gallery-heading p{font-size:12px;color:var(--muted)}.gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:25px;align-items:start}.gallery-item{border:0;background:none;padding:0;position:relative;text-align:left;overflow:hidden}.gallery-item img{width:100%;height:auto;transition:filter .2s}.gallery-item:hover img{filter:brightness(1.07)}.gallery-item span{position:absolute;bottom:12px;right:14px;font-size:22px;text-shadow:0 1px 8px #000}.gallery-item:first-child{grid-column:1/-1}.gallery-item.portrait{justify-self:center;max-width:78%}.gallery-credit{font-size:11px;color:var(--muted);margin:24px 0 0}.next-project{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:20px;border-top:1px solid var(--line);padding:50px 0;margin-top:80px}.next-project .eyebrow{width:100%;color:var(--accent)}.next-project strong{font-family:var(--serif);font-weight:400;font-size:clamp(36px,5vw,65px);line-height:1.15}.next-project>span:last-child{font-size:35px}dialog{position:fixed;inset:0;margin:0;width:100vw;height:100svh;max-width:none;max-height:none;background:#0a0a0af7;color:var(--text);border:0;padding:65px 7% 45px;overflow:hidden}dialog::backdrop{background:#000}dialog[open]{display:flex;align-items:center;justify-content:center}dialog figure{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:15px}dialog figure img{max-width:100%;max-height:calc(100% - 50px);width:auto;height:auto;object-fit:contain}dialog figcaption{font-size:12px;color:var(--muted);text-align:center}dialog button{border:0;background:none;padding:12px}.lightbox-close{position:absolute;right:25px;top:15px;font-size:13px}.lightbox-prev,.lightbox-next{position:absolute;top:47%;font-size:30px}.lightbox-prev{left:12px}.lightbox-next{right:12px}.lightbox-count{position:absolute;top:25px;left:30px;font-size:12px;color:var(--muted)}body.modal-open{overflow:hidden}.page-heading{padding:175px 8% 70px}.page-heading .eyebrow{margin-bottom:25px;color:var(--accent)}.page-heading h1{font-size:clamp(53px,6.7vw,96px);max-width:1000px}.page-heading>p:not(.eyebrow){margin:30px 0}.about-layout{display:grid;grid-template-columns:1fr 1fr;gap:70px;padding:0 8% 100px;align-items:start}.about-layout figure{position:sticky;top:130px}.about-layout figure img{width:100%}.about-layout figcaption{font-size:11px;color:var(--muted);margin-top:16px}.prose p{margin-bottom:24px;font-size:16px;line-height:1.85;color:#cfcbc2}.prose .lead{font-family:var(--serif);font-size:24px;color:var(--text);line-height:1.5}.contact-line{margin-top:28px}.teaching-title{padding-bottom:45px}.teaching-title .text-link{margin-top:28px}.statement{max-width:790px;margin:0 auto;padding:10px 35px 95px}.statement h2{font-size:28px;margin-bottom:30px}.statement p{line-height:1.9}.statement .lead{font-size:22px;line-height:1.7}
@media(min-width:1700px){.work-section,.project-body{padding-left:max(8%,calc((100vw - 1500px)/2));padding-right:max(8%,calc((100vw - 1500px)/2))}}
@media(max-width:900px){.site-header{padding:22px 5%;gap:15px}nav{gap:18px}.wordmark{font-size:21px}.project-intro{gap:40px}.credits>div{grid-template-columns:115px 1fr}.section-top{gap:30px}.intro-small{max-width:280px}.about-layout{gap:35px}.gallery-item.portrait{max-width:100%}}
@media(max-width:700px){.site-header{padding:20px 6%}.wordmark{font-size:22px}.menu-toggle{display:flex;gap:16px;align-items:center;background:none;border:0;font-size:12px;letter-spacing:.06em;padding:5px}.menu-toggle span{font-size:22px}nav{display:none;position:absolute;top:72px;left:0;right:0;background:#10100ff5;padding:30px 7%;flex-direction:column;align-items:start;gap:20px;border-bottom:1px solid var(--line)}nav.open{display:flex}nav a{font-size:17px}.hero{height:91svh;min-height:630px}.hero-photo{object-position:58% center}.hero-shade{background:linear-gradient(0deg,#050505d4,transparent 90%),linear-gradient(90deg,#05050588,transparent)}.hero-text{left:7%;bottom:20%}.hero h1{font-size:clamp(60px,13.5vw,90px)}.hero-text .eyebrow{font-size:10px;margin-bottom:22px}.hero-caption{left:7%;bottom:26px;right:7%;font-size:11px}.hero-caption span{display:block}.work-section{padding:65px 6%}.section-top{display:block;margin-bottom:35px}.intro-small{margin-top:25px;max-width:100%;font-size:13px}.project-grid{grid-template-columns:1fr;gap:40px}.project-card.featured{grid-column:auto}.featured .card-photo,.card-photo{aspect-ratio:1.4}.card-caption h3{font-size:29px}.view-project{opacity:1;font-size:10px;padding:5px 10px;bottom:12px;right:12px}.teaching-teaser{margin:0 6%;padding:50px 0 65px}.teaching-teaser>div{display:block}.teaching-teaser .text-link{margin-top:22px}footer{padding:35px 6%;display:block}footer>div{margin-bottom:25px}footer div:nth-child(2){text-align:left}footer small{display:block;margin-top:35px;line-height:1.7}.project-hero{height:75svh;min-height:540px}.project-hero-text{left:6%;right:6%;bottom:65px}.project-hero h1{font-size:clamp(44px,11vw,70px)}.project-hero .eyebrow{font-size:9px}.photo-credit{right:6%;font-size:9px}.project-body{padding:50px 6% 0}.project-intro{grid-template-columns:1fr;gap:30px;margin-bottom:55px}.project-intro h2{font-size:38px}.credits>div{grid-template-columns:120px 1fr;font-size:12px}.gallery-heading{display:block}.gallery-heading h2{font-size:27px}.gallery-heading p{margin-top:10px}.gallery{gap:14px;grid-template-columns:1fr}.gallery-item:first-child{grid-column:auto}.gallery-item.portrait{max-width:85%}.next-project{margin-top:50px;padding:35px 0}.page-heading{padding:135px 6% 50px}.page-heading h1{font-size:54px}.about-layout{grid-template-columns:1fr;padding:0 6% 55px;gap:35px}.about-layout figure{position:static}.prose .lead{font-size:23px}.prose p{font-size:15px}.statement{padding:0 6% 60px}.statement .lead{font-size:21px}dialog{padding:65px 30px 55px}.lightbox-prev{left:0}.lightbox-next{right:0}.lightbox-prev,.lightbox-next{font-size:24px;padding:5px}.lightbox-close{right:15px}.lightbox-count{left:20px}dialog figcaption{font-size:11px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
