.project .nav{background:#0a0a0a6b;backdrop-filter:blur(18px) saturate(1.5);-webkit-backdrop-filter:blur(18px) saturate(1.5)}.progress{position:fixed;left:0;right:0;top:0;height:2px;z-index:60;pointer-events:none}.progress i{display:block;height:100%;background:var(--accent);transform-origin:0 50%;transform:scaleX(var(--p,0))}.frame{--pad:0px;border-radius:var(--r-lg);overflow:hidden;background:#111;box-shadow:0 0 0 1px #ffffff12,0 40px 100px #00000080}.frame img{display:block;width:100%;height:auto}.p-hero{max-width:var(--maxw);margin:0 auto;padding:calc(var(--nav-h) + clamp(40px,8vh,100px)) var(--gutter) 0}.p-back{display:inline-flex;align-items:center;gap:.6em;min-height:44px;margin-bottom:clamp(18px,4vh,40px);font-size:12px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);transition:color .3s}.p-back:before{content:"←";transition:transform .3s var(--ease-out)}.p-back:hover{color:var(--fg)}.p-back:hover:before{transform:translate(-4px)}.p-hero .eyebrow{color:var(--accent)}.p-hero__title{font-family:var(--serif);font-weight:300;font-size:clamp(56px,11vw,190px);line-height:.9;letter-spacing:-.035em;margin:.25em 0 .3em}.p-hero__lead{font-family:var(--serif);font-weight:300;font-size:var(--t-lead);line-height:1.4;color:var(--muted);max-width:46ch}.p-hero__media{margin-top:clamp(40px,8vh,90px)}.project .case-meta{margin-top:clamp(60px,10vh,120px)}.case-meta dd.-small{font-size:var(--t-lead)}.p-body{max-width:var(--maxw);margin:0 auto;padding:clamp(60px,11vh,140px) var(--gutter) 0}.p-row{display:grid;grid-template-columns:minmax(160px,1fr) 2.2fr;gap:clamp(20px,5vw,100px);padding-bottom:clamp(50px,9vh,110px)}@media(max-width:820px){.p-row{grid-template-columns:1fr}}.p-label{position:sticky;top:calc(var(--nav-h) + 24px);align-self:start;font-size:var(--t-eyebrow);font-weight:500;letter-spacing:.24em;text-transform:uppercase;color:var(--accent)}@media(max-width:820px){.p-label{position:static}}.p-text{font-size:var(--t-body);line-height:1.75;color:#ffffffc7;max-width:62ch}.p-text p+p{margin-top:1.1em}.p-text.-lead{font-family:var(--serif);font-weight:300;font-size:var(--t-lead);line-height:1.5;color:var(--fg)}.p-tools{list-style:none;display:flex;flex-wrap:wrap;gap:10px}.p-tools .tag{font-size:11px;padding:9px 14px}.p-media{max-width:var(--maxw);margin:clamp(30px,6vh,70px) auto;width:calc(100% - 2 * var(--gutter))}.p-next{position:relative;display:grid;gap:.6em;max-width:var(--maxw);margin:clamp(80px,14vh,160px) auto 0;padding:clamp(40px,8vh,90px) var(--gutter);border-top:1px solid var(--hair);overflow:hidden}.p-next .eyebrow{color:var(--next-accent)}.p-next__title{font-family:var(--serif);font-weight:300;font-size:clamp(44px,8vw,130px);line-height:.95;letter-spacing:-.03em;transition:transform .6s var(--ease-out)}.p-next__title span{display:inline-block;transition:transform .6s var(--ease-out);color:var(--next-accent)}.p-next:hover .p-next__title span{transform:translate(16px)}.p-next__meta{color:var(--muted);letter-spacing:.14em;text-transform:uppercase;font-size:var(--t-eyebrow)}.p-next__img{position:absolute;right:var(--gutter);top:50%;width:min(34vw,480px);border-radius:var(--r-md);transform:translateY(-50%) rotate(-3deg) scale(.9);opacity:0;transition:opacity .5s,transform .7s var(--ease-out);pointer-events:none;box-shadow:0 30px 80px #0009}.p-next:hover .p-next__img{opacity:1;transform:translateY(-50%) rotate(0) scale(1)}@media(hover:none),(max-width:820px){.p-next__img{display:none}}.p-figma{max-width:var(--maxw);margin:clamp(40px,8vh,100px) auto;padding:0 var(--gutter)}.p-figma__head{max-width:60ch;margin-bottom:clamp(30px,6vh,70px)}.p-figma__head .eyebrow{color:var(--accent)}.p-figma__title{font-family:var(--serif);font-weight:300;font-size:var(--t-h2);line-height:1.02;letter-spacing:-.015em;margin:.4em 0 .5em}.p-figma__title em{font-style:italic;color:var(--accent)}.p-figma__intro{color:var(--muted);font-size:var(--t-lead);line-height:1.45}.p-figma__video video{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;background:#0a0a0a}.compare{position:relative;width:100%;margin-top:clamp(20px,4vh,40px);aspect-ratio:16/10;background:#fff;touch-action:pan-y}.compare img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:top}.compare__before{position:absolute;inset:0;clip-path:inset(0 calc(100% - var(--pos)) 0 0)}.compare__handle{position:absolute;top:0;bottom:0;left:var(--pos);width:2px;background:var(--accent);transform:translate(-50%);pointer-events:none}.compare__handle:after{content:"⟷";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:var(--accent);color:#0a0a0a;font-size:18px;box-shadow:0 8px 24px #00000059}.compare__range{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:ew-resize;margin:0}.compare__range:focus-visible~.compare__handle:after,.compare:has(.compare__range:focus-visible) .compare__handle:after{outline:2px solid #fff;outline-offset:3px}.compare__tag{position:absolute;top:16px;padding:7px 12px;border-radius:var(--r-pill);background:#0a0a0abf;color:#fff;font-size:11px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;pointer-events:none;backdrop-filter:blur(8px)}.compare__tag.-l{left:16px}.compare__tag.-r{right:16px}.p-figma__stills{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(14px,2vw,28px);margin-top:clamp(20px,4vh,40px)}@media(max-width:860px){.p-figma__stills{grid-template-columns:1fr}}.p-figma__stills img{width:100%;aspect-ratio:16/9;object-fit:cover}.p-figma__stills figcaption{margin-top:.9em;color:var(--muted);font-size:14px}.p-figma__live{display:inline-flex;align-items:center;min-height:48px;margin-top:clamp(24px,4vh,40px);padding:0 24px;border-radius:var(--r-pill);border:1px solid var(--hair);font-size:12px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;transition:border-color .3s,background .3s}.p-figma__live:hover{border-color:var(--accent);background:#ffffff0a}.p-figma__stills.-gallery{grid-template-columns:repeat(2,1fr)}@media(max-width:760px){.p-figma__stills.-gallery{grid-template-columns:1fr}}.p-figma__stills.-gallery img{aspect-ratio:16/9;transition:transform .7s var(--ease-out)}.p-shot{display:block;width:100%;padding:0;border:0;background:none;cursor:zoom-in;border-radius:var(--r-lg)}.p-shot:hover img{transform:scale(1.015)}.lightbox{width:min(96vw,1800px);max-height:94vh;margin:auto;padding:0;border:0;border-radius:var(--r-md);background:#000;overflow:hidden}.lightbox::backdrop{background:#050505e6;backdrop-filter:blur(6px)}.lightbox img{display:block;width:100%;height:auto;max-height:94vh;object-fit:contain}.lightbox__close{position:absolute;top:12px;right:12px;min-height:44px;padding:0 18px;border:0;border-radius:var(--r-pill);cursor:pointer;background:#141414bf;color:#fff;font:500 12px/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;backdrop-filter:blur(8px)}.p-list{list-style:none;border-top:1px solid var(--hair);max-width:68ch}.p-list li{display:grid;grid-template-columns:3em 1fr;gap:12px;padding:clamp(20px,3.4vh,32px) 0;border-bottom:1px solid var(--hair)}.p-list__n{font-family:var(--flare);color:var(--accent);font-size:14px;padding-top:.45em}.p-list h3{font-family:var(--serif);font-weight:300;font-size:var(--t-h3);line-height:1.12;letter-spacing:-.01em}.p-list p{color:#ffffffc7;font-size:var(--t-body);line-height:1.7;margin-top:.6em}.p-list .p-list__tag{color:var(--muted);font-size:var(--t-eyebrow);letter-spacing:.18em;text-transform:uppercase;margin-top:1.1em}.p-quote{margin-top:clamp(28px,5vh,48px);padding-left:clamp(18px,2vw,28px);border-left:2px solid var(--accent);max-width:56ch}.p-quote blockquote{font-family:var(--serif);font-weight:300;font-size:var(--t-lead);line-height:1.45}.p-quote figcaption{margin-top:1em;color:var(--muted);font-size:14px}.p-quote figcaption span{color:var(--fg);font-weight:500;margin-right:.4em}.p-results{margin-bottom:clamp(20px,3vh,32px)}.p-note{max-width:70ch;color:var(--muted);font-size:14px;line-height:1.6;margin-bottom:clamp(50px,9vh,110px)}.p-figma__video video[controls]{aspect-ratio:16/9}.p-results>div{display:flex;flex-direction:column-reverse;justify-content:flex-end}.p-results dd{margin:0}.p-renders{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(14px,2vw,28px)}@media(max-width:860px){.p-renders{grid-template-columns:repeat(2,1fr)}}.p-renders video{display:block;width:100%;aspect-ratio:1;object-fit:cover;background:#000}.p-renders figcaption{margin-top:.9em;color:var(--muted);font-size:14px}.p-figma:has(.p-renders){margin-bottom:clamp(60px,10vh,120px)}
