:root{--ink:#171717;--paper:#fbfbfa;--accent:#4726e8;--line:#d9d9d6}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased;font-size:17px;line-height:1.5}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,video:focus-visible{outline:3px solid var(--accent);outline-offset:6px}img{display:block;max-width:100%;height:auto}figure{margin:0}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:500;line-height:1.06;letter-spacing:-.045em}em{font-family:Georgia,'Times New Roman',serif;font-weight:400}header{padding:27px 4vw;display:flex;justify-content:space-between;align-items:center;background:var(--paper);gap:25px;border-bottom:1px solid var(--line)}.wordmark{font-size:23px;font-weight:800;letter-spacing:-1.3px;line-height:.91}.brand-dot{color:var(--accent)}nav{display:flex;align-items:center;gap:32px;font-size:14px}nav a{padding:8px 0}nav a:hover,.back:hover{color:var(--accent)}.nav-contact{border-bottom:1px solid var(--ink)}.language{font-size:13px;border:1px solid var(--line);padding:7px 9px}.skip{position:fixed;left:10px;top:-100px;z-index:9;background:white;padding:10px}.skip:focus{top:10px}.eyebrow{text-transform:uppercase;font-size:12px;letter-spacing:.13em;font-weight:600;line-height:1.5}.hero{display:grid;grid-template-columns:.94fr 1.06fr;min-height:640px}.hero-copy{padding:60px 4vw 50px}.hero h1{font-size:clamp(58px,6.6vw,112px);margin:38px 0 28px;letter-spacing:-.065em;line-height:.96}.hero h1 em{color:var(--accent)}.intro{font-size:18px;line-height:1.5;max-width:460px}.text-link{display:inline-flex;gap:36px;align-items:center;border-bottom:1px solid;margin-top:32px;padding-bottom:7px;font-size:14px}.hero-image{position:relative;background:#b8bfba;min-height:600px}.hero-image img{width:100%;height:100%;object-fit:cover;position:absolute;object-position:53% center}.hero-image figcaption{position:absolute;bottom:0;left:0;right:0;padding:45px 26px 20px;background:linear-gradient(transparent,#0009);color:white;display:flex;justify-content:space-between;font-size:12px;gap:15px}.client-line{padding:26px 4vw;border-bottom:1px solid var(--line);display:flex;gap:30px;align-items:center;justify-content:space-between}.client-line>span{font-size:10px;letter-spacing:.1em}.client-line>div{font-size:18px;letter-spacing:.03em}.client-line b{font-weight:400;color:#bbb;margin:0 24px}.projects{padding:100px 4vw}.section-heading{display:grid;grid-template-columns:1fr 2fr 1.25fr;gap:35px;align-items:start;margin-bottom:60px}.section-heading h2{font-size:clamp(36px,4vw,64px)}.section-heading>p:last-child{font-size:17px;padding-top:6px;max-width:340px;color:#555}.project-grid{display:grid;grid-template-columns:1fr 1fr;column-gap:36px;row-gap:65px}.project-card:nth-child(even){margin-top:90px}.card-media{overflow:hidden;position:relative;background:#eaeae7;aspect-ratio:1.42}.card-media img{width:100%;height:100%;object-fit:cover;transition:transform .65s ease}.project-card:hover img{transform:scale(1.025)}.vertical .card-media img{object-fit:contain;padding:15px;background:#e5eef2}.card-open{position:absolute;bottom:18px;right:18px;width:40px;height:40px;border-radius:50%;background:var(--paper);display:grid;place-items:center;font-size:24px}.card-meta{display:flex;justify-content:space-between;gap:15px;margin:16px 0 12px;font-size:12px}.card-meta>span:first-child{font-weight:700;text-transform:uppercase;letter-spacing:.04em}.card-meta>span:last-child{color:#666}.project-card h3{font-size:28px;max-width:470px;line-height:1.14}.approach{padding:90px 4vw;background:#191919;color:white;display:grid;grid-template-columns:1fr 1fr;gap:8vw}.approach h2{font-size:clamp(37px,4.5vw,72px);margin-top:32px}.approach-intro{max-width:440px;margin-top:32px;color:#bbb}.steps article{display:flex;gap:28px;padding:24px 0 30px;border-top:1px solid #555}.steps article>span{font-size:12px;color:#c6b9ff;padding-top:5px}.steps h3{font-size:26px;letter-spacing:-.025em}.steps p{color:#bbb;margin-top:14px;max-width:410px}.about{padding:95px 4vw;display:grid;grid-template-columns:1fr 3fr;gap:35px;border-bottom:1px solid var(--line)}.about>p:last-child{max-width:920px;font-size:clamp(23px,2.5vw,37px);line-height:1.38;letter-spacing:-.025em}.contact{padding:85px 4vw;background:var(--accent);color:white}.contact h2{font-size:clamp(38px,5.3vw,82px);margin-top:35px;max-width:1100px}.contact-bottom{display:flex;justify-content:space-between;gap:50px;align-items:flex-end;margin-top:50px}.contact-bottom p{max-width:480px;color:#e2dcff}.contact-link{font-size:30px;white-space:nowrap}.contact-link small{display:block;font-size:15px;margin-top:10px;letter-spacing:.02em}footer{display:flex;justify-content:space-between;gap:20px;padding:24px 4vw;font-size:12px}.project-title{padding:40px 4vw 65px}.back{font-size:14px}.project-title .eyebrow{margin-top:55px}.project-title h1{font-size:clamp(45px,6vw,94px);max-width:1200px;margin-top:23px}.project-hero{margin:0 4vw;background:#eee}.project-hero img{width:100%;max-height:820px;object-fit:contain}.story-grid{padding:70px 4vw 35px;display:grid;grid-template-columns:repeat(4,1fr);gap:35px}.story-grid h2{font-size:23px;margin-bottom:18px;letter-spacing:-.03em}.story-grid p{font-size:16px;color:#555;line-height:1.65}.credits{font-size:13px;color:#666;padding:0 4vw 40px}.gallery{padding:20px 4vw 70px;display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:start}.gallery figure:nth-child(5n+1){grid-column:1/-1}.gallery img{width:100%;max-height:920px;object-fit:contain}.next-project{display:flex;justify-content:space-between;align-items:center;gap:25px;padding:45px 4vw;border-top:1px solid var(--line)}.next-project>span{font-size:14px}.next-project strong{font-weight:500;font-size:clamp(24px,4vw,55px);letter-spacing:-.04em}.portrait-intro{font-size:25px;max-width:900px;margin:65px 4vw}.portrait-block{padding:50px 4vw;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 2fr;gap:6vw}.portrait-caption h2{font-size:32px;margin-bottom:20px}.portrait-caption p{color:#555}.portrait-caption .credits{padding:20px 0 0}.portrait-images{display:flex;align-items:flex-start;gap:20px}.portrait-images>*{min-width:0;width:100%;max-height:750px;object-fit:contain;flex:1}.portrait-images:has(>:nth-child(2))>*{width:calc(50% - 10px)}video{display:block;width:100%;background:#111}.films{padding:20px 4vw 80px;display:grid;gap:70px}.films figure{max-width:1100px;margin:auto;width:100%}.films figcaption{margin-top:15px;font-size:17px}.reveal{animation:appear .65s ease both}@keyframes appear{from{opacity:.55;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@media(min-width:1700px){body{max-width:2000px;margin:auto}.hero-image img{object-fit:contain;background:#ddd}}@media(max-width:950px){nav{gap:20px}.section-heading{grid-template-columns:1fr 2fr}.section-heading>p:last-child{grid-column:2}.story-grid{grid-template-columns:1fr 1fr}.hero{min-height:570px}.hero-copy{padding-top:40px}.hero-image{min-height:570px}.hero h1{font-size:68px}.client-line b{margin:0 9px}.client-line>div{font-size:15px}.portrait-block{grid-template-columns:1fr}.portrait-caption{max-width:600px}}@media(max-width:650px){header{padding:20px 5vw;align-items:start}.wordmark{font-size:20px}nav{gap:14px;font-size:12px;flex-wrap:wrap;justify-content:flex-end;max-width:230px}.nav-contact{display:none}.hero{display:flex;flex-direction:column}.hero-copy{padding:36px 5vw 42px}.hero h1{font-size:clamp(61px,13vw,85px);margin:28px 0 25px}.intro{font-size:17px}.hero-image{min-height:0;aspect-ratio:1.3}.hero-image img{object-fit:cover}.client-line{align-items:flex-start;flex-direction:column;gap:12px;padding:22px 5vw}.client-line>div{font-size:14px}.client-line b{margin:0 8px}.projects{padding:65px 5vw}.section-heading{display:block;margin-bottom:38px}.section-heading h2{margin:24px 0}.section-heading>p:last-child{max-width:450px}.project-grid{display:block}.project-card{display:block;margin-bottom:42px}.project-card:nth-child(even){margin-top:0}.project-card:last-child{margin-bottom:0}.project-card h3{font-size:26px}.card-meta{font-size:11px}.approach{display:block;padding:60px 5vw}.approach h2{font-size:43px}.steps{margin-top:45px}.about{display:block;padding:60px 5vw}.about>p:last-child{margin-top:25px;font-size:24px}.contact{padding:60px 5vw}.contact h2{font-size:42px}.contact-bottom{display:block;margin-top:30px}.contact-link{display:inline-block;margin-top:30px}footer{flex-wrap:wrap;font-size:12px;padding:22px 5vw}.project-title{padding:30px 5vw 40px}.project-title .eyebrow{margin-top:35px}.project-title h1{font-size:46px}.story-grid{padding:40px 5vw 15px;grid-template-columns:1fr;gap:30px}.credits{padding-left:5vw}.gallery{grid-template-columns:1fr;padding:10px 5vw 40px;gap:25px}.portrait-intro{font-size:21px;margin:35px 5vw}.portrait-block{padding:35px 5vw;gap:25px}.portrait-images{gap:10px}.next-project{padding:30px 5vw}.films{padding:10px 5vw 40px;gap:35px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
/* Second direction: cinematic opening, editorial rhythm, dedicated pages. */
:root{--paper:#f6f6f3;--accent:#b5ef64;--ink:#20211e}body{font-family:'Helvetica Neue',Arial,sans-serif}a:focus-visible{outline-color:#607b37}.site-header{position:relative;z-index:5;padding:24px 4vw;background:var(--paper)}.wordmark{display:flex;flex-direction:column;font-size:24px;font-weight:500;letter-spacing:-1.3px;line-height:.94}.wordmark span:first-child{font-family:Georgia,serif;font-style:italic;font-size:27px}.home .site-header{position:absolute;top:0;left:0;right:0;background:transparent;border:0;color:white}.home nav a:hover{color:#d6ff9f}.home .nav-contact{border-color:#fff7}.home .language{border-color:#fff5}.cinema-hero{height:min(920px,100svh);min-height:660px;position:relative;color:white;overflow:hidden;background:#28362e}.cinema-image{position:absolute;width:100%;height:100%;object-fit:cover;object-position:center 43%;animation:cinema-in 1.6s cubic-bezier(.2,.7,.2,1) both}.cinema-shade{position:absolute;inset:0;background:linear-gradient(180deg,#0006,transparent 30%,#0001 45%,#000a 100%)}.cinema-top{position:absolute;top:135px;left:4vw;right:4vw;display:flex;justify-content:space-between;font-size:10px;letter-spacing:.14em}.cinema-title{position:absolute;bottom:135px;left:4vw;right:4vw}.cinema-title>p{font-size:11px;letter-spacing:.15em;margin-bottom:22px}.cinema-title h1{font-size:clamp(54px,6.6vw,110px);letter-spacing:-.045em;line-height:1.01;text-shadow:0 2px 25px #0002;animation:title-in 1s .15s both}.cinema-title h1 em{font-weight:400;letter-spacing:-.04em}.cinema-bottom{position:absolute;bottom:30px;left:4vw;right:4vw;display:flex;justify-content:space-between;align-items:center;border-top:1px solid #ffffff70;padding-top:22px;font-size:13px}.cinema-bottom a:first-child span{margin-left:35px}.cinema-bottom a:last-child{font-size:10px;letter-spacing:.15em}.vision{padding:125px 7vw;display:grid;grid-template-columns:1fr 2.4fr;gap:55px}.vision h2{font-size:clamp(35px,4.3vw,67px);line-height:1.12;letter-spacing:-.045em}.vision>div>p{font-size:20px;line-height:1.6;max-width:650px;margin-top:30px;color:#63645f}.pill-link{display:inline-flex;align-items:center;gap:35px;border-bottom:1px solid #777;padding:12px 0;font-size:14px;margin-top:24px}.home-selected{padding:0 4vw 110px}.selected-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:40px}.selected-heading>a{font-size:14px}.selected-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:70px 45px}.selected-grid .project-card:nth-child(2){margin-top:180px}.selected-grid .project-card:nth-child(3){grid-column:1/-1;width:70%;margin-top:-75px}.selected-grid .card-media{aspect-ratio:1.25}.selected-grid .project-card:nth-child(3) .card-media{aspect-ratio:1.7}.card-open{background:#f6f6f3dd;transition:background .3s,transform .3s}.project-card:hover .card-open{background:var(--accent);transform:rotate(45deg)}.card-media img{transition:transform 1.2s cubic-bezier(.2,.7,.2,1)}.card-meta{font-size:12px}.project-card h3{font-weight:400;font-size:31px;letter-spacing:-.045em}.contact{background:#20231e;padding:90px 7vw}.contact h2{font-family:Georgia,serif;font-weight:400;letter-spacing:-.04em}.contact-bottom p{color:#bbbfB6}.contact-link{color:#d1efaf}.contact .eyebrow{color:#b7c4a9}.about{padding:90px 7vw}.approach{padding:90px 7vw;background:var(--paper);color:var(--ink);min-height:75vh}.approach h2{font-size:clamp(42px,4.6vw,74px)}.approach h2 em{color:#657951}.approach-intro,.steps p{color:#63645f}.steps article{border-color:#bfc4b9}.steps article>span{color:#697d52}.steps h3{font-weight:400}.section-heading{display:block;margin-bottom:80px}.section-heading h2{margin:25px 0;font-size:clamp(45px,6vw,94px)}.section-heading>p:last-child{max-width:550px;font-size:20px}.projects{padding:75px 7vw 110px}.project-grid{gap:80px 55px}.project-grid .project-card:nth-child(even){margin-top:160px}.project-title{padding:40px 7vw 75px}.project-title .eyebrow{color:#68765e}.project-title h1{font-family:Georgia,serif;font-weight:400;letter-spacing:-.055em;font-size:clamp(48px,6.3vw,95px)}.project-hero{margin:0 4vw}.story-grid{padding:85px 7vw 40px;grid-template-columns:1fr 1fr;gap:45px 85px}.story-grid h2{font-size:29px;font-family:Georgia,serif;letter-spacing:-.02em}.story-grid p{font-size:18px;line-height:1.65}.credits{padding-left:7vw}.gallery{padding:35px 7vw 90px;gap:65px}.gallery figure:nth-child(3n+2){padding-top:110px}.gallery figure:nth-child(5n+1){padding:0}.next-project{padding:65px 7vw}.next-project strong{font-family:Georgia,serif}.portrait-block{padding:65px 7vw}.portrait-caption h2{font-family:Georgia,serif}.brand-dot{color:#6b8154}footer{padding:28px 4vw}.reveal{animation:editorial-in .9s cubic-bezier(.2,.7,.2,1) both}@keyframes cinema-in{from{transform:scale(1.035);filter:brightness(.75)}to{transform:scale(1);filter:brightness(1)}}@keyframes title-in{from{opacity:0;transform:translateY(25px)}to{opacity:1;transform:translateY(0)}}@keyframes editorial-in{from{opacity:.3;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@view-transition{navigation:auto}::view-transition-old(root){animation:fade-out .2s both}::view-transition-new(root){animation:fade-in .35s both}@keyframes fade-out{to{opacity:0}}@keyframes fade-in{from{opacity:0}}
@media(max-width:700px){.site-header{padding:22px 5vw}.wordmark{font-size:20px}.wordmark span:first-child{font-size:23px}nav{gap:12px}.nav-contact{display:block}.cinema-hero{height:90svh;min-height:650px}.cinema-image{object-position:43% center}.cinema-top{top:115px;left:5vw;right:5vw}.cinema-top span:last-child{display:none}.cinema-title{bottom:125px;left:5vw;right:5vw}.cinema-title h1{font-size:clamp(42px,8vw,58px);line-height:1.08}.cinema-title>p{font-size:9px}.cinema-bottom{left:5vw;right:5vw;bottom:25px;gap:15px;font-size:12px}.cinema-bottom a:last-child{display:none}.vision{padding:65px 5vw;display:block}.vision h2{font-size:37px;margin-top:25px}.vision>div>p{font-size:18px}.home-selected{padding:10px 5vw 65px}.selected-heading{gap:20px}.selected-grid{display:block}.selected-grid .project-card:nth-child(2){margin-top:0}.selected-grid .project-card:nth-child(3){width:100%;margin-top:0}.selected-grid .card-media{aspect-ratio:1.4}.selected-grid .project-card:nth-child(3) .card-media{aspect-ratio:1.4}.project-card h3{font-size:27px}.contact{padding:60px 5vw}.contact h2{font-size:42px}.projects{padding:50px 5vw}.section-heading{margin-bottom:45px}.project-grid .project-card:nth-child(even){margin-top:0}.approach{padding:50px 5vw}.story-grid{padding:40px 5vw;gap:30px;grid-template-columns:1fr}.project-title{padding:30px 5vw 45px}.project-title h1{font-size:47px}.gallery{padding:15px 5vw 50px;gap:25px}.gallery figure:nth-child(3n+2){padding-top:0}.portrait-block{padding:40px 5vw}.about{padding:50px 5vw}.next-project{padding:35px 5vw}}
@media(prefers-reduced-motion:reduce){.cinema-image,.cinema-title h1,.reveal{animation:none!important}::view-transition-old(root),::view-transition-new(root){animation:none!important}}
.section-heading h1{margin:25px 0;font-size:clamp(45px,6vw,94px)}.approach h1{font-size:clamp(42px,4.6vw,74px);margin-top:32px}.approach h1 em{color:#657951}.contact h1{font-family:Georgia,serif;font-size:clamp(38px,5.3vw,82px);margin-top:35px;max-width:1100px}main>.contact{min-height:75vh}@media(max-width:700px){.contact h1{font-size:42px}.approach h1{font-size:43px}}
/* Motion composition: masked titles, image framing and scroll-led reveals. */
.cinema-hero{clip-path:inset(0 var(--inset,0px) 0 round var(--radius,0px));will-change:clip-path}.cinema-image{height:calc(100% + 90px);top:-45px;translate:0 var(--image-y,0px)}.cinema-title{translate:0 var(--title-y,0px)}.cinema-title h1{animation:none}.title-mask{display:block;overflow:hidden;padding-bottom:.12em;margin-bottom:-.12em}.title-mask>span{display:block;animation:type-rise 1.35s cubic-bezier(.22,1,.36,1) both}.title-mask:nth-child(2)>span{animation-delay:.22s}.cinema-title>p{animation:caption-in 1s .6s both}.cinema-top,.cinema-bottom{animation:caption-in 1s .85s both}.home .site-header{animation:caption-in 1s .2s both}.motion-ready .motion-item{opacity:0;transform:translateY(48px);transition:opacity .95s var(--delay,0s),transform 1.15s cubic-bezier(.2,.7,.2,1) var(--delay,0s)}.motion-ready .motion-item.in-view{opacity:1;transform:none}.motion-ready .project-card .card-media{clip-path:inset(8% 0 8% 0);transition:clip-path 1.3s cubic-bezier(.2,.7,.2,1)}.motion-ready .project-card.in-view .card-media{clip-path:inset(0)}.motion-ready .project-card .card-media img{transform:scale(1.08);transition:transform 1.7s cubic-bezier(.2,.7,.2,1)}.motion-ready .project-card.in-view .card-media img{transform:scale(1)}.motion-ready .project-card.in-view:hover .card-media img{transform:scale(1.04)}.pill-link,.selected-heading>a,.back{position:relative}.pill-link:after,.selected-heading>a:after,.back:after{content:'';position:absolute;bottom:-3px;left:0;width:100%;height:1px;background:currentColor;transform:scaleX(0);transform-origin:right;transition:transform .45s}.pill-link:hover:after,.selected-heading>a:hover:after,.back:hover:after{transform:scaleX(1);transform-origin:left}body:after{content:'';position:fixed;left:0;bottom:0;height:2px;width:var(--reading,0%);background:#a9c782;z-index:10;pointer-events:none}@keyframes type-rise{from{transform:translateY(112%)}to{transform:translateY(0)}}@keyframes caption-in{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media(max-width:700px){.cinema-hero{clip-path:none}.cinema-image{height:100%;top:0;translate:none}.cinema-title{translate:none}.motion-ready .motion-item{transform:translateY(24px)}.motion-ready .motion-item.in-view{transform:none}}@media(prefers-reduced-motion:reduce){.title-mask>span,.cinema-top,.cinema-bottom,.cinema-title>p,.home .site-header{animation:none!important}.cinema-hero{clip-path:none!important}.cinema-image,.cinema-title{translate:none!important}.motion-ready .motion-item{opacity:1;transform:none}.motion-ready .project-card .card-media{clip-path:none}.motion-ready .project-card .card-media img{transform:none}}
.card-media:has(.hover-preview){aspect-ratio:4/5;background:#e8e8e4}.hover-preview{width:100%;height:100%;object-fit:contain;background:#e8e8e4}.films video{max-height:85svh;width:auto;max-width:100%;margin:auto;object-fit:contain;background:#171717}.films figure{background:#eee;padding:25px}.films figcaption{text-align:center}.card-media:has(.hover-preview):after{content:'▶';position:absolute;left:20px;bottom:22px;font-size:12px;color:white;background:#0007;padding:9px 13px;border-radius:30px;pointer-events:none}.card-media.is-playing:after{opacity:0}.hover-preview{transition:opacity .3s}

/* Instagram: visible label and a light outline icon. */
.instagram-link{display:inline-flex;align-items:center;gap:.45em;white-space:nowrap}.instagram-link svg{width:20px;height:20px;flex:none}.instagram-link:hover span{text-decoration:underline;text-underline-offset:5px}.instagram-link:focus-visible{outline:2px solid currentColor;outline-offset:5px}footer{flex-wrap:wrap;gap:18px}@media(max-width:600px){.site-header nav .instagram-link{font-size:12px}.site-header nav .instagram-link svg{width:16px;height:16px}}

.site-header nav>a{display:inline-flex;align-items:center;justify-content:center;min-height:40px;line-height:1.5}.site-header nav .nav-contact{position:relative;border-bottom:0;gap:4px}.site-header nav .nav-contact:after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:currentColor;opacity:.5}.instagram-link{min-width:40px;min-height:40px;justify-content:center}
