.blv{aspect-ratio:928/838;isolation:isolate;border-radius:20px;width:100%;position:relative;overflow:hidden}.blv__bg{background-color:#e6edc3;background-position:50%;background-repeat:no-repeat;background-size:cover;position:absolute;inset:0}.blv__card{cursor:pointer;transform-origin:0 0;will-change:transform;background:#fff;border-radius:16px;transition:transform .55s cubic-bezier(.22,1,.36,1),box-shadow .55s,opacity .55s,filter .55s;position:absolute;overflow:hidden;box-shadow:0 22px 55px -28px #181a1c6b}.blv__card img{border-radius:0;width:100%;height:auto;display:block}.blv:hover .blv__card{opacity:.72;filter:saturate(.9)}.blv .blv__card:hover{opacity:1;filter:none;z-index:5;box-shadow:0 38px 90px -35px #181a1c8c}.blv .blv__card--1:hover{transform:translate(2%,-2%)scale(1.04)rotate(-2deg)}.blv .blv__card--2:hover{transform:translate(-2%,2%)scale(1.04)rotate(4deg)}.blv .blv__card--3:hover{transform:translateY(-4%)scale(1.04)rotate(-1deg)}@media (prefers-reduced-motion:reduce){.blv__card{transition:none}}:root{--bg:#faf7f2;--ink:#15171a;--muted:#8b8780;--accent:#ec2a5a;--accent-dark:#c8113f;--c-blue:#b9def5;--c-pink:#f2a9bc;--c-orange:#d77450;--c-green:#46a85a;--c-yellow:#f4c84e;--c-purple:#b9a7e6;--c-teal:#46b3a5;--c-coral:#ef8d6b;--header-h:96px;--pad-b:clamp(110px, 13vh, 190px)}@media (width<=767px){:root{--header-h:48px}}.works img{object-fit:cover;width:100%;height:100%;display:block}.works header{height:var(--header-h);z-index:100;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:linear-gradient(#faf7f2f5,#faf7f2b3 70%,#faf7f200);justify-content:space-between;align-items:center;padding:0 clamp(20px,4vw,64px);display:flex;position:fixed;top:0;left:0;right:0}.brand{line-height:1}.brand small{color:var(--ink);margin-bottom:2px;font-size:13px;font-style:italic;font-weight:500;display:block}.brand .logo{letter-spacing:-.02em;align-items:center;font-size:30px;font-weight:800;display:flex}.brand .logo .dot{border:.16em solid var(--accent);box-sizing:border-box;border-radius:50%;width:.62em;height:.62em;margin-left:.02em;transform:translateY(.04em)}.works nav{align-items:center;gap:clamp(18px,2.6vw,44px);display:flex}.works nav a{color:var(--ink);align-items:center;gap:5px;font-size:17px;font-weight:600;text-decoration:none;display:flex}.works nav a .car{opacity:.7;font-size:.7em}.works nav a:hover{color:var(--accent)}.cta{border:1.5px solid var(--accent);color:var(--ink);background:0 0;border-radius:999px;align-items:center;gap:12px;padding:13px 13px 13px 24px;font-size:16px;font-weight:700;text-decoration:none;transition:background .25s,color .25s;display:inline-flex}.cta .arrow{background:var(--accent);color:#fff;border-radius:50%;place-items:center;width:30px;height:30px;font-size:15px;transition:transform .25s;display:grid}.cta:hover{background:var(--accent);color:#fff}.cta:hover .arrow{color:var(--accent);background:#fff;transform:translate(2px)}@media (width<=880px){.works nav{display:none}}.hero{min-height:62vh;padding:calc(var(--header-h) + 40px) 24px 30px;text-align:center;justify-content:center;align-items:center;display:flex}.hero h1{letter-spacing:-.03em;align-items:flex-start;gap:clamp(10px,1.6vw,26px);font-size:clamp(34px,6.6vw,104px);font-weight:900;font-stretch:125%;line-height:.92;display:inline-flex}.hero h1 .yr{color:var(--muted);letter-spacing:0;font-size:.2em;font-weight:700;font-stretch:100%;transform:translateY(.55em)}.hero h1 .period{color:var(--accent)}.hero-wrap{max-width:1100px}.hero-lead{color:var(--muted);max-width:620px;margin-top:26px;margin-left:auto;margin-right:auto;font-size:clamp(15px,1.5vw,19px);font-weight:500;line-height:1.5}.reveal-line{display:inline-flex;overflow:hidden}.reveal-line>span{animation:.9s cubic-bezier(.16,1,.3,1) forwards riseIn;display:inline-block;transform:translateY(110%)}@keyframes riseIn{to{transform:translateY(0)}}.works{position:relative}.project{padding:clamp(210px, 32vh, 360px) clamp(20px, 4vw, 64px) var(--pad-b);align-items:flex-start;display:flex;position:relative}.project.right{justify-content:flex-end}.project.left{justify-content:flex-start}.panel{aspect-ratio:4/3;border-radius:4px;width:min(56vw,920px);position:relative;overflow:visible}@media (width<=900px){.panel{aspect-ratio:3/4;width:88vw}}.panel .bg{z-index:0;transform-origin:bottom;border-radius:6px;transition:transform .9s cubic-bezier(.16,1,.3,1);position:absolute;inset:0;transform:scaleY(0)}.project.in-view .panel .bg{transform:scaleY(1)}.c-blue{background:var(--c-blue)}.c-pink{background:var(--c-pink)}.c-orange{background:var(--c-orange)}.c-green{background:var(--c-green)}.c-yellow{background:var(--c-yellow)}.c-purple{background:var(--c-purple)}.c-teal{background:var(--c-teal)}.c-coral{background:var(--c-coral)}.cluster{z-index:2;position:absolute;inset:6%}.card{opacity:0;transform:translateY(48px) scale(.96) rotate(var(--rot,0deg));will-change:transform;background:#ddd;border-radius:6px;transition:opacity .8s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1);position:absolute;overflow:hidden;box-shadow:0 18px 45px #15171a38}.project.in-view .card{opacity:1;transform:translateY(0) scale(1) rotate(var(--rot,0deg))}.project.in-view .card:first-child{transition-delay:.12s}.project.in-view .card:nth-child(2){transition-delay:.24s}.project.in-view .card:nth-child(3){transition-delay:.36s}.project.in-view .card:nth-child(4){transition-delay:.48s}.project.in-view .card:nth-child(5){transition-delay:.6s}.project.in-view .card:nth-child(6){transition-delay:.72s}.project.in-view .card:nth-child(7){transition-delay:.84s}.project.in-view .card:nth-child(8){transition-delay:.96s}.project.in-view .card:nth-child(9){transition-delay:1.08s}.project.in-view .card:nth-child(10){transition-delay:1.2s}.card:hover{box-shadow:0 26px 60px #15171a57}.card .ph{transform-origin:50%;will-change:transform;width:100%;height:100%;animation:18s ease-in-out infinite alternate kenburns}.cluster .card.a .ph{transform-origin:30% 30%;animation-duration:17s}.cluster .card.b .ph{transform-origin:70% 35%;animation-duration:21s;animation-direction:alternate-reverse}.cluster .card.c .ph{transform-origin:40% 70%;animation-duration:19s}.cluster .card.d .ph{transform-origin:65% 60%;animation-duration:23s;animation-direction:alternate-reverse}@keyframes kenburns{0%{transform:scale(1.06)translate(0)}50%{transform:scale(1.14)translate(-1.5%,-1%)}to{transform:scale(1.1)translate(1.5%,1%)}}.card:hover .ph{animation-duration:8s}.card.lottie{background:var(--lot-bg,#15171a)}.card.lottie .lottie-mount{width:100%;height:100%}.card.lottie .motion-badge{z-index:3;letter-spacing:.09em;text-transform:uppercase;color:#fff;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);pointer-events:none;background:#00000052;border-radius:999px;align-items:center;gap:6px;padding:5px 10px;font-size:11px;font-weight:700;display:inline-flex;position:absolute;bottom:10px;left:10px}.card.lottie .motion-badge:before{content:"";background:#fff;border-radius:50%;width:6px;height:6px}.cluster .card.a{width:46%;height:56%;top:8%;left:0}.cluster .card.b{width:44%;height:44%;top:0;right:2%}.cluster .card.c{width:50%;height:50%;bottom:0;right:6%}.cluster .card.d{width:34%;height:36%;bottom:4%;left:12%}.cluster.cluster--logos .card.logo-card{box-shadow:none;height:auto;transform:translateY(var(--py,0)) rotate(var(--rot,0deg));background:0 0;border-radius:0;overflow:visible}.cluster.cluster--logos .card.logo-card img{width:100%;height:auto;display:block}.cluster.cluster--logos .card.logo-card:hover{box-shadow:none}.cluster.cluster--dense{grid-template-columns:repeat(4,1fr);grid-auto-rows:1fr;gap:2.2%;display:grid}.cluster.cluster--dense .card{aspect-ratio:4/3;width:100%;height:100%;position:relative;inset:auto}@media (width<=760px){.cluster.cluster--dense{grid-template-columns:repeat(2,1fr)}}.cluster.cluster--full-image{inset:0}.cluster.cluster--full-image .card.full{width:100%;height:100%;box-shadow:none;border-radius:6px;inset:0}.cluster.cluster--full-image .card.full img{object-fit:var(--obj-fit,cover);object-position:var(--obj-position,center)}.title{z-index:5;letter-spacing:-.03em;color:var(--ink);white-space:normal;pointer-events:none;will-change:transform;max-width:min(68vw,11em);font-size:clamp(40px,7vw,116px);font-weight:900;font-stretch:125%;line-height:.84;position:absolute;bottom:calc(100% - .5em)}@media (width>=761px){.title.title--wide{max-width:min(70vw,12.5em)}.project.right .title.title--wide{width:min(60vw,9.5em);left:auto}}@media (width<=760px){.title{max-width:92vw}}.project.left .title{left:0;right:auto}.project.right .title{text-align:right;left:auto;right:0}.title .period{color:var(--accent)}.title .clip{max-width:100%;padding-bottom:.22em;line-height:1;display:inline-block;overflow:hidden}.title .clip>span{transition:transform .9s cubic-bezier(.16,1,.3,1);display:inline-block;transform:translateY(115%)}.project.in-view .title .clip>span{transform:translateY(0)}.meta{z-index:6;opacity:0;flex-direction:column;gap:4px;font-weight:600;transition:opacity .7s .3s,transform .7s .3s;display:flex;position:absolute;top:50%;transform:translateY(calc(16px - 50%))}.project.in-view .meta{opacity:1;transform:translateY(-50%)}.project.left .meta{text-align:left;align-items:flex-start;right:clamp(20px,4vw,64px)}.project.right .meta{text-align:left;align-items:flex-start;left:clamp(20px,4vw,64px)}.meta .idx{color:#000;letter-spacing:.05em;font-size:14px}.meta .name{color:#000;font-size:clamp(18px,1.6vw,24px)}.meta .tags{color:#000;max-width:300px;font-size:15px;font-weight:500;line-height:1.45}footer{background:var(--ink);color:#fff;padding:clamp(48px,7vw,96px) clamp(20px,4vw,64px) 48px}.foot-top{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:30px;display:flex}.foot-brand .logo{letter-spacing:-.02em;align-items:center;font-size:44px;font-weight:800;display:flex}.foot-brand .logo .dot{border:.15em solid var(--accent);box-sizing:border-box;border-radius:50%;width:.6em;height:.6em;margin-left:.02em;transform:translateY(.05em)}.foot-brand p{color:#9a9690;max-width:320px;margin-top:14px;font-size:15px;line-height:1.5}.foot-links{align-items:center;gap:24px;display:flex}.foot-links a{color:#cfcbc4;font-size:15px;text-decoration:none}.foot-links a:hover{color:#fff}.socials{gap:12px;margin-top:20px;display:flex}.socials a{color:#cfcbc4;border:1px solid #3a3c40;border-radius:50%;place-items:center;width:40px;height:40px;font-size:14px;text-decoration:none;transition:all .25s;display:grid}.socials a:hover{background:var(--accent);border-color:var(--accent);color:#fff}.foot-bottom{color:#6f6c66;border-top:1px solid #2a2c30;margin-top:60px;padding-top:22px;font-size:13px}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}.card{opacity:1;transform:none}.panel .bg{transform:scaleY(1)}.title .clip>span,.hero .reveal-line>span{transform:none}}.project.in-view .card{transform:translateY(var(--py,0)) scale(1)}@media (width<=900px){.project{flex-direction:column;align-items:stretch;padding:clamp(140px,34vw,220px) 20px 56px}.project.left,.project.right{justify-content:flex-start}.panel{order:1;width:100%}.title{max-width:100%;font-size:clamp(30px,8.6vw,46px);line-height:.92;bottom:calc(100% + 14px);transform:none!important}.project.left .title,.project.right .title{text-align:left;left:0;right:auto}.meta{order:2;gap:6px;margin-top:22px;position:static;transform:none!important}.project.left .meta,.project.right .meta{text-align:left;align-items:flex-start;left:auto;right:auto}.meta .name{font-size:20px}.meta .tags{max-width:100%}}.works--grid .project{padding-left:max(clamp(20px,4vw,64px),50% - 616px);padding-right:max(clamp(20px,4vw,64px),50% - 616px)}.works--grid .project.left .meta{right:max(clamp(20px,4vw,64px),50% - 616px)}.works--grid .project.right .meta{left:max(clamp(20px,4vw,64px),50% - 616px)}.works--grid .panel{width:min(46vw,620px)}.works--grid .title{font-size:clamp(34px,5.2vw,86px)}.works--grid .meta{gap:10px}.works--grid .meta .idx{font-size:16px}.works--grid .meta .name{font-size:clamp(22px,2vw,32px)}.works--grid .meta .tags{max-width:380px;font-size:clamp(16px,1.3vw,20px);line-height:1.5}@media (width<=900px){.works--grid .panel{width:100%}.works--grid .meta .name{font-size:22px}.works--grid .meta .tags{max-width:100%;font-size:16px}}
