:root{--paper:#efefeb;--ink:#242422;--sub:#666763;--line:#bdbeb9;--dark:#050509;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;color:var(--ink);background:var(--paper)}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);font-weight:300;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
button{font:inherit}
img,video{display:block;max-width:100%}
::selection{background:#d0cfd0;color:#171717}
:focus-visible{outline:2px solid #222;outline-offset:4px}
.skip-link{position:absolute;top:-100px;left:15px;z-index:30;padding:10px;background:#fff;color:#000}
.skip-link:focus{top:10px}
.page-width{width:min(100% - 80px,1440px);margin-inline:auto}
.site-header{height:86px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line)}
.wordmark{font-size:18px;font-weight:500;letter-spacing:.15em;white-space:nowrap}
.wordmark-period{color:#777}
.site-header nav{display:flex;gap:40px;font-size:12px;letter-spacing:.02em}
.site-header nav a,.site-footer a{border-bottom:1px solid transparent;transition:border-color .2s}
.site-header nav a:hover,.site-footer a:hover{border-color:currentColor}
.rule-row{display:grid;grid-template-columns:1fr 1fr 1fr;gap:20px;align-items:center;padding:16px 0;border-bottom:1px solid var(--line);color:var(--sub);font-size:11px;letter-spacing:.02em}
.rule-row span:nth-child(2){text-align:center}.rule-row span:last-child{text-align:right}
.project-intro{padding-top:39px;padding-bottom:62px}
.intro-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:70px;align-items:end;min-height:320px}
.kicker,.section-label{margin:0 0 24px;color:var(--sub);font-size:11px;letter-spacing:.03em}
h1,h2,p{font-weight:300}
h1{margin:0;font-size:clamp(85px,10vw,160px);letter-spacing:-.075em;line-height:.94}
.intro-detail{max-width:510px;justify-self:end;padding-bottom:8px}
.intro-detail p{margin:0 0 34px;font-size:clamp(19px,1.8vw,26px);line-height:1.4;letter-spacing:-.025em}
.text-link{display:inline-flex;align-items:center;gap:22px;border-bottom:1px solid var(--ink);padding-bottom:6px;font-size:13px;font-weight:400;transition:gap .2s}
.text-link:hover{gap:30px}
.motion{margin-top:0}
.video-stage{height:min(67vw,755px);min-height:520px;display:flex;align-items:center;justify-content:center;background:var(--dark);overflow:hidden}
.video-stage video{height:100%;width:100%;object-fit:contain;background:var(--dark)}
.media-caption{display:flex;justify-content:space-between;gap:20px;padding:14px 0 18px;border-bottom:1px solid var(--line);font-size:11px;color:var(--sub)}
.media-caption span:first-child{color:var(--ink)}
.project-notes,.studio,.contact{display:grid;grid-template-columns:33% 1fr;gap:30px;border-top:1px solid var(--line)}
.project-notes{margin-top:112px;padding-top:24px;padding-bottom:125px}
.project-notes>div:last-child,.studio>div:last-child,.contact>div:last-child{max-width:820px}
.project-notes h2,.studio h2,.contact h2{margin:0 0 28px;font-size:clamp(39px,4.8vw,69px);line-height:1.08;letter-spacing:-.055em}
.project-notes p,.studio p{max-width:710px;margin:0 0 30px;font-size:20px;line-height:1.55;letter-spacing:-.017em}
.section-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;padding-top:22px;border-top:1px solid var(--line);margin-bottom:38px}
.section-heading .section-label{margin-bottom:16px}
.section-heading h2{margin:0;font-size:clamp(42px,5vw,70px);letter-spacing:-.06em;line-height:1}
.section-heading p{margin:0 0 5px;color:var(--sub);font-size:12px}
.still-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:24px;row-gap:68px}
.still{margin:0}
.still button{display:block;width:100%;padding:0;border:0;background:var(--dark);cursor:zoom-in}
.still img{width:100%;height:auto;aspect-ratio:821/809;object-fit:contain;background:var(--dark)}
.still figcaption{display:flex;justify-content:space-between;gap:18px;padding-top:12px;border-top:1px solid var(--line);margin-top:13px;font-size:11px;color:var(--sub)}
.still figcaption span:last-child{color:var(--ink)}
.stills{padding-bottom:140px}
.studio{padding-top:25px;padding-bottom:115px}
.studio h2{font-size:clamp(49px,6vw,86px)}
.contact{padding-top:25px;padding-bottom:130px}
.contact h2{font-size:clamp(40px,5vw,66px)}
.contact a{display:inline-block;padding-bottom:7px;border-bottom:1px solid var(--ink);font-size:clamp(23px,3vw,40px);letter-spacing:-.035em;overflow-wrap:anywhere}
.contact a span{font-size:.62em;vertical-align:top}
.site-footer{display:flex;justify-content:space-between;gap:20px;padding-top:20px;padding-bottom:35px;border-top:1px solid var(--line);font-size:11px;color:var(--sub)}
.lightbox{max-width:min(90vw,900px);max-height:95vh;padding:0;border:0;background:transparent;color:#fff}
.lightbox::backdrop{background:rgba(0,0,0,.93)}
.lightbox img{max-height:calc(95vh - 45px);width:auto;object-fit:contain}
.lightbox p{margin:10px 0;text-align:center;font-size:11px}
.lightbox-close{position:absolute;top:0;right:0;width:42px;height:42px;border:0;background:#efefeb;color:#242422;font-size:27px;cursor:pointer}
@media(max-width:900px){.page-width{width:min(100% - 48px,1440px)}.intro-grid{gap:30px;min-height:290px}.intro-detail p{font-size:19px}.project-notes,.studio,.contact{grid-template-columns:27% 1fr}.video-stage{min-height:440px}.still-grid{column-gap:15px;row-gap:46px}}
@media(max-width:650px){.page-width{width:min(100% - 32px,1440px)}.site-header{height:72px}.wordmark{font-size:14px}.site-header nav{gap:15px;font-size:11px}.project-intro{padding-top:12px;padding-bottom:38px}.rule-row{font-size:10px}.rule-row span:nth-child(2){display:none}.rule-row{grid-template-columns:1fr 1fr}.intro-grid{grid-template-columns:1fr;gap:29px;min-height:0;padding-top:60px}.kicker{margin-bottom:14px}.intro-grid h1{font-size:clamp(68px,15vw,100px)}.intro-detail{justify-self:start}.intro-detail p{margin-bottom:22px}.video-stage{height:auto;min-height:0;aspect-ratio:1/1}.media-caption{flex-direction:column;gap:4px;font-size:10px}.project-notes,.studio,.contact{grid-template-columns:1fr;gap:22px}.project-notes{margin-top:83px;padding-bottom:85px}.project-notes h2,.studio h2,.contact h2{font-size:43px}.project-notes p,.studio p{font-size:18px}.section-heading{align-items:start;flex-direction:column;gap:10px;margin-bottom:25px}.section-heading p{font-size:11px}.still-grid{grid-template-columns:1fr;row-gap:43px}.stills{padding-bottom:93px}.studio{padding-bottom:82px}.contact{padding-bottom:90px}.site-footer{flex-wrap:wrap;font-size:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition-duration:.01ms!important}.video-stage video{display:none}.video-stage{background:#050509 url('./assets/spectrum.webp') center/contain no-repeat}}
