:root{--paper:#f8f7f3;--ink:#20251f;--muted:#817a6b;--line:#dcded6}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid #aa8b42;outline-offset:5px}header{height:112px;display:flex;align-items:center;justify-content:space-between;padding:0 4.5%;z-index:2;border-bottom:1px solid var(--line)}header.overlay{position:absolute;inset:0 0 auto;color:white;border:0}.brand{text-align:center;font-size:25px;letter-spacing:-1px;font-weight:800}.brand span{display:block;font-size:8px;letter-spacing:2.1px;margin-top:6px;font-weight:400}.navlink,.eyebrow,.line-link{font-size:11px;letter-spacing:2.2px;text-transform:uppercase}.navlink{padding-bottom:7px;border-bottom:1px solid currentColor}.hero{height:100svh;min-height:620px;position:relative;color:white;background:#20251f}.hero video,.shade{position:absolute;width:100%;height:100%;object-fit:cover}.shade{background:linear-gradient(180deg,#0005,#0003 40%,#0008)}.hero-copy{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;padding:100px 24px}.hero h1{font-size:clamp(46px,5.5vw,86px);line-height:1.05;font-weight:400;letter-spacing:-2px;margin:24px 0 40px}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:400}em{font-weight:400}.line-link{border-bottom:1px solid #fff9;padding:14px 0}.line-link span{margin-left:25px}.video-controls{position:absolute;bottom:34px;left:4.5%;display:flex;gap:10px}.video-controls button{color:white;background:#0003;border:1px solid #fff7;padding:10px 14px;font-size:11px}.hero-note{position:absolute;right:4.5%;bottom:45px;font-size:10px;letter-spacing:2px}.projects,.performances{max-width:1320px;margin:auto;padding:100px 7%}.section-title{margin-bottom:60px}.section-title h2{font-size:clamp(38px,4vw,60px);line-height:1.08;margin:20px 0}.eyebrow{color:var(--muted)}.hero .eyebrow,footer .eyebrow{color:inherit}.grid{display:grid;grid-template-columns:1fr 1fr;gap:80px 10%}.project:nth-child(even){margin-top:100px}.project h3{font-size:42px;margin:18px 0 27px;display:flex;align-items:center;justify-content:space-between}.project h3 span{font:26px Arial;transition:transform .3s}.photo{overflow:hidden;background:#e6e4dd}.photo img{width:100%;height:460px;object-fit:cover;display:block;transition:transform .7s}.project:nth-child(1) img,.project:nth-child(3) img{object-fit:contain;background:#18211d}.project:hover img{transform:scale(1.035)}.project-bottom{border-bottom:1px solid var(--line);display:flex;justify-content:space-between;padding:21px 0;font-size:10px;letter-spacing:1.7px}footer{background:#243b31;color:#fff;text-align:center;padding:80px 6% 22px}footer h2{font-size:clamp(34px,4.7vw,66px);line-height:1.12;margin:30px 0}.pill{display:inline-flex;border:1px solid #ffffff90;border-radius:40px;padding:18px 27px;gap:40px;align-items:center;font-size:12px;position:relative;overflow:hidden;transition:background .3s,color .3s,transform .3s}.pill:hover{background:#fff;color:#243b31;transform:translateY(-2px)}.pill span{font-size:20px}.contacts{display:flex;justify-content:center;gap:40px;margin:60px 0;font-size:13px}.contacts a:hover{text-decoration:underline}.bottom{display:flex;justify-content:space-between;border-top:1px solid #ffffff30;padding:22px 0 0;font-size:10px;color:#d0d7d2}.artist{display:grid;grid-template-columns:1fr 1fr;min-height:680px;max-width:1500px;margin:auto}.artist-copy{padding:60px 12%;display:flex;align-items:flex-start;flex-direction:column;justify-content:center}.back{margin-bottom:65px}.artist h1{font-size:clamp(50px,6vw,88px);letter-spacing:-2px;line-height:1;margin:16px 0 25px}.intro-text{font-family:Georgia,serif;font-size:24px;line-height:1.5;color:#716f65}.dark{border-color:var(--ink);margin-top:15px}.dark:hover{background:var(--ink);color:white}.print-button{background:none;border:0;border-bottom:1px solid #bbb;padding:10px 0;margin-top:26px;font-size:11px}.artist-photo{margin:0;padding:35px 35px 35px 0;display:flex;align-items:center;justify-content:center}.artist-photo img{width:100%;max-height:760px;object-fit:contain}.performances{border-top:1px solid var(--line)}.player-layout{display:grid;grid-template-columns:2fr 1fr;gap:35px}iframe{width:100%;aspect-ratio:16/10;border:0;background:#151a17}.playlist{max-height:480px;overflow:auto}.video-choice{background:transparent;border:0;border-bottom:1px solid var(--line);padding:20px 14px;display:flex;justify-content:space-between;width:100%;text-align:left;font-size:12px}.video-choice.active{background:var(--ink);color:white}.external{display:inline-block;margin:16px 0;font-size:12px;text-decoration:underline}.next{display:flex;justify-content:space-between;align-items:center;padding:50px 7%;border-top:1px solid var(--line)}.next>span:last-child{font:36px Georgia}.print-videos{display:none}.skip{position:fixed;top:-100px;z-index:10;background:white;color:black;padding:10px}.skip:focus{top:0}@media(max-width:700px){header{height:90px;padding:0 20px}.brand{font-size:18px}.brand span{font-size:6px}.navlink{font-size:9px;letter-spacing:1px}.hero{min-height:560px}.hero-note{display:none}.hero h1{letter-spacing:-1px}.projects,.performances{padding:65px 24px}.grid{gap:45px;grid-template-columns:1fr}.project:nth-child(even){margin-top:0}.photo img{height:auto;max-height:580px;object-fit:contain}.project h3{font-size:36px}.section-title{margin-bottom:40px}.contacts{flex-direction:column;gap:22px;margin:40px 0}.artist{grid-template-columns:1fr}.artist-copy{padding:40px 24px}.back{margin-bottom:30px}.artist-photo{padding:0 24px 40px}.artist-photo img{max-height:550px}.player-layout{grid-template-columns:1fr}.playlist{max-height:280px}.next{gap:25px}.next>span:last-child{font-size:26px}footer{padding-top:60px}.bottom{gap:20px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}.video-deck{overflow:hidden}.slides{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;gap:25px}.slides::-webkit-scrollbar{display:none}.slide{flex:0 0 100%;scroll-snap-align:start;min-width:0}.screen{aspect-ratio:16/9;background:#17231d;position:relative;overflow:hidden}.screen>img{width:100%;height:100%;object-fit:contain;opacity:.45}.play-slide{position:absolute;inset:0;border:0;background:transparent;color:white;display:flex;gap:20px;flex-direction:column;align-items:center;justify-content:center;font-size:11px;letter-spacing:2px}.play-slide>span{border:1px solid #fff9;border-radius:50%;width:80px;height:80px;display:grid;place-items:center;font-size:38px;transition:background .3s,transform .3s}.play-slide:hover>span{background:#fff3;transform:scale(1.08)}.screen iframe{height:100%;width:100%;position:absolute;inset:0}.slide-caption{display:flex;justify-content:space-between;padding:20px 0;font-size:12px}.slide-caption a{font-size:11px;color:#676d65}.deck-controls{border-top:1px solid var(--line);padding:20px 0;display:flex;align-items:center;justify-content:space-between}.deck-count{font-size:12px;letter-spacing:2px}.deck-controls button{border:1px solid #a5ada5;border-radius:50%;background:transparent;width:52px;height:52px;font-size:24px;margin-left:10px;transition:background .3s,color .3s}.deck-controls button:hover{background:var(--ink);color:white}.deck-controls button:disabled{opacity:.25;cursor:default}@media(max-width:700px){.screen{aspect-ratio:4/5}.slide-caption{font-size:11px;gap:10px}}@media(prefers-reduced-motion:reduce){.slides{scroll-behavior:auto}}
/* Landscape project photography and vertical performance playlist. */
.project .photo{aspect-ratio:3/2}.project .photo img,.project:nth-child(1) .photo img,.project:nth-child(3) .photo img{width:100%;height:100%;max-height:none;object-fit:cover}.performance-list{border-top:1px solid var(--line)}.performance-item{border-bottom:1px solid var(--line)}.performance-toggle{width:100%;display:grid;grid-template-columns:40px 140px 1fr 54px;align-items:center;gap:26px;padding:24px 20px;border:0;background:transparent;color:var(--ink);text-align:left;position:relative;isolation:isolate}.performance-toggle:before{content:'';position:absolute;inset:0;background:#e8ece5;transform:scaleX(0);transform-origin:left;transition:transform .5s cubic-bezier(.22,1,.36,1);z-index:-1}.performance-toggle:hover:before,.performance-toggle:focus-visible:before,.performance-toggle[aria-expanded=true]:before{transform:scaleX(1)}.track-number{font-size:12px;color:var(--muted);letter-spacing:2px}.track-thumb{aspect-ratio:3/2;overflow:hidden}.track-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.22,1,.36,1)}.performance-toggle:hover .track-thumb img{transform:scale(1.08)}.track-title{display:grid;gap:10px;transition:transform .4s}.track-title small{text-transform:uppercase;letter-spacing:2px;font-size:10px;color:var(--muted)}.track-title strong{font:30px Georgia,serif}.performance-toggle:hover .track-title{transform:translateX(6px)}.track-play{display:grid;place-items:center;width:50px;height:50px;border:1px solid #abb5a8;border-radius:50%;font-size:24px;transition:background .35s,color .35s,transform .35s}.performance-toggle:hover .track-play,.performance-toggle[aria-expanded=true] .track-play{background:#243b31;color:white;transform:rotate(45deg)}.track-panel{padding:0 20px 28px}.track-panel:not([hidden]){animation:reveal-video .4s ease both}.track-player{aspect-ratio:16/9;background:#18211d}.track-player iframe{display:block;width:100%;height:100%;border:0}.track-panel>a{display:inline-block;font-size:12px;margin-top:16px;text-decoration:underline}@keyframes reveal-video{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@media(max-width:700px){.performance-toggle{grid-template-columns:22px 72px 1fr 34px;gap:12px;padding:18px 0}.track-title strong{font-size:20px}.track-title small{font-size:8px;letter-spacing:1px}.track-play{width:32px;height:32px;font-size:18px}.track-number{font-size:10px}.track-panel{padding:0 0 22px}.track-player{aspect-ratio:4/3}.performance-toggle:hover .track-title{transform:none}}@media(prefers-reduced-motion:reduce){.track-panel:not([hidden]){animation:none}}
/* Editorial type, restrained motion and monochrome contact section. */
.hero h1{font-family:Arial,Helvetica,sans-serif;font-size:clamp(42px,6.8vw,104px);font-weight:500;line-height:1.02;letter-spacing:-.055em;max-width:1200px;text-wrap:balance}.hero h1 em{font-family:Georgia,serif;letter-spacing:-.045em;font-weight:400}.hero-copy>.eyebrow{letter-spacing:.3em;font-size:10px}.hero .line-link{margin-top:12px}.projects>.section-title{margin-bottom:40px;border-bottom:1px solid var(--line);padding-bottom:20px}.project h3{letter-spacing:-.035em}.projects{padding-top:70px}footer{background:#080808;text-align:left;padding:90px 7% 25px}footer>.eyebrow{color:#aaa;letter-spacing:.23em}footer h2{font-family:Arial,Helvetica,sans-serif;font-size:clamp(38px,5.9vw,90px);line-height:1.08;letter-spacing:-.05em;font-weight:400;margin:35px 0 45px}.word-window{display:inline-grid;min-width:3.15em;overflow:hidden;vertical-align:bottom;padding-right:.08em}.changing-word{display:block;font-family:Georgia,serif;font-weight:400;transition:transform .45s cubic-bezier(.22,1,.36,1),opacity .35s;will-change:transform}.changing-word.leaving{transform:translateY(-110%);opacity:0}.changing-word.entering{transform:translateY(110%);opacity:0}.contacts{display:grid;grid-template-columns:1fr 1.3fr 1fr;gap:38px;margin:90px 0 65px}.contacts>a{display:flex;flex-direction:column;gap:19px;border-top:1px solid #404040;padding-top:22px;min-width:0}.contacts>a>span:last-child{display:flex;align-items:center;gap:12px;font-size:clamp(13px,1.4vw,20px);letter-spacing:-.025em}.contact-label{font-size:9px;letter-spacing:.2em;color:#aaa}.contacts b{font-weight:400;margin-left:auto;transition:transform .3s}.contacts a:hover{text-decoration:none}.contacts a:hover b{transform:translate(3px,-3px)}.instagram-link svg{width:21px;height:21px;flex-shrink:0}footer .pill:hover{color:#080808}footer .bottom{color:#999}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:700px){.hero h1{font-size:clamp(39px,9vw,63px);letter-spacing:-.05em}.hero-copy{padding-inline:20px}.contacts{grid-template-columns:1fr;gap:28px;margin:60px 0 45px}.contacts>a>span:last-child{font-size:18px}.contacts>a{gap:13px}footer{padding:65px 24px 22px}footer h2{font-size:clamp(36px,8.8vw,57px)}.word-window{min-width:3.15em}}@media(prefers-reduced-motion:reduce){.changing-word{transition:none}}
/* Whole-word motion keeps italic side bearings inside a padded mask. */
.project h3 .project-name{display:inline-grid;overflow:hidden;padding:.12em .18em;margin:-.12em -.18em;font:inherit;letter-spacing:inherit;line-height:1.35;min-width:0}
.project h3 .name-front,.project h3 .name-back{grid-area:1/1;font:inherit;white-space:nowrap;transition:transform .75s cubic-bezier(.22,1,.36,1),opacity .6s;transform:translateY(0)}
.project h3 .name-back{font-style:italic;color:#8c6e47;transform:translateY(125%);opacity:0}
.project:is(:hover,:focus-visible) .name-front{transform:translateY(-125%);opacity:0}
.project:is(:hover,:focus-visible) .name-back{transform:translateY(0);opacity:1}
.project h3 .project-arrow{transition:transform .5s;flex-shrink:0;margin-left:12px}
.project:is(:hover,:focus-visible) .project-arrow{transform:translate(5px,-5px)}
.word-window{min-width:0;overflow:visible;line-height:1.2;vertical-align:baseline;padding:0 .1em;margin-right:-.1em}
.changing-word{grid-area:1/1;transition:opacity .85s ease,transform .95s cubic-bezier(.22,1,.36,1);transform:translateY(0);opacity:1}
.changing-word+ .changing-word{opacity:0;transform:translateY(.25em)}
.word-window.is-alternate .changing-word:first-child{opacity:0;transform:translateY(-.25em)}
.word-window.is-alternate .changing-word:last-child{opacity:1;transform:translateY(0)}
.contacts>a.instagram-link{justify-content:center;align-items:flex-start}
.contacts .instagram-symbol{display:grid;place-items:center;width:44px;height:44px;transition:opacity .3s}
.instagram-link .instagram-symbol svg{width:28px;height:28px}
.instagram-link:hover .instagram-symbol{opacity:.65}
@media(max-width:400px){.brand{font-size:17px}.brand span{display:none}.navlink{letter-spacing:.7px}.project h3{font-size:32px}}
@media(prefers-reduced-motion:reduce){.changing-word,.project h3 .name-front,.project h3 .name-back{transition:none}}
