*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f0eee8;color:#0a0a0a;font-family:Arial,Helvetica,sans-serif;overflow-x:hidden}a{color:inherit;text-decoration:none}::selection{background:#111;color:#fff}.nav{position:fixed;z-index:30;top:0;left:0;width:100%;display:flex;justify-content:space-between;align-items:center;padding:24px 34px;color:#fff;mix-blend-mode:difference;transition:padding .35s}.nav.scrolled{padding-top:14px;padding-bottom:14px}.brand img{width:90px;height:48px;object-fit:cover}.nav nav{display:flex;gap:30px;text-transform:uppercase;font-size:11px;letter-spacing:.14em}.nav nav a{position:relative}.nav nav a:after{content:"";position:absolute;left:0;bottom:-5px;width:0;height:1px;background:currentColor;transition:.3s}.nav nav a:hover:after{width:100%}.menu{display:none;background:none;border:0;color:inherit;text-transform:uppercase;letter-spacing:.12em}.hero{height:100svh;min-height:680px;position:relative;color:#fff;overflow:hidden;background:#111}.hero>img{position:absolute;inset:-4%;width:108%;height:108%;object-fit:cover;will-change:transform}.shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.48),rgba(0,0,0,.04) 70%),linear-gradient(0deg,rgba(0,0,0,.22),transparent 45%)}.hero-top{position:absolute;top:105px;left:4vw;right:4vw;display:flex;justify-content:space-between;text-transform:uppercase;font-size:10px;letter-spacing:.16em}.hero-copy{position:absolute;left:4vw;bottom:7vh}.hero-copy p,.arrow-link{text-transform:uppercase;letter-spacing:.16em;font-size:10px}.hero-copy h1{font-size:clamp(74px,12.5vw,195px);line-height:.76;letter-spacing:-.075em;margin:24px 0 45px;font-weight:800}.hero-copy h1 i,.statement h2 em,.services h2 em,.feature h2 em,footer h2 em{font-family:Georgia,serif;font-weight:400}.arrow-link{display:inline-flex;gap:55px;border-bottom:1px solid currentColor;padding-bottom:9px}.arrow-link b{font-size:15px;font-weight:400}.scroll{position:absolute;right:3vw;bottom:5vh;writing-mode:vertical-rl;text-transform:uppercase;font-size:9px;letter-spacing:.18em}.scroll span{margin-top:15px}.statement{padding:11vw 4vw 10vw}.eyebrow{display:flex;justify-content:space-between;border-top:1px solid #111;padding-top:14px;text-transform:uppercase;font-size:10px;letter-spacing:.14em}.eyebrow p{margin:0}.statement h2{font-size:clamp(52px,8.4vw,132px);line-height:.87;letter-spacing:-.068em;margin:5vw 0}.statement-row{display:grid;grid-template-columns:1fr 480px 180px;gap:5vw}.statement-row p{grid-column:2;font-size:19px;line-height:1.5;margin:0}.statement-row span{grid-column:3;font-size:10px;line-height:1.8;text-transform:uppercase;letter-spacing:.1em}.work{padding:0 4vw 9vw}.section-head{border-top:1px solid #111;padding:18px 0 4vw;display:flex;justify-content:space-between;align-items:flex-end}.section-head small,.services-intro>p{font-size:10px;text-transform:uppercase;letter-spacing:.14em}.section-head h2{font-size:clamp(48px,7vw,108px);letter-spacing:-.065em;margin:16px 0 0}.section-head>span{font-size:10px}.project{display:block;margin-bottom:7vw}.project figure{margin:0;overflow:hidden;position:relative;background:#111}.project img{width:100%;display:block;transition:transform 1s cubic-bezier(.2,.8,.2,1),opacity .5s}.project .view{position:absolute;right:18px;bottom:18px;background:#f0eee8;color:#111;padding:12px 15px;text-transform:uppercase;font-size:9px;letter-spacing:.12em;transform:translateY(70px);transition:.4s}.project:hover img{transform:scale(1.025);opacity:.9}.project:hover .view{transform:none}.project>div{display:grid;grid-template-columns:1fr auto 35px;gap:30px;align-items:baseline;padding-top:13px}.project h3{font-size:22px;margin:0;letter-spacing:-.025em}.project p,.project b{font-size:9px;text-transform:uppercase;letter-spacing:.12em;font-weight:400}.grid{display:grid;grid-template-columns:1fr 1fr;gap:2vw}.grid .project:first-child{margin-top:8vw}.grid.reverse .project:last-child{margin-top:8vw}.grid.reverse .project:first-child{margin-top:0}.portrait-row figure{height:88vh}.portrait-row img{height:100%;object-fit:cover}.marquee{display:flex;overflow:hidden;background:#d9ff43;border-top:1px solid #111;border-bottom:1px solid #111;padding:18px 0;white-space:nowrap}.marquee div{font-size:clamp(30px,4vw,62px);font-weight:800;letter-spacing:-.045em;animation:marquee 22s linear infinite}@keyframes marquee{to{transform:translateX(-100%)}}.services{background:#080808;color:#fff;padding:9vw 4vw 10vw}.services-intro{display:grid;grid-template-columns:1fr 2fr;align-items:start}.services-intro h2{font-size:clamp(50px,7.5vw,118px);line-height:.86;letter-spacing:-.06em;margin:0 0 7vw}.service-list div{display:grid;grid-template-columns:80px 1fr 220px;align-items:center;border-top:1px solid #3b3b3b;padding:26px 0}.service-list div:last-child{border-bottom:1px solid #3b3b3b}.service-list span,.service-list b{font-size:9px;text-transform:uppercase;letter-spacing:.12em;font-weight:400}.service-list h3{font-size:clamp(30px,4.4vw,68px);letter-spacing:-.05em;margin:0}.feature{height:105vh;position:relative;color:#fff;overflow:hidden;background:#111}.feature>img{position:absolute;inset:-5%;width:110%;height:110%;object-fit:cover}.feature-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.52),transparent 70%)}.feature-copy{position:absolute;z-index:2;left:4vw;bottom:6vw}.feature-copy p{text-transform:uppercase;font-size:10px;letter-spacing:.15em}.feature h2{font-size:clamp(58px,8vw,130px);line-height:.81;letter-spacing:-.065em;margin:22px 0 0}.manifesto{padding:8vw 4vw 10vw;display:grid;grid-template-columns:1fr 2fr;gap:4vw;border-bottom:1px solid #222}.manifesto>span{font-size:10px;letter-spacing:.14em}.manifesto p{font-size:clamp(36px,5vw,76px);line-height:1.02;letter-spacing:-.045em;margin:0 0 6vw}.manifesto .arrow-link{grid-column:2;width:max-content}footer{background:#050505;color:#fff;padding:8vw 4vw 3vw;display:grid;grid-template-columns:1.4fr 1fr;min-height:85vh}.footer-main img{width:145px;height:78px;object-fit:cover}.footer-main h2{font-size:clamp(52px,7vw,112px);line-height:.83;letter-spacing:-.065em}.contact{display:flex;flex-direction:column;justify-content:flex-end;gap:18px}.contact>a{font-size:20px;border-bottom:1px solid #444;padding-bottom:13px;display:flex;justify-content:space-between}.contact>p:first-child{text-transform:uppercase;font-size:10px;letter-spacing:.15em}.copy{margin-top:55px;font-size:10px;color:#777}.reveal{opacity:0;transform:translateY(38px);transition:opacity .9s cubic-bezier(.2,.8,.2,1),transform .9s cubic-bezier(.2,.8,.2,1)}.reveal.show{opacity:1;transform:none}
@media(max-width:760px){.nav{padding:16px 18px}.brand img{width:70px;height:38px}.nav nav{display:none}.menu{display:block}.hero{min-height:650px}.hero-top{top:85px;left:20px;right:20px}.hero-top span:last-child{display:none}.hero-copy{left:20px;bottom:55px}.hero-copy h1{font-size:20vw;line-height:.79;margin:18px 0 35px}.scroll{display:none}.statement,.work,.services{padding-left:20px;padding-right:20px}.statement{padding-top:90px;padding-bottom:90px}.eyebrow p:last-child{display:none}.statement h2{font-size:15vw;margin:50px 0}.statement-row{display:block}.statement-row p{font-size:17px}.statement-row span{display:block;margin-top:38px}.section-head{padding-top:13px;padding-bottom:35px}.section-head h2{font-size:14vw}.grid{grid-template-columns:1fr;gap:0}.grid .project:first-child,.grid.reverse .project:last-child{margin-top:0}.project{margin-bottom:65px}.project>div{grid-template-columns:1fr 25px}.project p{grid-row:2;font-size:8px}.project b{grid-column:2;grid-row:1}.project .view{display:none}.portrait-row figure{height:auto}.portrait-row img{height:auto}.marquee{padding:11px 0}.services{padding-top:85px;padding-bottom:90px}.services-intro{display:block}.services-intro h2{font-size:14vw;margin:45px 0 65px}.service-list div{grid-template-columns:35px 1fr;padding:20px 0}.service-list b{display:none}.service-list h3{font-size:8.2vw}.feature{height:85vh}.feature-copy{left:20px;bottom:45px}.feature h2{font-size:15vw}.manifesto{padding:70px 20px 85px;display:block}.manifesto p{font-size:11vw;margin:35px 0 55px}footer{grid-template-columns:1fr;padding:75px 20px 30px;min-height:95vh}.footer-main h2{font-size:14vw}.contact{margin-top:85px}.contact>a{font-size:16px}}
/* V5 — portfolio-first information sequence */
.skills-section,.team-section,.archive{padding:0 4vw 10vw}.skills-section .section-head,.team-section .section-head,.archive .section-head{padding-top:7vw}.section-head h2 em{font-family:Georgia,serif;font-weight:400}.skills-grid{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid #111}.skill-card{min-height:310px;padding:30px 28px;border-bottom:1px solid #111}.skill-card:nth-child(odd){border-right:1px solid #111}.skill-card span,.member-meta span{font-size:9px;letter-spacing:.14em}.skill-card h3{font-size:clamp(38px,5vw,74px);letter-spacing:-.055em;margin:65px 0 25px}.skill-card p{max-width:430px;font-size:13px;line-height:1.7;text-transform:uppercase;letter-spacing:.08em}.team-section{background:#111;color:#fff;padding-top:1px}.team-section .section-head{border-color:#555}.team-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#444}.member{background:#111;padding-bottom:35px}.member figure{margin:0;height:62vh;overflow:hidden;background:#222}.member figure img{width:100%;height:100%;object-fit:cover;filter:grayscale(1);transition:.7s}.member:hover figure img{filter:grayscale(0);transform:scale(1.02)}.member-meta{padding:18px 18px 0;display:grid;grid-template-columns:28px 1fr}.member-meta h3{font-size:23px;letter-spacing:-.03em;margin:0}.member-meta b{grid-column:2;font-size:9px;text-transform:uppercase;letter-spacing:.12em;margin-top:6px;font-weight:400;color:#aaa}.member>p{padding:0 18px 0 46px;font-size:10px;line-height:1.75;text-transform:uppercase;letter-spacing:.08em;color:#aaa}.archive-list{border-top:1px solid #111}.archive-list>div{display:grid;grid-template-columns:70px 1fr 230px;align-items:center;border-bottom:1px solid #bbb;padding:17px 0}.archive-list span,.archive-list b{font-size:9px;text-transform:uppercase;letter-spacing:.12em;font-weight:400}.archive-list h3{font-size:clamp(24px,3vw,46px);letter-spacing:-.045em;margin:0}
@media(max-width:760px){.skills-section,.team-section,.archive{padding-left:20px;padding-right:20px;padding-bottom:85px}.skills-section .section-head,.team-section .section-head,.archive .section-head{padding-top:80px}.skills-grid{grid-template-columns:1fr}.skill-card:nth-child(odd){border-right:0}.skill-card{min-height:240px;padding:22px 0}.skill-card h3{margin:45px 0 20px}.team-grid{grid-template-columns:1fr}.member figure{height:75vh}.member-meta h3{font-size:28px}.archive-list>div{grid-template-columns:35px 1fr}.archive-list b{display:none}}
/* V6 motion system — cinematic, soft, editorial */
html{scroll-behavior:auto}.nav{transition:transform .65s cubic-bezier(.16,1,.3,1),padding .55s cubic-bezier(.16,1,.3,1),background .5s,backdrop-filter .5s}.nav.nav-hidden{transform:translateY(-120%)}.nav.scrolled{background:rgba(0,0,0,.06);backdrop-filter:blur(10px)}
.page-loader{position:fixed;z-index:9999;inset:0;background:#090909;color:#fff;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:25px;transition:transform 1s cubic-bezier(.76,0,.24,1);transform-origin:top}.loader-logo{font-size:clamp(70px,13vw,190px);font-weight:900;letter-spacing:-.09em;line-height:.7;transform:translateY(20px);opacity:0;animation:loaderLogo .7s .08s cubic-bezier(.16,1,.3,1) forwards}.loader-line{width:min(260px,40vw);height:1px;background:#333;overflow:hidden}.loader-line i{display:block;height:100%;background:#fff;transform:translateX(-100%);animation:loaderLine 1s .15s cubic-bezier(.65,0,.35,1) forwards}.loaded .page-loader{transform:translateY(-105%);transition-delay:.2s}@keyframes loaderLogo{to{opacity:1;transform:none}}@keyframes loaderLine{to{transform:none}}
.js .hero>img{transform:scale(1.12);filter:brightness(.72);transition:transform 2.1s cubic-bezier(.16,1,.3,1),filter 1.8s ease}.loaded .hero>img{transform:scale(1.045);filter:brightness(1)}.hero-copy{overflow:visible}.hero-kicker,.hero-copy .arrow-link,.hero-top,.scroll{opacity:0;transform:translateY(18px);transition:opacity .9s cubic-bezier(.16,1,.3,1),transform .9s cubic-bezier(.16,1,.3,1)}.loaded .hero-kicker,.loaded .hero-top{opacity:1;transform:none;transition-delay:.8s}.loaded .hero-copy .arrow-link{opacity:1;transform:none;transition-delay:1.25s}.loaded .scroll{opacity:1;transform:none;transition-delay:1.45s}.hero-copy h1 span{display:inline-block;transform:translateY(115%);transition:transform 1.15s cubic-bezier(.16,1,.3,1)}.hero-copy h1,.hero-copy h1 i{overflow:hidden;display:inline-block}.loaded .hero-copy h1>span{transform:none;transition-delay:.62s}.loaded .hero-copy h1 i span{transform:none;transition-delay:.78s}
.reveal{opacity:0;transform:translate3d(0,70px,0);filter:blur(3px);transition:opacity 1.05s cubic-bezier(.16,1,.3,1),transform 1.05s cubic-bezier(.16,1,.3,1),filter .9s ease}.reveal.show{opacity:1;transform:none;filter:none}.stagger-item{opacity:0;transform:translate3d(0,45px,0);transition:opacity .9s cubic-bezier(.16,1,.3,1),transform .9s cubic-bezier(.16,1,.3,1);transition-delay:var(--delay,0ms)}.stagger-in>.stagger-item{opacity:1;transform:none}
.project figure{clip-path:inset(0 0 0 0);transition:clip-path 1s cubic-bezier(.16,1,.3,1)}.project img{will-change:transform;transition:transform 1.1s cubic-bezier(.16,1,.3,1),opacity .7s ease}.project .view{opacity:0;transform:translate3d(0,25px,0);transition:opacity .45s ease,transform .55s cubic-bezier(.16,1,.3,1)}.project:hover .view{opacity:1;transform:none}.project:hover img{transform:scale(1.045)}
.member{overflow:hidden}.member figure img{will-change:transform,filter;transform:scale(1.035);transition:transform 1.1s cubic-bezier(.16,1,.3,1),filter .8s ease}.member:hover figure img{transform:scale(1)}.skill-card{transition:background .55s cubic-bezier(.16,1,.3,1),padding .55s cubic-bezier(.16,1,.3,1)}.skill-card:hover{background:#e4e1d8;padding-left:40px}.service-list>div,.archive-list>div{transition:padding .55s cubic-bezier(.16,1,.3,1),background .45s,color .45s}.service-list>div:hover{padding-left:22px;padding-right:22px;background:#151515}.archive-list>div:hover{padding-left:18px;padding-right:18px;background:#111;color:#fff}.marquee div{animation-duration:34s}.feature>img{will-change:transform}.arrow-link b{transition:transform .45s cubic-bezier(.16,1,.3,1)}.arrow-link:hover b{transform:translate(7px,7px)}
@media (prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.page-loader{display:none}.reveal,.stagger-item,.hero-kicker,.hero-copy .arrow-link,.hero-top,.scroll{opacity:1!important;transform:none!important;filter:none!important}.hero-copy h1 span{transform:none!important}}
@media(max-width:760px){.page-loader{display:none}.js .hero>img,.loaded .hero>img{transform:scale(1.03)}.reveal{transform:translate3d(0,38px,0);filter:none}.skill-card:hover{padding-left:0}.nav.nav-hidden{transform:none}}
/* V6.2 — scroll-scrub cinematic hero */
.hero.hero-scrub{height:360vh;min-height:0;overflow:visible;background:#080808;color:#fff;position:relative}
.hero-sticky{position:sticky;top:0;height:100svh;min-height:680px;overflow:hidden;background:#080808}
.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center center;transform:scale(1.01);will-change:contents;filter:brightness(.78)}
.loaded .hero-video{filter:brightness(1);transition:filter 1.4s ease}
.hero-scrub .shade{pointer-events:none}
.hero-scrub .hero-top,.hero-scrub .hero-copy,.hero-scrub .scroll{z-index:3}
.scrub-progress{position:absolute;z-index:4;right:3vw;bottom:3vh;width:1px;height:92px;background:rgba(255,255,255,.28);overflow:hidden}
.scrub-progress span{display:block;width:100%;height:100%;background:#fff;transform-origin:top;transform:scaleY(0);will-change:transform}
.hero-scrub.scrubbing .hero-copy{opacity:calc(1 - var(--hero-progress,0) * 1.7);transform:translate3d(0,calc(var(--hero-progress,0) * -28px),0);transition:none}
.hero-scrub.scrubbing .hero-top{opacity:calc(1 - var(--hero-progress,0) * 2.2);transition:none}
.hero-scrub.scrubbing .scroll{opacity:calc(1 - var(--hero-progress,0) * 4);transition:none}
@media(max-width:760px){.hero.hero-scrub{height:300vh}.hero-sticky{min-height:650px}.hero-video{object-position:center center}.scrub-progress{right:18px;height:70px;bottom:24px}}
@media(prefers-reduced-motion:reduce){.hero.hero-scrub{height:100svh}.hero-sticky{position:relative}.scrub-progress{display:none}}

/* V6.4 — subtle translucent backing for Hero typography */
.hero-scrub .hero-top{
  left:calc(4vw - 14px);
  right:calc(4vw - 14px);
  padding:11px 14px;
  background:rgba(8,8,8,.18);
  border:1px solid rgba(255,255,255,.10);
  border-radius:8px;
  -webkit-backdrop-filter:blur(8px) saturate(115%);
  backdrop-filter:blur(8px) saturate(115%);
}
.hero-scrub .hero-copy{
  left:4vw;
  bottom:7vh;
  padding:0;
  background:transparent;
  border:0;
  border-radius:0;
  -webkit-backdrop-filter:none;
  backdrop-filter:none;
  box-shadow:none;
}
.hero-scrub .hero-copy h1{margin-top:20px}
.hero-scrub .scroll{
  padding:10px 7px;
  background:rgba(7,7,7,.18);
  border-radius:7px;
  -webkit-backdrop-filter:blur(7px);
  backdrop-filter:blur(7px);
}
@media(max-width:760px){
  .hero-scrub .hero-top{left:10px;right:10px;padding:10px}
  .hero-scrub .hero-copy{left:20px;right:auto;bottom:55px;padding:0}
}

/* V6.8 — editorial team experience */
.team-section{position:relative;overflow:hidden;background:#090909;padding-bottom:9vw}
.team-section:before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 50% 30%,rgba(255,255,255,.055),transparent 42%)}
.team-section .section-head{position:relative;z-index:2;padding-bottom:3vw}
.team-grid{position:relative;z-index:2;display:flex;gap:14px;background:transparent;min-height:74vh;align-items:stretch}
.member{position:relative;flex:1 1 0;min-width:0;padding:0;background:#111;border:1px solid rgba(255,255,255,.12);overflow:hidden;transition:flex .9s cubic-bezier(.16,1,.3,1),transform .9s cubic-bezier(.16,1,.3,1),border-color .5s ease,opacity .5s ease}
.member figure{position:absolute;inset:0;height:auto;margin:0;background:#1a1a1a}
.member figure:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 30%,rgba(0,0,0,.12) 52%,rgba(0,0,0,.92) 100%);transition:background .8s ease}
.member figure img{width:100%;height:100%;object-fit:cover;filter:grayscale(1) contrast(1.02);transform:scale(1.07);transition:transform 1.25s cubic-bezier(.16,1,.3,1),filter .8s ease;will-change:transform}
.member-meta{position:absolute;left:0;right:0;bottom:78px;z-index:2;padding:0 24px;display:grid;grid-template-columns:30px 1fr;transform:translateY(0);transition:transform .8s cubic-bezier(.16,1,.3,1)}
.member-meta span{padding-top:7px;color:#d7c5a7}
.member-meta h3{font-size:clamp(22px,2vw,34px);color:#fff;white-space:nowrap}
.member-meta b{grid-column:2;color:#d7c5a7;margin-top:8px}
.member>p{position:absolute;z-index:2;left:54px;right:24px;bottom:24px;margin:0;padding:0;color:#c5c5c5;opacity:0;transform:translateY(24px);font-size:9px;line-height:1.8;transition:opacity .55s ease .08s,transform .75s cubic-bezier(.16,1,.3,1) .04s}
.member:after{content:"VIEW PROFILE  ↗";position:absolute;right:24px;top:24px;z-index:2;color:#fff;font-size:8px;letter-spacing:.16em;opacity:0;transform:translateY(-8px);transition:.5s ease}
.team-grid:hover .member{opacity:.58}
.team-grid .member:hover{flex:1.55;opacity:1;border-color:rgba(215,197,167,.5);transform:translateY(-8px)}
.member:hover figure img{filter:grayscale(.15);transform:scale(1.015)}
.member:hover figure:after{background:linear-gradient(180deg,rgba(0,0,0,.04),transparent 35%,rgba(0,0,0,.94) 100%)}
.member:hover .member-meta{transform:translateY(-74px)}
.member:hover>p,.member:hover:after{opacity:1;transform:none}
.member.reveal{transform:translateY(70px) scale(.985);transition:opacity 1s cubic-bezier(.16,1,.3,1),transform 1.15s cubic-bezier(.16,1,.3,1),flex .9s cubic-bezier(.16,1,.3,1),border-color .5s ease}
.member.reveal.show{transform:none}
.member:nth-child(2).reveal{transition-delay:.08s}.member:nth-child(3).reveal{transition-delay:.16s}.member:nth-child(4).reveal{transition-delay:.24s}
@media(max-width:900px){.team-grid{display:grid;grid-template-columns:1fr 1fr;min-height:0}.member{height:70vh}.team-grid:hover .member{opacity:1}.team-grid .member:hover{transform:none}.member:hover .member-meta{transform:translateY(-65px)}}
@media(max-width:760px){.team-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;margin-right:-20px;padding-right:20px;padding-bottom:12px}.team-grid::-webkit-scrollbar{display:none}.member{flex:0 0 82vw;height:72vh;scroll-snap-align:start}.member>p{opacity:1;transform:none}.member .member-meta{transform:translateY(-65px)}.member:after{display:none}.member figure img{filter:grayscale(.7);transform:scale(1.02)}}

/* V6.16 — cinematic Selected Projects motion */
.work .project{--px:0;--py:0;perspective:1400px}
.work .project figure{isolation:isolate;transform:translateZ(0);clip-path:inset(0 0 100% 0);transition:clip-path 1.35s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1);will-change:clip-path,transform}
.work .project.show figure{clip-path:inset(0 0 0 0)}
.work .project figure:after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(180deg,transparent 42%,rgba(0,0,0,.28) 100%);opacity:.22;transition:opacity .8s ease}
.work .project img{transform:scale(1.09);transition:transform 1.5s cubic-bezier(.16,1,.3,1),filter .9s ease,opacity .9s ease;will-change:transform,filter}
.work .project.show img{transform:scale(1.001)}
.work .project:hover figure{transform:translateY(-5px)}
.work .project:hover figure:after{opacity:.5}
.work .project:hover img{transform:scale(1.035)!important;filter:saturate(1.04) contrast(1.02)}
.work .project>div{opacity:0;transform:translate3d(0,24px,0);transition:opacity .8s ease .18s,transform 1s cubic-bezier(.16,1,.3,1) .18s}
.work .project.show>div{opacity:1;transform:none}
.work .project h3{transition:transform .6s cubic-bezier(.16,1,.3,1)}
.work .project:hover h3{transform:translateX(8px)}
.work .project .view{z-index:3;right:22px;bottom:22px;border-radius:999px;padding:13px 17px;background:rgba(240,238,232,.88);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);opacity:0;transform:translate3d(0,18px,0) scale(.96);transition:opacity .45s ease,transform .65s cubic-bezier(.16,1,.3,1)}
.work .project:hover .view{opacity:1;transform:none}
.work .grid .project:nth-child(2){transition-delay:.1s}
@media(max-width:760px){.work .project figure{clip-path:inset(0 0 12% 0)}.work .project.show figure{clip-path:inset(0)}.work .project img{transform:scale(1.045)}.work .project.show img{transform:scale(1)}.work .project:hover figure{transform:none}.work .project:hover h3{transform:none}}


/* V6.17 — complete editorial projects redesign */
.projects-editorial{padding-bottom:10vw;overflow:hidden}.projects-editorial .section-head{position:relative;z-index:2}.project-stage{position:relative}.project-rail{display:grid;grid-auto-flow:column;grid-auto-columns:min(78vw,1120px);gap:3.2vw;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x mandatory;padding:0 4vw 4vw 0;scrollbar-width:none}.project-rail::-webkit-scrollbar{display:none}.project-panel{scroll-snap-align:start;display:block;min-width:0}.project-panel figure{height:min(72vh,760px);margin:0;position:relative;overflow:hidden;background:#111;clip-path:inset(0 0 100% 0);transition:clip-path 1.25s cubic-bezier(.16,1,.3,1)}.project-panel.show figure{clip-path:inset(0)}.project-panel img{width:100%;height:100%;object-fit:cover;display:block;transform:scale(1.08);transition:transform 1.5s cubic-bezier(.16,1,.3,1),filter .8s ease;will-change:transform}.project-panel.show img{transform:scale(1.001)}.project-panel figure:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(0,0,0,.48));opacity:.6;transition:opacity .6s}.panel-index{position:absolute;z-index:2;top:22px;left:24px;color:#fff;font-size:10px;letter-spacing:.16em}.project-panel .view{position:absolute;z-index:3;right:22px;bottom:22px;background:rgba(240,238,232,.9);backdrop-filter:blur(12px);padding:13px 17px;border-radius:999px;text-transform:uppercase;font-size:9px;letter-spacing:.13em;opacity:0;transform:translateY(16px);transition:.55s cubic-bezier(.16,1,.3,1)}.panel-meta{display:grid;grid-template-columns:1.35fr .65fr;gap:4vw;padding:18px 0 0;border-top:1px solid #111;margin-top:14px}.panel-meta span{font-size:9px;text-transform:uppercase;letter-spacing:.14em}.panel-meta h3{font-size:clamp(38px,5.4vw,82px);line-height:.92;letter-spacing:-.055em;margin:10px 0 0}.panel-meta p{font-size:13px;line-height:1.6;margin:2px 0 0;max-width:360px}.project-panel:hover img{transform:scale(1.035)}.project-panel:hover figure:after{opacity:.78}.project-panel:hover .view{opacity:1;transform:none}.project-progress{height:1px;background:#b7b4ac;margin-top:2.5vw;position:relative;overflow:hidden}.project-progress span{position:absolute;inset:0 auto 0 0;width:100%;background:#111;transform:scaleX(.12);transform-origin:left;will-change:transform}.projects-editorial:before{content:"SELECTED / 2026";display:block;position:absolute;right:4vw;margin-top:8px;font-size:9px;letter-spacing:.16em;writing-mode:vertical-rl;opacity:.55}
@media(max-width:760px){.projects-editorial{padding-right:0}.projects-editorial .section-head{margin-right:20px}.project-rail{grid-auto-columns:86vw;gap:18px;padding-right:20px}.project-panel figure{height:58vh;min-height:420px}.panel-meta{grid-template-columns:1fr;padding-right:20px}.panel-meta h3{font-size:12vw}.panel-meta p{display:none}.project-panel .view{display:none}.project-progress{margin-right:20px;margin-top:28px}.projects-editorial:before{display:none}}

/* V6.18 — monochrome project previews + cinematic focus hover */
.project-rail{grid-auto-columns:min(48vw,720px);gap:2.2vw;padding-top:2vw;padding-bottom:6vw}
.project-panel{position:relative;z-index:1;transition:transform .8s cubic-bezier(.16,1,.3,1),z-index 0s}
.project-panel figure{height:min(58vh,610px);transition:clip-path 1.25s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1),box-shadow .8s ease}
.project-panel img{filter:grayscale(1) saturate(0) contrast(1.04);transition:transform 1.35s cubic-bezier(.16,1,.3,1),filter .75s cubic-bezier(.16,1,.3,1)}
.project-panel:hover{z-index:80;transform:scale(1.075)}
.project-panel:hover figure{box-shadow:0 30px 90px rgba(0,0,0,.28)}
.project-panel:hover img{filter:grayscale(0) saturate(1.04) contrast(1.01);transform:scale(1.025)!important}
.project-panel:hover figure:after{opacity:.42}
.project-focus-backdrop{position:fixed;inset:0;z-index:60;pointer-events:none;background:rgba(8,8,8,.12);backdrop-filter:grayscale(1) blur(10px);-webkit-backdrop-filter:grayscale(1) blur(10px);opacity:0;transition:opacity .55s cubic-bezier(.16,1,.3,1)}
body.project-focus .project-focus-backdrop{opacity:1}
body.project-focus .project-panel:not(:hover){opacity:.7}
.project-panel{transition:transform .8s cubic-bezier(.16,1,.3,1),opacity .55s ease}
@media(max-width:760px){.project-rail{grid-auto-columns:76vw;gap:16px}.project-panel figure{height:50vh;min-height:360px}.project-panel img{filter:grayscale(.75) saturate(.35)}.project-panel:hover{transform:none}.project-focus-backdrop{display:none}}

/* V6.19 — compact section jump navigation */
.section-jump{display:grid;grid-template-columns:minmax(150px,.55fr) 3fr;gap:3vw;align-items:stretch;padding:18px 4vw 22px;background:#0d0d0d;color:#f0eee8;border-bottom:1px solid rgba(255,255,255,.12)}
.jump-label{display:flex;flex-direction:column;justify-content:space-between;padding:8px 0}.jump-label span{text-transform:uppercase;font-size:10px;letter-spacing:.18em}.jump-label small{font-size:9px;letter-spacing:.08em;opacity:.48;text-transform:uppercase}
.jump-nav{display:grid;grid-template-columns:repeat(7,1fr);border-left:1px solid rgba(255,255,255,.13)}.jump-nav a{min-width:0;position:relative;display:grid;grid-template-columns:1fr auto;grid-template-rows:auto 1fr;gap:14px 8px;min-height:86px;padding:10px 13px 12px;border-right:1px solid rgba(255,255,255,.13);color:inherit;overflow:hidden;transition:background .55s cubic-bezier(.16,1,.3,1),color .55s cubic-bezier(.16,1,.3,1)}.jump-nav a:before{content:"";position:absolute;inset:auto 0 0;height:2px;background:#f0eee8;transform:scaleX(0);transform-origin:left;transition:transform .55s cubic-bezier(.16,1,.3,1)}.jump-nav i{font-style:normal;font-size:8px;letter-spacing:.15em;opacity:.45}.jump-nav b{align-self:end;font-size:10px;font-weight:500;text-transform:uppercase;letter-spacing:.12em}.jump-nav span{font-size:12px;opacity:.35;transition:transform .55s cubic-bezier(.16,1,.3,1),opacity .4s}.jump-nav a:hover,.jump-nav a.active{background:#f0eee8;color:#0d0d0d}.jump-nav a:hover:before,.jump-nav a.active:before{transform:scaleX(1)}.jump-nav a:hover span,.jump-nav a.active span{opacity:1;transform:translate(2px,2px)}
/* requested project tuning */
.project-rail{grid-auto-columns:min(56vw,820px);gap:2.2vw}.project-panel figure{height:min(58vh,610px)}.project-focus-backdrop{background:rgba(8,8,8,.07);backdrop-filter:grayscale(1) blur(4px);-webkit-backdrop-filter:grayscale(1) blur(4px)}
@media(max-width:900px){.section-jump{grid-template-columns:1fr;padding:16px 20px 18px;gap:12px}.jump-label{flex-direction:row}.jump-nav{display:flex;overflow-x:auto;scrollbar-width:none;border-top:1px solid rgba(255,255,255,.13)}.jump-nav::-webkit-scrollbar{display:none}.jump-nav a{flex:0 0 112px;min-height:72px}.project-rail{grid-auto-columns:72vw}.project-panel figure{height:48vh;min-height:340px}}


/* V6.20 — persistent right-side section navigator */
.section-jump{display:none!important}
.floating-section-nav{position:fixed;right:18px;top:50%;transform:translateY(-50%);z-index:140;display:flex;flex-direction:column;gap:7px;padding:9px 7px;border:1px solid rgba(255,255,255,.14);border-radius:18px;background:rgba(12,12,12,.34);backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px);box-shadow:0 10px 36px rgba(0,0,0,.12);transition:background .35s ease,border-color .35s ease}
.floating-section-nav a{position:relative;width:28px;height:28px;display:grid;place-items:center;color:#f3f0e8;border-radius:50%;font-size:8px;letter-spacing:.05em;opacity:.55;transition:opacity .35s ease,transform .45s cubic-bezier(.16,1,.3,1),background .35s ease,color .35s ease}
.floating-section-nav a:before{content:"";width:5px;height:5px;border:1px solid currentColor;border-radius:50%;transition:transform .4s cubic-bezier(.16,1,.3,1),background .3s ease}
.floating-section-nav a span{position:absolute;right:39px;top:50%;transform:translate(7px,-50%);padding:6px 9px;white-space:nowrap;background:rgba(12,12,12,.82);border:1px solid rgba(255,255,255,.12);border-radius:7px;font-size:8px;text-transform:uppercase;letter-spacing:.13em;opacity:0;pointer-events:none;transition:opacity .25s ease,transform .35s cubic-bezier(.16,1,.3,1)}
.floating-section-nav a:hover,.floating-section-nav a.active{opacity:1;transform:scale(1.12);background:rgba(255,255,255,.11)}
.floating-section-nav a.active:before{background:currentColor;transform:scale(1.3)}
.floating-section-nav a:hover span{opacity:1;transform:translate(0,-50%)}
/* smaller project previews + lighter focus blur */
.project-rail{grid-auto-columns:min(40vw,610px)!important;gap:2vw!important}
.project-panel figure{height:min(50vh,520px)!important;min-height:360px}
.project-focus-backdrop{background:rgba(8,8,8,.045)!important;backdrop-filter:grayscale(1) blur(2px)!important;-webkit-backdrop-filter:grayscale(1) blur(2px)!important}
/* invisible edge-hover controls: no content overlap */
.project-stage{position:relative}
@media(max-width:900px){.floating-section-nav{right:8px;padding:7px 5px;gap:4px;background:rgba(12,12,12,.25)}.floating-section-nav a{width:25px;height:25px}.floating-section-nav a span{display:none}.project-rail{grid-auto-columns:68vw!important}.project-panel figure{height:46vh!important;min-height:330px}}

/* V6.22 — cinematic click-and-drag project gallery */
.project-rail{cursor:grab;user-select:none;-webkit-user-select:none;scroll-behavior:auto;touch-action:pan-y;}
.project-rail.is-dragging{cursor:grabbing;scroll-snap-type:none;}
.project-rail.is-dragging .project-panel{pointer-events:none;}
.project-rail.is-dragging .project-panel img{transform:scale(1.018);transition:transform .45s cubic-bezier(.16,1,.3,1),filter .45s ease;}
.project-rail.drag-settling{scroll-snap-type:x mandatory;}

.archive-list>a{display:grid;grid-template-columns:70px 1fr auto;align-items:center;text-decoration:none;color:inherit;border-top:1px solid rgba(0,0,0,.16);padding:22px 0}.archive-list>a:last-child{border-bottom:1px solid rgba(0,0,0,.16)}.archive-list>a h3,.archive-list>a b{margin:0}.archive-list>a b{font-weight:400;font-size:11px;text-transform:uppercase;letter-spacing:.08em;opacity:.6}@media(max-width:760px){.archive-list>a{grid-template-columns:44px 1fr}.archive-list>a b{grid-column:2;margin-top:6px}}

/* V6.30 — Our Approach artwork + linked contact channels */
.feature>img[src*="our-approach"]{filter:blur(1.15px);transform:scale(1.008)}
.contact-label{display:inline-flex;align-items:center;gap:12px;min-width:0}
.contact-icon{width:24px;height:24px;border:1px solid #555;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:11px;line-height:1;flex:0 0 24px;transition:transform .35s ease,border-color .35s ease}
.contact>a:hover .contact-icon{transform:scale(1.1);border-color:#fff}


/* V6.31 — PROJECTS: new cinematic editorial gallery, click-first / no drag */
.projects-editorial{overflow:visible!important;padding-bottom:11vw}
.project-stage{overflow:visible!important}
.project-rail{
  display:grid!important;
  grid-template-columns:repeat(12,minmax(0,1fr))!important;
  grid-auto-flow:row!important;
  grid-auto-columns:auto!important;
  gap:7vw 2.2vw!important;
  overflow:visible!important;
  padding:2vw 0 4vw!important;
  scroll-snap-type:none!important;
  cursor:default!important;
  user-select:auto!important;
  touch-action:auto!important;
}
.project-panel{grid-column:span 5;display:block;transform:none!important;opacity:1;position:relative;z-index:1}
.project-panel:nth-child(4n+1){grid-column:1 / span 7}
.project-panel:nth-child(4n+2){grid-column:9 / span 4;margin-top:10vw}
.project-panel:nth-child(4n+3){grid-column:2 / span 4;margin-top:1vw}
.project-panel:nth-child(4n+4){grid-column:7 / span 6;margin-top:-3vw}
.project-panel figure{height:auto!important;min-height:0!important;aspect-ratio:1.32/1;margin:0;clip-path:none!important;overflow:hidden;background:#111;box-shadow:none!important;transition:transform .9s cubic-bezier(.16,1,.3,1),box-shadow .9s ease!important}
.project-panel:nth-child(4n+2) figure,.project-panel:nth-child(4n+3) figure{aspect-ratio:.84/1}
.project-panel img{width:100%;height:100%;object-fit:cover;filter:grayscale(1) saturate(0) contrast(1.03);transform:scale(1.015)!important;transition:filter .75s ease,transform 1.15s cubic-bezier(.16,1,.3,1)!important}
.project-panel:hover{z-index:80;transform:none!important}
.project-panel:hover figure{transform:translateY(-8px)!important;box-shadow:0 26px 70px rgba(0,0,0,.16)!important}
.project-panel:hover img{filter:grayscale(0) saturate(1.03) contrast(1.01);transform:scale(1.045)!important}
.panel-meta{display:flex!important;justify-content:space-between;align-items:flex-end;gap:24px;padding:14px 0 0!important;margin-top:0!important;border-top:0!important;border-bottom:1px solid rgba(17,17,17,.25);padding-bottom:15px!important}
.panel-meta h3{font-size:clamp(27px,3.2vw,54px)!important;line-height:.94;margin:7px 0 0;letter-spacing:-.045em}
.panel-meta p{font-size:11px;max-width:180px;margin:0 0 3px;opacity:.62}
.panel-index{top:15px;left:16px;font-size:9px}
.project-panel .view{right:15px;bottom:15px;padding:10px 13px;font-size:8px;backdrop-filter:blur(7px)}
.project-progress{display:none!important}
.project-rail.is-dragging,.project-rail.drag-settling{cursor:default!important;scroll-snap-type:none!important}
.project-rail.is-dragging .project-panel{pointer-events:auto!important}
.projects-editorial:before{opacity:.35}
@media(max-width:900px){
 .project-rail{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:52px 16px!important;padding-right:20px!important}
 .project-panel,.project-panel:nth-child(n){grid-column:auto!important;margin-top:0!important}
 .project-panel:nth-child(3n+1){grid-column:1 / -1!important}
 .project-panel figure,.project-panel:nth-child(n) figure{aspect-ratio:1.05/1!important}
 .project-panel:nth-child(3n+2) figure,.project-panel:nth-child(3n+3) figure{aspect-ratio:.82/1!important}
 .panel-meta{display:block!important}.panel-meta p{display:none}.panel-meta h3{font-size:7vw!important}
}
@media(max-width:600px){
 .project-rail{display:block!important;padding-right:20px!important}
 .project-panel,.project-panel:nth-child(n){margin:0 0 52px!important}
 .project-panel figure,.project-panel:nth-child(n) figure{aspect-ratio:4/5!important}
 .panel-meta h3{font-size:10vw!important}
}

/* V7.13 — playback-first hero + CMS runtime states */
.hero.hero-scrub{height:100svh!important;min-height:680px;overflow:hidden!important}
.hero-scrub .hero-sticky{position:relative!important;top:auto}
.hero-scrub .scrub-progress{display:none!important}
.hero-video{transform:translateZ(0) scale(1.01);backface-visibility:hidden}
.hero-play-blocked .scroll{opacity:1}
.case-missing{min-height:100vh;padding:18vh 5vw;background:#f0eee8;color:#090909}
.case-missing p{font-size:10px;letter-spacing:.15em;text-transform:uppercase}
.case-missing h1{font-size:clamp(64px,12vw,180px);line-height:.8;letter-spacing:-.08em;margin:6vw 0}
@media(max-width:760px){.hero.hero-scrub{height:100svh!important;min-height:650px}}

/* Stage 4 — keep viewport-sized motion layers from shifting the root canvas. */
html{overflow-x:hidden}
