:root{--paper: #eeebe3;--red: #c72a09;--ink: #212020;--white: #fff;color:var(--ink);background:var(--paper);font-family:Arial,Helvetica,sans-serif;font-synthesis:none;text-rendering:geometricPrecision}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;min-height:100vh;background:var(--paper);-webkit-font-smoothing:antialiased}body.menu-open{overflow:hidden}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit}img{display:block;max-width:100%}figure,h1,h2,p{margin-top:0}.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}.skip-link{position:fixed;z-index:1000;top:12px;left:12px;padding:14px 18px;color:#fff;background:var(--red);font-weight:700;text-transform:uppercase;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}.site-header{position:sticky;z-index:100;top:0;display:flex;height:86px;align-items:center;justify-content:space-between;padding:10px 2vw;color:var(--red);background:var(--paper)}.brand-link{display:block;width:min(32.4vw,468px);flex:0 0 auto}.brand-link img{width:100%;height:auto}.desktop-header-actions,.desktop-nav,.social-links{display:flex;align-items:center}.desktop-header-actions{min-width:0;gap:24px}.desktop-nav{gap:clamp(18px,1.75vw,32px)}.desktop-nav a{padding-block:4px;font-size:clamp(12px,.99vw,15px);font-weight:700;letter-spacing:-.05em;text-decoration:none;text-transform:uppercase}.desktop-nav a[aria-current=page]{text-decoration:underline;text-underline-offset:5px}.social-links{gap:10px}.social-link{display:grid;width:28px;height:28px;place-items:center}.social-link img{width:28px;height:28px}.mobile-menu-button,.mobile-menu{display:none}.page-paper{background:var(--paper)}.hero-carousel{position:relative;height:calc(100svh - 86px);min-height:620px;overflow:hidden;background:#171717}.hero-slide{position:absolute;top:0;right:0;bottom:0;left:0;margin:0;opacity:0;transition:opacity .9s ease;pointer-events:none}.hero-slide.is-active{opacity:1;pointer-events:auto}.hero-slide img{width:100%;height:100%;object-fit:cover}.carousel-control{position:absolute;z-index:5;top:50%;display:grid;width:46px;height:52px;padding:0;border:0;background:#eeebe39e;place-items:center;transform:translateY(-50%);cursor:pointer}.carousel-control img{width:9px;height:16px}.carousel-control:focus:not(:focus-visible){outline:none}.carousel-control:focus-visible{outline:2px solid var(--red);outline-offset:3px}.carousel-control--previous{left:20px}.carousel-control--next{right:20px}.client-logos{display:grid;grid-template-columns:repeat(5,1fr);align-items:center;gap:4vw;padding:28px 2vw}.client-logos--white{background:#fff}.client-logos--paper{background:var(--paper)}.client-logos img{width:100%;aspect-ratio:3 / 2;object-fit:contain}.client-logo-item{opacity:0;transform:translateY(25px)}.client-logo-item.is-visible{animation:client-logo-fade-up .8s ease both}@keyframes client-logo-fade-up{0%{opacity:0;transform:translateY(25px)}to{opacity:1;transform:translateY(0)}}.about-page{padding:54px 2vw 90px}.about-intro-layout{display:grid;min-height:820px;grid-template-columns:minmax(0,1.02fr) minmax(360px,.78fr);gap:6vw}.about-copy{max-width:700px}.about-lede h1,.about-section h2,.service-list h2{color:var(--red);font-weight:700;letter-spacing:-.1em;line-height:.94;text-transform:uppercase}.about-lede h1{max-width:650px;margin-bottom:24px;font-size:clamp(52px,4vw,62px)}.about-location{margin-bottom:4px;color:var(--red);font-size:22px;font-style:italic;font-weight:700;letter-spacing:-.08em;text-transform:uppercase}.resume-link{display:inline-block;margin-bottom:42px;padding:1px 10px;border:1.5px solid var(--red);border-radius:50%;color:var(--ink);font-size:22px;font-weight:700;letter-spacing:-.08em;line-height:1;text-decoration:none;text-transform:uppercase}.about-section{margin-bottom:42px}.about-section h2{margin-bottom:28px;font-size:clamp(40px,3.1vw,48px)}.about-section p{margin-bottom:22px;font-size:clamp(15px,1.18vw,18px);letter-spacing:-.055em;line-height:1.24;text-transform:uppercase}.about-portrait{position:sticky;top:106px;height:calc(100svh - 120px);align-self:start;margin:0}.about-portrait img{width:100%;height:100%;object-fit:contain;object-position:center bottom}.about-page>.client-logos{margin:48px -2vw 72px}.services-grid{display:grid;grid-template-columns:1fr 1fr;gap:5vw}.service-list h2{margin-bottom:10px;font-size:clamp(28px,2.7vw,42px)}.service-list ol{padding:0;margin:0;color:var(--red);font-size:clamp(22px,2.1vw,34px);letter-spacing:-.065em;line-height:1.24;list-style:none;text-transform:uppercase}.stills-page{padding:44px 2vw 70px}.stills-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0}.stills-card{min-width:0;text-decoration:none}.stills-card img{width:100%;aspect-ratio:1 / 1;object-fit:cover;transition:filter .18s ease}.stills-card:hover img,.stills-card:focus-visible img{filter:contrast(1.05) brightness(.93)}.stills-card h2{min-height:34px;margin:0;padding:7px 0 6px;color:var(--red);font-size:clamp(15px,1.45vw,21px);font-weight:700;letter-spacing:-.09em;line-height:1;text-transform:uppercase}.gallery-page,.project-page,.motion-page{padding:28px 2vw 70px}.image-grid figure,.project-masonry figure{margin:0;break-inside:avoid}.image-grid img,.project-masonry img{width:100%;height:auto}.image-grid--album{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.image-grid--album img{aspect-ratio:1 / 1;object-fit:cover}.image-grid--editorial,.project-masonry{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0}.image-grid--editorial{grid-template-columns:repeat(4,minmax(0,1fr))}.masonry-column{min-width:0}.masonry-column figure{margin:0}.gallery-page>.client-logos,.motion-page>.client-logos{margin:38px -2vw -70px}.project-pagination{display:grid;grid-template-columns:1fr 1fr;gap:30px;padding-top:48px}.project-pagination a{display:flex;min-height:120px;flex-direction:column;justify-content:center;color:var(--red);text-decoration:none;text-transform:uppercase}.project-pagination span{font-size:14px;font-weight:700}.project-pagination strong{font-size:clamp(28px,3.2vw,52px);letter-spacing:-.08em;line-height:.95}.next-project{text-align:right}.motion-list{width:min(100%,1024px);margin:210px auto 80px}.motion-project{margin-bottom:120px}.video-frame{position:relative;width:100%;aspect-ratio:16 / 9;overflow:hidden;background:#000}.video-frame iframe{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border:0}.motion-project h2{max-width:880px;margin:34px 0 24px;color:var(--red);font-size:clamp(52px,6.3vw,94px);letter-spacing:-.1em;line-height:.86;text-transform:uppercase}.motion-project p{margin:0;color:var(--red);font-size:clamp(28px,3.1vw,46px);font-style:italic;font-weight:700;letter-spacing:-.08em;line-height:.9;text-transform:uppercase}.contact-page{position:relative;display:grid;min-height:calc(100svh - 86px);grid-template-columns:450px 630px;align-items:start;gap:72px;padding:108px 0 80px 86px;overflow:hidden;background-image:linear-gradient(#00000014,#00000014),var(--contact-image);background-position:center;background-size:cover}.contact-details{position:relative;z-index:1;display:flex;flex-direction:column;align-items:flex-start;padding-top:28px;color:var(--red)}.contact-details h1{max-width:720px;margin-bottom:24px;font-size:93.76px;letter-spacing:-.1em;line-height:.78;text-transform:uppercase}.contact-details a{margin:5px 0;font-size:18px;font-weight:700;letter-spacing:-.07em;line-height:1;text-transform:uppercase}.contact-form{position:relative;z-index:1;display:grid;min-width:0;gap:18px;padding:20px;color:var(--red);background:var(--paper)}.contact-form fieldset{padding:0;border:0;margin:0}.contact-form legend,.contact-form label>span{display:block;margin-bottom:6px;font-size:16px;font-weight:700;letter-spacing:-.06em;text-transform:uppercase}.name-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.contact-form input,.contact-form textarea{width:100%;border:0;border-radius:12px;outline:2px solid transparent;background:#fff}.contact-form input{height:43px;padding:8px 12px}.contact-form textarea{min-height:100px;padding:12px;resize:vertical}.contact-form input:focus,.contact-form textarea:focus{outline-color:var(--red)}.contact-form button{width:max-content;min-width:112px;min-height:68px;padding:12px 22px;border:2px solid var(--red);border-radius:999px;color:var(--paper);background:var(--red);font-weight:700;text-transform:uppercase;cursor:pointer}.form-status{max-width:520px;margin:0;color:var(--ink);font-weight:700;line-height:1.25}.not-found-page{display:grid;min-height:calc(100svh - 86px);padding:8vw;place-content:center;color:var(--red);text-align:center}.not-found-page p{margin-bottom:0;font-size:18px;font-weight:700}.not-found-page h1{margin-bottom:24px;font-size:clamp(58px,8vw,110px);letter-spacing:-.09em;line-height:.9;text-transform:uppercase}.not-found-page a{font-weight:700;text-transform:uppercase}@media(max-width:1160px){.desktop-header-actions{gap:12px}.desktop-nav{gap:13px}.social-links{display:none}.about-intro-layout{grid-template-columns:minmax(0,1fr) minmax(320px,.72fr);gap:3vw}.contact-page{grid-template-columns:minmax(330px,.8fr) minmax(500px,1fr);gap:4vw;padding-left:5vw}}@media(max-width:820px){.site-header{height:84px;justify-content:center;padding:14px 18px}.brand-link{position:relative;z-index:102;width:min(67vw,280px)}.desktop-header-actions{display:none}.mobile-menu-button{position:absolute;z-index:103;top:22px;right:18px;display:grid;width:42px;height:42px;padding:7px;border:0;color:var(--red);background:transparent;place-items:center;cursor:pointer}.mobile-menu-button svg{width:30px;height:30px;stroke-width:1.6}.mobile-menu{position:fixed;z-index:101;top:0;right:0;bottom:0;left:0;display:flex;visibility:hidden;flex-direction:column;align-items:center;justify-content:center;padding:130px 24px 40px;opacity:0;background:var(--paper);transition:opacity .18s ease,visibility .18s ease}.mobile-menu.is-open{visibility:visible;opacity:1}.mobile-menu nav{display:flex;flex-direction:column;align-items:center;gap:24px}.mobile-menu nav a{color:var(--ink);font-size:clamp(34px,10vw,46px);font-weight:700;letter-spacing:-.08em;line-height:.95;text-decoration:none;text-transform:uppercase}.mobile-menu nav a[aria-current=page]{color:var(--red)}.mobile-social-links{display:flex;gap:16px;margin-top:56px}.hero-carousel{height:calc(100svh - 84px);min-height:620px}.carousel-control{width:42px;height:58px}.carousel-control--previous{left:18px}.carousel-control--next{right:18px}.client-logos{grid-template-columns:repeat(2,1fr);gap:14px 20px;padding:24px 18px}.about-page{padding:34px 20px 70px}.about-intro-layout{min-height:0;grid-template-columns:1fr;gap:20px}.about-copy{max-width:none}.about-lede h1{max-width:520px;font-size:clamp(43px,13.8vw,68px)}.about-location,.resume-link{font-size:18px}.about-section h2{font-size:42px}.about-section p{font-size:15px;letter-spacing:-.035em;line-height:1.3}.about-portrait{position:static;height:min(130vw,720px);order:-1}.about-page>.client-logos{margin:26px -20px 54px}.services-grid{grid-template-columns:1fr;gap:52px}.service-list h2{font-size:34px}.service-list ol{font-size:22px}.stills-page,.gallery-page,.project-page,.motion-page{padding:18px 23px 56px}.stills-grid{grid-template-columns:1fr 1fr;gap:0}.stills-card h2{min-height:42px;padding:7px 4px 8px 0;font-size:15px}.image-grid--album{gap:6px}.image-grid--editorial,.project-masonry{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-page>.client-logos,.motion-page>.client-logos{margin:30px -23px -56px}.motion-list{margin:90px auto 40px}.motion-project{margin-bottom:90px}.motion-project h2{font-size:clamp(44px,13vw,74px)}.motion-project p{font-size:clamp(26px,8vw,42px)}.contact-page{display:block;min-height:calc(100svh - 84px);padding:180px 18px 0;background-position:38% center}.contact-details h1{max-width:500px;font-size:clamp(68px,19vw,98px)}.contact-details a{max-width:100%;overflow-wrap:anywhere;font-size:24px}.contact-form{gap:22px;margin:42px -18px 0;padding:30px 18px 48px}.contact-details{padding-top:0}.name-fields{grid-template-columns:1fr;gap:20px}}@media(max-width:540px){.client-logos{grid-template-columns:repeat(2,1fr)}.stills-grid,.image-grid--album{grid-template-columns:1fr}.image-grid--editorial,.project-masonry{grid-template-columns:repeat(2,minmax(0,1fr))}.stills-card h2{min-height:auto;margin-bottom:10px;font-size:18px}.project-pagination{grid-template-columns:1fr}.next-project{text-align:left}.about-portrait{height:min(150vw,650px)}}@media(prefers-reduced-motion:reduce){*:not(.client-logo-item),*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
