:root { --ink:#171714; --paper:#f3f1ec; --red:#a53d32; --line:#d3d0c8; }
* { box-sizing:border-box; } html { scroll-behavior:smooth; } body { margin:0; background:var(--paper); color:var(--ink); font-family:Arial,Helvetica,sans-serif; } a { color:inherit; text-decoration:none; } img { display:block; max-width:100%; }
.site-header { height:92px; padding:0 4vw; display:flex; align-items:center; justify-content:space-between; border-bottom:1px solid var(--line); position:relative; z-index:5; }
.wordmark { font-family:Georgia,serif; font-size:25px; letter-spacing:-.03em; } .desktop-nav { display:flex; gap:32px; font-size:12px; text-transform:uppercase; letter-spacing:.14em; } .desktop-nav a:hover { color:var(--red); } .menu-toggle,.mobile-nav{display:none}
.hero { min-height:calc(100vh - 92px); display:grid; grid-template-columns:46% 54%; } .hero-copy { padding:9vw 5vw 7vw 8vw; display:flex; flex-direction:column; justify-content:center; }
.eyebrow { margin:0 0 28px; font-size:11px; text-transform:uppercase; letter-spacing:.2em; color:#6e6a62; } h1,h2 { font-family:Georgia,"Times New Roman",serif; font-weight:400; letter-spacing:-.045em; margin:0; } h1 { font-size:clamp(58px,7vw,118px); line-height:.91; }
.intro { max-width:570px; font-family:Georgia,serif; font-size:clamp(18px,1.45vw,25px); line-height:1.55; margin:52px 0 42px; } .text-link { align-self:flex-start; border-bottom:1px solid var(--ink); padding:0 0 7px; font-size:12px; text-transform:uppercase; letter-spacing:.14em; } .text-link span { margin-left:16px; color:var(--red); }
.hero-art { margin:0; padding:6vh 5vw 5vh 2vw; background:#d8d4cc; display:flex; flex-direction:column; justify-content:center; } .hero-art img { max-height:73vh; width:100%; object-fit:contain; } .hero-art figcaption { margin-top:15px; font-size:11px; letter-spacing:.12em; text-transform:uppercase; }
.works,.vita { padding:130px 4vw; } .section-head { display:grid; grid-template-columns:1fr 2fr 2fr; align-items:end; margin-bottom:70px; } .section-head .eyebrow { margin:0; } .section-head h2,.about h2,footer h2 { font-size:clamp(48px,6vw,94px); line-height:.95; } .section-head>p:last-child { max-width:480px; font-family:Georgia,serif; font-size:18px; line-height:1.5; margin:0; } .inline-link { border-bottom:1px solid currentColor; } .inline-link:hover,.inline-link:focus-visible { color:var(--red); }
.selection-grid { display:grid; grid-template-columns:repeat(12,1fr); gap:75px 2.5vw; } .selection-card { grid-column:span 4; margin:0; } .selection-card.featured { grid-column:span 8; } .selection-image { width:100%; height:42vw; max-height:620px; border:0; padding:5%; background:#e5e2dc; display:flex; align-items:center; justify-content:center; position:relative; cursor:zoom-in; } .selection-card.featured .selection-image { height:51vw; max-height:760px; } .selection-image img { width:100%; height:100%; object-fit:contain; } .round-work .selection-image img { width:auto; height:auto; max-width:100%; max-height:100%; clip-path:circle(49% at 50% 50%); } .zoom-label { position:absolute; right:14px; bottom:14px; padding:9px 11px; background:rgba(243,241,236,.94); color:var(--ink); font-size:9px; text-transform:uppercase; letter-spacing:.12em; opacity:0; transition:opacity .25s; } .selection-image:hover .zoom-label,.selection-image:focus-visible .zoom-label { opacity:1; } .selection-card figcaption { margin-top:16px; display:flex; justify-content:space-between; gap:16px; font-size:14px; } .selection-card small { color:#777269; text-align:right; font-size:11px; max-width:55%; }
.lightbox[hidden]{display:none}.lightbox{position:fixed;inset:0;z-index:100;background:rgba(224,221,213,.98);color:#24231f;padding:26px 72px 22px;display:grid;grid-template-rows:minmax(0,1fr) auto;gap:16px;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}.lightbox-stage{min-height:0;display:flex;align-items:center;justify-content:center;padding:18px}.lightbox-stage img{width:auto;height:auto;max-width:100%;max-height:calc(100dvh - 120px);object-fit:contain;box-shadow:0 24px 70px rgba(37,34,29,.16)}.lightbox-stage img.round-work-image{clip-path:circle(49% at 50% 50%);box-shadow:none}.art-dialog-caption{display:flex;justify-content:space-between;gap:30px;padding-top:14px;border-top:1px solid #aaa59b;font-size:11px;letter-spacing:.06em}.art-dialog-caption div{display:flex;gap:20px}.art-dialog-caption strong{font-weight:400}.art-dialog-caption span{color:#6f6a61}.dialog-close,.dialog-prev,.dialog-next{position:fixed;z-index:110;width:46px;height:46px;border:1px solid #aaa59b;border-radius:50%;background:rgba(243,241,236,.72);color:#302e29;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:30px;line-height:1;transition:background .2s,color .2s,border-color .2s}.dialog-close:hover,.dialog-close:focus-visible,.dialog-prev:hover,.dialog-prev:focus-visible,.dialog-next:hover,.dialog-next:focus-visible{background:#302e29;color:#f3f1ec;border-color:#302e29}.dialog-close{top:20px;right:20px;font-size:25px}.dialog-prev{left:14px;top:50%;transform:translateY(-50%)}.dialog-next{right:14px;top:50%;transform:translateY(-50%)}
.about { display:grid; grid-template-columns:1fr 1fr; background:#24231f; color:#f2efe8; } .about-image { min-height:800px; position:relative; } .about-image img { width:100%; height:100%; object-fit:cover; filter:grayscale(100%); } .about-image small { position:absolute; left:24px; bottom:18px; font-size:10px; letter-spacing:.1em; } .about-copy { padding:10vw 8vw; align-self:center; } .about-copy .eyebrow { color:#aaa59b; } .about-copy h2 { max-width:720px; } .about-copy>p:not(.eyebrow) { font-family:Georgia,serif; font-size:19px; line-height:1.7; max-width:630px; color:#d4d0c8; } .about-copy h2 + p { margin-top:55px; }
.essay { padding:130px 8vw; display:grid; grid-template-columns:minmax(180px,1fr) minmax(0,4fr); gap:6vw; background:var(--paper); border-bottom:1px solid var(--line); } .essay-side .eyebrow { margin-top:8px; } .essay-side>span { display:block; margin-top:42px; color:#777168; font:12px/1.6 Georgia,serif; } .essay-body { max-width:1120px; } .essay blockquote { margin:0 0 70px; max-width:1060px; font:400 clamp(38px,5.2vw,78px)/1.08 Georgia,serif; letter-spacing:-.035em; } .essay-text { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:5vw; padding-top:30px; border-top:1px solid var(--line); } .essay-text p { margin:0; color:#59554e; font:17px/1.75 Georgia,serif; } .essay-credit { display:flex; align-items:flex-end; justify-content:space-between; gap:40px; margin-top:55px; padding-top:22px; border-top:1px solid var(--line); } .essay-credit div { display:flex; flex-direction:column; gap:6px; } .essay-credit strong { font:400 15px Georgia,serif; } .essay-credit div>span { color:#777168; font-size:10px; text-transform:uppercase; letter-spacing:.12em; } .essay-credit .text-link { margin-top:0; white-space:nowrap; }
.film { padding:130px 4vw; background:#dedbd3; } .film-head { display:grid; grid-template-columns:1fr 2fr 2fr; align-items:end; gap:3vw; margin-bottom:70px; } .film-head .eyebrow { margin:0; } .film-head h2 { font-size:clamp(44px,5.4vw,86px); line-height:.96; } .film-head>p:last-child { margin:0; max-width:500px; font:18px/1.6 Georgia,serif; color:#5f5b53; } .film-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:70px 3vw; } .video-card { margin:0; } .video-card-main { grid-column:1/-1; } .video-card-main .video-consent { width:min(100%,1180px); margin:0 auto; } .video-consent { position:relative; aspect-ratio:16/9; overflow:hidden; background:#181714; } .video-consent>img { width:100%; height:100%; object-fit:cover; filter:grayscale(100%) brightness(.45); } .video-overlay { position:absolute; inset:0; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:24px; padding:8%; text-align:center; color:#f3f1ec; } .video-load { border:1px solid rgba(255,255,255,.75); border-radius:999px; padding:16px 24px; background:rgba(18,18,16,.42); color:inherit; font:11px Arial,Helvetica,sans-serif; text-transform:uppercase; letter-spacing:.15em; cursor:pointer; } .video-load span { margin-right:12px; color:#d0675c; } .video-load:hover,.video-load:focus-visible { background:#f3f1ec; color:#171714; } .video-overlay p { margin:0; max-width:500px; font-size:10px; line-height:1.55; letter-spacing:.05em; color:#d4d0c8; } .video-consent iframe { display:block; width:100%; height:100%; border:0; } .video-caption { padding-top:20px; border-top:1px solid #aaa69d; margin-top:20px; } .video-caption span { display:block; margin-bottom:12px; color:#777168; font-size:10px; text-transform:uppercase; letter-spacing:.15em; } .video-caption h3 { margin:0 0 12px; font:400 clamp(24px,2.4vw,38px)/1.08 Georgia,serif; } .video-caption p { margin:0; max-width:660px; color:#625e56; font:15px/1.55 Georgia,serif; }
.audio-panel { position:relative; aspect-ratio:16/9; overflow:hidden; background:#181714; } .audio-panel>img { width:100%; height:100%; object-fit:cover; filter:grayscale(100%) brightness(.36); } .audio-overlay { position:absolute; inset:0; display:flex; flex-direction:column; justify-content:center; align-items:center; gap:28px; padding:8%; color:#f3f1ec; text-align:center; } .audio-overlay>span { font-size:10px; text-transform:uppercase; letter-spacing:.2em; } .audio-overlay audio { width:min(440px,92%); color-scheme:dark; }
.vita-grid { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:70px 6vw; border-top:1px solid var(--line); padding-top:55px; } .vita-grid>div { grid-column:span 2; } .vita-grid>.vita-wide { grid-column:span 3; } .vita h3 { font:400 22px Georgia,serif; margin:0 0 36px; } dl { margin:0; } dl div { display:grid; grid-template-columns:86px 1fr; padding:14px 0; border-top:1px solid var(--line); font-size:13px; line-height:1.55; } dt { color:var(--red); } dd { margin:0; }
.catalogs { padding:110px 4vw 130px; background:#dedbd3; } .catalogs-head { display:grid; grid-template-columns:1fr 4fr; align-items:end; margin-bottom:58px; } .catalogs-head .eyebrow { margin:0; } .catalogs-head h2 { font-size:clamp(48px,6vw,94px); line-height:.95; } .catalog-row { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:3vw; } .catalog-card { min-width:0; } .catalog-cover { aspect-ratio:4/5; padding:8%; background:#cbc7be; display:flex; align-items:center; justify-content:center; overflow:hidden; } .catalog-cover img { display:block; max-width:100%; max-height:100%; width:auto; height:auto; object-fit:contain; box-shadow:0 18px 34px rgba(31,29,25,.2); } .catalog-meta { border-top:1px solid #aaa69d; padding-top:22px; margin-top:20px; } .catalog-meta>span { display:block; margin-bottom:12px; color:#777168; font-size:10px; text-transform:uppercase; letter-spacing:.15em; } .catalog-meta h3 { margin:0 0 12px; font:400 clamp(22px,2vw,34px)/1.08 Georgia,serif; } .catalog-meta p { margin:0 0 20px; color:#625e56; font:14px/1.6 Georgia,serif; } .catalog-meta a { display:inline-flex; gap:10px; padding-bottom:7px; border-bottom:1px solid currentColor; font-size:10px; text-transform:uppercase; letter-spacing:.12em; }
footer { min-height:70vh; padding:110px 4vw 34px; background:#a33b31; color:#f5ece7; display:grid; grid-template-columns:1fr 1fr; position:relative; } footer .eyebrow { color:#e0b6af; } footer p { line-height:1.7; } footer .text-link { border-color:#f5ece7; margin-top:20px; } footer .text-link span { color:#f5ece7; } .footer-mark { justify-self:end; font:400 clamp(80px,14vw,210px)/.73 Georgia,serif; letter-spacing:-.08em; text-align:right; } .legal { position:absolute; left:4vw; right:4vw; bottom:28px; border-top:1px solid rgba(255,255,255,.35); padding-top:18px; display:flex; justify-content:space-between; font-size:10px; text-transform:uppercase; letter-spacing:.12em; } .legal-links { display:flex; gap:24px; } .legal-links a:hover { opacity:.65; }
@media(max-width:1180px) and (min-width:851px){.catalog-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:65px 4vw}}
.legal-page { min-height:100vh; background:var(--paper); } .legal-header { height:92px; padding:0 4vw; display:flex; align-items:center; justify-content:space-between; border-bottom:1px solid var(--line); } .legal-header>a:last-child { font-size:11px; text-transform:uppercase; letter-spacing:.15em; } .legal-page article { width:min(820px,88vw); margin:0 auto; padding:100px 0 130px; } .legal-page h1 { margin-bottom:75px; } .legal-page section { display:grid; grid-template-columns:250px 1fr; gap:35px; padding:30px 0; border-top:1px solid var(--line); } .legal-page section h2 { font:400 20px Georgia,serif; letter-spacing:-.02em; } .legal-page section p { margin:0 0 14px; font-size:14px; line-height:1.75; } .legal-page section a { border-bottom:1px solid currentColor; } .legal-date { margin-top:42px; color:#6e6a62; font-size:11px; text-transform:uppercase; letter-spacing:.13em; }
.back-to-top{display:none}
@media(max-width:850px){.site-header{height:74px;padding:0 6vw;background:var(--paper);z-index:95}.desktop-nav{display:none}.menu-toggle{display:flex;align-items:center;gap:12px;border:0;padding:12px 0;background:transparent;color:var(--ink);font:10px/1 Arial,Helvetica,sans-serif;text-transform:uppercase;letter-spacing:.16em;cursor:pointer}.menu-toggle-icon{position:relative;width:24px;height:14px;display:block}.menu-toggle-icon i{position:absolute;left:0;width:24px;height:1px;background:currentColor;transition:top .24s ease,transform .24s ease}.menu-toggle-icon i:first-child{top:3px}.menu-toggle-icon i:last-child{top:10px}.site-header.menu-open .menu-toggle-icon i:first-child{top:7px;transform:rotate(45deg)}.site-header.menu-open .menu-toggle-icon i:last-child{top:7px;transform:rotate(-45deg)}.mobile-nav{position:absolute;top:73px;left:0;right:0;display:grid;padding:14px 6vw 24px;background:rgba(243,241,236,.98);border-bottom:1px solid var(--line);box-shadow:0 24px 45px rgba(37,34,29,.1);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);opacity:0;visibility:hidden;transform:translateY(-10px);pointer-events:none;transition:opacity .22s ease,transform .22s ease,visibility .22s}.site-header.menu-open .mobile-nav{opacity:1;visibility:visible;transform:translateY(0);pointer-events:auto}.mobile-nav a{display:flex;align-items:center;justify-content:space-between;padding:15px 0;border-top:1px solid var(--line);font:400 20px/1.2 Georgia,serif;letter-spacing:-.015em}.mobile-nav a::after{content:"↘";color:var(--red);font:14px/1 Arial,Helvetica,sans-serif}.hero{grid-template-columns:1fr}.hero-copy{padding:100px 6vw}.hero-art{padding:50px 6vw}.section-head{grid-template-columns:1fr;gap:20px}.selection-card,.selection-card.featured{grid-column:span 12}.selection-image,.selection-card.featured .selection-image{height:110vw}.zoom-label{opacity:1}.selection-card figcaption{flex-direction:column}.selection-card small{max-width:100%;text-align:left}.lightbox{padding:64px 16px 18px}.art-dialog-caption div{flex-direction:column;gap:4px}.dialog-prev,.dialog-next{width:40px;height:40px}.about{grid-template-columns:1fr}.about-image{min-height:520px}.about-copy{padding:90px 6vw}.essay{grid-template-columns:1fr;padding:90px 6vw;gap:48px}.essay-side>span{margin-top:24px}.essay blockquote{margin-bottom:50px}.essay-text{grid-template-columns:1fr;gap:28px}.essay-credit{align-items:flex-start;flex-direction:column;gap:26px}.film{padding:90px 6vw}.film-head{grid-template-columns:1fr;gap:20px;margin-bottom:50px}.film-grid{grid-template-columns:1fr;gap:60px}.video-card-main{grid-column:auto}.vita-grid,.catalog-row{grid-template-columns:1fr;gap:60px}.vita-grid>div,.vita-grid>.vita-wide{grid-column:1}.works,.vita,.catalogs{padding:90px 6vw}footer{grid-template-columns:1fr;gap:80px}.footer-mark{justify-self:start;text-align:left}.legal{position:static;grid-column:1;flex-direction:column;gap:14px;margin-top:60px}.legal-page article{padding:70px 0 100px}.legal-page section{grid-template-columns:1fr;gap:12px}.legal-header{height:74px;padding:0 6vw}.back-to-top{position:fixed;right:16px;bottom:calc(18px + env(safe-area-inset-bottom));z-index:90;width:48px;height:48px;border:1px solid rgba(65,61,54,.35);border-radius:50%;display:flex;align-items:center;justify-content:center;background:rgba(243,241,236,.88);color:#302e29;box-shadow:0 10px 28px rgba(37,34,29,.14);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);font:22px/1 Georgia,serif;opacity:0;transform:translateY(12px);pointer-events:none;transition:opacity .24s ease,transform .24s ease,background .2s ease}.back-to-top.is-visible{opacity:1;transform:translateY(0);pointer-events:auto}.back-to-top:active{background:#302e29;color:#f3f1ec}}
@media(max-width:850px){.catalogs-head{grid-template-columns:1fr;gap:20px;margin-bottom:44px}.catalog-cover{aspect-ratio:1/1}}
