:root{--paper:#f8f8f6;--ink:#191919;--accent:#1947c7;font-family:"Century Gothic",CenturyGothic,AppleGothic,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}*{box-sizing:border-box}html,body{margin:0}body{text-transform:uppercase}::selection{background:var(--accent);color:white}.intro{height:100svh;position:relative;background:white;display:grid;place-items:center}.intro video{display:block;width:100%;height:100%;object-fit:contain}.intro button{position:absolute;bottom:32px;background:var(--paper);border:1px solid;padding:16px;font:inherit}.gallery{position:relative}.stage{height:100svh;position:sticky;top:0;overflow:hidden;display:flex;align-items:center;background:var(--paper)}.track{display:flex;align-items:center;width:max-content;will-change:transform}.track figure{margin:0;flex:none;width:72vw;height:78svh;overflow:hidden}.track figure:nth-of-type(3n){width:54vw}.track figure:nth-of-type(4n){width:85vw}.track img{height:100%;width:100%;object-fit:cover;display:block}.statement{width:86vw;flex:none;height:78svh;display:flex;align-items:center;padding:5vw}.statement h2{font-weight:400;font-size:clamp(32px,5.4vw,88px);line-height:1.14;letter-spacing:-.055em;margin:0}.eye{font-size:.67em;vertical-align:middle;letter-spacing:0}.statement-low{align-items:flex-end;padding-bottom:5svh}.period{color:var(--accent)}.contact{min-height:100svh;padding:12svh 6vw 32px;display:flex;flex-direction:column;justify-content:center}.contact h2{font-size:clamp(42px,8vw,130px);font-weight:400;letter-spacing:-.06em;margin:0 0 50px}.contact>a{color:inherit;font-size:clamp(20px,3.4vw,56px);width:fit-content;text-decoration:none;border-bottom:1px solid;padding-bottom:12px;letter-spacing:-.035em}.contact>a span{display:inline-block;margin-left:20px;transition:transform .18s}.contact>a:hover span{transform:translate(4px,-4px)}a:focus-visible,button:focus-visible{outline:3px solid var(--accent);outline-offset:8px}a:active{opacity:.6}footer{margin-top:auto;padding-top:100px;display:flex;justify-content:space-between;gap:24px;font-size:12px;letter-spacing:.08em}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.skip{position:fixed;left:20px;top:20px;transform:translateY(-200%);z-index:10;background:white;color:var(--ink);padding:12px}.skip:focus{transform:none}@media(max-width:700px){.track figure,.track figure:nth-of-type(n){width:90vw;height:65svh}.statement{width:100vw;height:65svh;padding:8vw}.statement h2{font-size:clamp(30px,8vw,55px);letter-spacing:-.05em}.statement-low{padding-bottom:4svh}.contact{padding:15svh 7vw 24px}.contact h2{margin-bottom:32px}.contact>a span{margin-left:6px}footer{flex-direction:column;font-size:10px;line-height:1.6}}@media(prefers-reduced-motion:reduce){.gallery{height:auto!important}.stage{height:auto;position:relative;overflow:visible}.track{width:100%;display:block;transform:none!important;will-change:auto}.track figure,.track figure:nth-of-type(n),.statement{width:100%;height:70svh}.intro video{object-fit:contain}}

/* Photo titles and contact revision */
.track figure{position:relative}.photo-title{position:absolute;z-index:1;color:#fff;font-weight:400;line-height:1.16;letter-spacing:-.035em;font-size:clamp(30px,4.2vw,70px);margin:0;max-width:90%;text-shadow:0 2px 18px #0008;opacity:var(--title-opacity,1);transform:translateY(var(--title-y,0px));will-change:transform,opacity}.title-high .photo-title{top:9%;left:7%}.title-low .photo-title{bottom:9%;right:7%;text-align:right}.with-title:after{content:"";position:absolute;inset:0;pointer-events:none}.title-high:after{background:linear-gradient(145deg,#0006,transparent 65%)}.title-low:after{background:linear-gradient(325deg,#0007,transparent 65%)}.photo-title{z-index:2}
.contact{background:#0b0c0c;color:#e5e7e7;min-height:90svh;display:grid;grid-template-columns:1fr 1fr;align-items:start;gap:10vw;padding:15svh 6vw 12svh}.contact h2{font-size:clamp(30px,3.1vw,54px);letter-spacing:.035em;margin:0 0 64px}.contact-info{display:flex;flex-direction:column;align-items:flex-start}.contact a{color:#a3adb2;text-decoration:none}.contact .email{font-size:13px;letter-spacing:.025em;border:0;padding:0}.instagram{margin-top:32px;display:grid;place-items:center;width:44px;height:44px;margin-left:-10px}.contact a:hover{color:white}.contact form{display:flex;flex-direction:column;padding-top:8px}.contact label{color:#a3adb2;font-size:11px;letter-spacing:.15em}.contact input,.contact textarea{font:inherit;color:#eef0f0;background:transparent;border:0;border-bottom:1px solid #303434;border-radius:0;padding:14px 0;min-width:0;width:100%;text-transform:none}.contact input{margin-bottom:38px}.contact textarea{margin:18px 0 36px;resize:vertical;font-size:14px;line-height:1.6}.contact textarea::placeholder{font-size:11px;color:#a3adb2;letter-spacing:.15em}.contact input:focus,.contact textarea:focus{outline:0;border-color:#e5e7e7}.contact button{font:inherit;font-size:11px;letter-spacing:.12em;color:#e5e7e7;background:transparent;border:1px solid #4a4e4e;padding:19px 24px;align-self:start;cursor:pointer;transition:background .18s,color .18s}.contact button span{margin-left:14px}.contact button:hover{background:#e5e7e7;color:#0b0c0c}.contact button:active{transform:translateY(1px)}.contact .honeypot{display:none}.contact a:focus-visible,.contact button:focus-visible{outline:2px solid white;outline-offset:5px}@media(max-width:700px){.contact{grid-template-columns:1fr;gap:64px;padding:10svh 7vw}.contact h2{font-size:32px;margin-bottom:30px}.photo-title{font-size:clamp(27px,6.8vw,45px)}.title-high .photo-title{left:7%;top:10%}.title-low .photo-title{right:7%;bottom:10%}}@media(prefers-reduced-motion:reduce){.photo-title{opacity:1!important;transform:none!important}}

/* Curated project sequence with alternating frame lengths */
.track figure:nth-of-type(n){width:var(--frame-width,72vw)}.track img{transform:scale(var(--image-scale,1));will-change:transform;transform-origin:center center}@media(max-width:700px){.track figure:nth-of-type(n){width:var(--mobile-width,90vw)}}@media(prefers-reduced-motion:reduce){.track figure:nth-of-type(n){width:100%}.track img{transform:none;will-change:auto}}

/* Preserve the complete photograph and its original proportions. */
.track figure:nth-of-type(n){width:calc(78svh * var(--ratio));height:78svh;aspect-ratio:var(--ratio);overflow:visible}.track img{width:100%;height:auto;object-fit:contain;transform:none;will-change:auto}@media(max-width:700px){.track figure:nth-of-type(n){width:calc(65svh * var(--ratio));height:65svh}.photo-title{font-size:clamp(18px,5vw,32px)}}@media(prefers-reduced-motion:reduce){.track figure:nth-of-type(n){width:100%;height:auto}}

.social-links{display:flex;align-items:center;gap:8px;margin-top:32px;margin-left:-10px}.social-links a{display:grid;place-items:center;width:44px;height:44px;margin:0}

.services-link{margin-top:24px;font-size:11px;letter-spacing:.04em;line-height:1.7}.services-link:hover{text-decoration:underline}

#form-status{font-size:11px;line-height:1.8;letter-spacing:.04em;color:#e5e7e7;max-width:55ch;margin:20px 0 0}#form-status:empty{display:none}.contact button:disabled{opacity:.55;cursor:wait}
