:root{--bg: #f4f2e6;--bg-rgb: 244, 242, 230;--ink: #0a0a0a;--ink-soft: #5a5a5a;--ink-faint: #b6b6b6;--card: #ffffff;--accent: #e83c3c;--positive: #2f8a57;--card-shadow: 0 2px 4px rgba(0,0,0,.08), 0 24px 56px -8px rgba(0,0,0,.32);--card-shadow-lift: 0 4px 10px rgba(0,0,0,.1), 0 48px 90px -12px rgba(0,0,0,.42);--case-tint: rgba(226, 232, 242, .45);--case-seam: linear-gradient(to top, transparent 24%, rgba(255, 255, 255, .5) 24%, rgba(255, 255, 255, .5) calc(24% + 1px) , rgba(10, 14, 24, .16) calc(24% + 1px) , rgba(10, 14, 24, .16) calc(24% + 2px) , transparent calc(24% + 2px) );--case-prism: linear-gradient(to right, rgba(255, 70, 190, .1), rgba(70, 170, 255, .1) 38%, rgba(110, 255, 210, .08) 68%, rgba(255, 210, 90, .1));--noise-tile: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='180' height='180'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix type='saturate' values='0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");--spring: cubic-bezier(.34, 1.56, .64, 1);--spring-dur: .55s;--spring-out: cubic-bezier(.22, 1, .36, 1);--spring-out-dur: .4s;--pad: clamp(20px, 4vw, 56px);--ease: cubic-bezier(.22, 1, .36, 1);--font-display: "Elms Sans", -apple-system, BlinkMacSystemFont, sans-serif;--font-body: "Helvetica Neue", Helvetica, Arial, sans-serif}*{box-sizing:border-box;margin:0;padding:0}html,body{height:100%;background:var(--bg);color:var(--ink);font-family:var(--font-body);font-weight:400;letter-spacing:-.008em;overflow:hidden;overscroll-behavior:none;touch-action:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.stage{position:fixed;top:0;right:0;bottom:0;left:0;overflow:hidden}.noise-bg{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:none;opacity:.16;background-image:var(--noise-tile);background-size:180px 180px}.header{position:absolute;top:var(--pad);left:var(--pad);max-width:min(56vw,760px);z-index:5;pointer-events:none}.display{font-family:var(--font-display);font-weight:480;font-size:clamp(38px,6vw,96px);line-height:.98;letter-spacing:-.04em;word-spacing:-.08em;color:var(--ink);margin-bottom:14px}.tagline{font-size:clamp(13px,1.05vw,16px);color:var(--ink);font-weight:400;max-width:480px;line-height:1.5}.leftnav{position:absolute;left:var(--pad);top:50%;transform:translateY(-50%);z-index:30;display:flex;flex-direction:column;gap:18px;pointer-events:none}.leftnav-top,.leftnav-bottom{display:contents}.leftnav-group{display:flex;flex-direction:column;gap:9px;list-style:none}.leftnav-divider{width:22px;height:1px;background:var(--ink-faint);opacity:.5}.leftnav-item{pointer-events:auto;cursor:pointer;font-family:inherit;font-size:11px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);background:none;border:none;padding:0;display:inline-flex;align-items:center;gap:8px;transition:color .25s var(--ease),transform .25s var(--ease),opacity .25s var(--ease);text-align:left;white-space:nowrap}.leftnav-item:before{content:"";display:inline-block;width:0;height:1px;background:currentColor;transition:width .35s var(--ease)}.leftnav-item:hover{color:var(--ink);transform:translate(3px)}.leftnav-item.is-active{color:var(--accent)}.leftnav-item.is-active:before{width:14px}.info{position:absolute;top:clamp(220px,30vh,340px);right:var(--pad);width:232px;z-index:50;transition:transform var(--spring-dur) var(--spring);will-change:transform;pointer-events:none}.info-card{position:absolute;top:-12px;left:-14px;right:-14px;padding:12px 14px;opacity:0;pointer-events:none;border-radius:10px;transform:scale(.94);transform-origin:0 50%;backdrop-filter:blur(0px);-webkit-backdrop-filter:blur(0px);background:rgba(var(--bg-rgb),0);box-shadow:0 0 #12121600,0 0 #12121600;transition:background .3s cubic-bezier(.4,0,1,1),box-shadow .3s cubic-bezier(.4,0,1,1),backdrop-filter .3s cubic-bezier(.4,0,1,1),-webkit-backdrop-filter .3s cubic-bezier(.4,0,1,1),transform .25s cubic-bezier(.4,0,1,1)}.info-card.is-active{opacity:1;pointer-events:auto;transform:none;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);background:rgba(var(--bg-rgb),.55);box-shadow:0 2px 8px #1212160f,0 16px 40px #1212161a;transition:background .4s cubic-bezier(.16,1,.3,1),box-shadow .4s cubic-bezier(.16,1,.3,1),backdrop-filter .4s cubic-bezier(.16,1,.3,1),-webkit-backdrop-filter .4s cubic-bezier(.16,1,.3,1),transform var(--spring-dur) var(--spring)}.info-card>*:not(.info-open-btn){opacity:0;transform:translateY(18px) translate(var(--fan-x, 0px)) rotate(var(--fan-rot, 0deg));filter:blur(7px);transform-origin:0% 100%;transition:opacity .22s cubic-bezier(.4,0,1,1),transform .28s cubic-bezier(.4,0,1,1),filter .22s cubic-bezier(.4,0,1,1)}.info-card.is-active>*:not(.info-open-btn){opacity:1;transform:translateY(0) translate(0) rotate(0);filter:blur(0);transition:opacity .25s cubic-bezier(.22,1,.36,1),transform .55s cubic-bezier(.34,1.56,.64,1),filter .32s cubic-bezier(.16,1,.3,1)}.info-card>.info-eyebrow{--fan-x: -10px;--fan-rot: -3deg}.info-card>.info-title{--fan-x: 8px;--fan-rot: 2deg}.info-card>.info-body{--fan-x: -6px;--fan-rot: -1.5deg}.info-card>.info-meta{--fan-x: 10px;--fan-rot: 2.5deg}.info-card>.info-award{--fan-x: -8px;--fan-rot: -2deg}.info-card.is-active>:nth-child(2):not(.info-open-btn){transition-delay:.04s}.info-card.is-active>:nth-child(3):not(.info-open-btn){transition-delay:.08s}.info-card.is-active>:nth-child(4):not(.info-open-btn){transition-delay:.12s}.info-card.is-active>:nth-child(5):not(.info-open-btn){transition-delay:.16s}.info-eyebrow{display:none;font-size:11px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:10px}.info-title{font-size:15px;font-weight:500;letter-spacing:-.012em;margin-bottom:6px}.info-body{font-size:12.5px;line-height:1.5;color:var(--ink-soft);margin-bottom:10px}.info-meta{display:flex;gap:10px;font-size:10px;color:var(--ink-soft);letter-spacing:.06em;text-transform:uppercase}.info-meta span:not(:first-child):before{content:"·";margin-right:14px;color:var(--ink-faint)}.info-award{display:inline-block;margin-top:10px;padding:4px 8px;border:1px solid color-mix(in srgb,var(--accent) 38%,transparent);border-radius:999px;font-size:9px;font-weight:500;letter-spacing:.09em;text-transform:uppercase;color:var(--accent)}.footer{position:absolute;left:var(--pad);right:var(--pad);bottom:var(--pad);display:flex;justify-content:space-between;align-items:flex-end;z-index:30;pointer-events:none;gap:16px}.hint{display:flex;align-items:center;gap:10px;color:var(--ink-faint);font-size:11px;letter-spacing:.1em;text-transform:uppercase;font-weight:500}.hint-dot{width:6px;height:6px;border-radius:999px;background:var(--accent);animation:pulse 2.4s var(--ease) infinite}@keyframes pulse{0%,to{opacity:.35;transform:scale(1)}50%{opacity:1;transform:scale(1.25)}}.hint-mobile{display:none}.counter{font-family:var(--font-display);font-weight:500;font-size:32px;line-height:1;letter-spacing:-.02em;color:var(--ink-faint);display:flex;align-items:baseline;gap:4px;font-variant-numeric:tabular-nums;align-self:baseline}.counter .current{color:var(--accent);transition:color .4s var(--ease);min-width:1.1ch;text-align:right}.counter .sep,.counter .total{font-size:.55em;color:var(--ink-faint);transform:translateY(-.4em)}.sound-toggle{display:inline-flex;align-items:center;gap:9px;align-self:baseline;margin:-10px -4px -10px auto;padding:10px 12px;border:0;background:none;font-family:inherit;font-size:11px;font-weight:500;letter-spacing:.1em;line-height:1.2;text-transform:uppercase;color:var(--ink-soft);cursor:pointer;pointer-events:auto;-webkit-tap-highlight-color:transparent;transition:color .25s var(--ease)}.sound-toggle:hover{color:var(--ink)}.sound-toggle[hidden],.sound-toggle--menu{display:none}.sound-toggle__bars{display:inline-flex;align-items:center;gap:2.5px;height:12px}.sound-toggle__bars i{width:1.5px;height:12px;border-radius:1px;background:currentColor;transform:scaleY(.17);transition:transform .3s var(--ease)}.sound-toggle__bars i:nth-child(1){--h: .5;--n: 0}.sound-toggle__bars i:nth-child(2){--h: 1;--n: 1}.sound-toggle__bars i:nth-child(3){--h: .66;--n: 2}.sound-toggle__bars i:nth-child(4){--h: .83;--n: 3}.sound-toggle.is-on .sound-toggle__bars i{transform:scaleY(var(--h));transition:transform .6s var(--spring) calc(var(--n) * 40ms)}.sound-toggle.is-on.is-hit .sound-toggle__bars i{transform:scaleY(calc(var(--h) * 1.3));transition:transform .06s var(--ease)}.sound-toggle__state{display:inline-grid;justify-items:start;overflow:clip}.sound-toggle__state>span{grid-area:1 / 1;transition:transform .45s var(--ease),opacity .3s var(--ease)}.sound-toggle__state>span:first-child{transform:translateY(100%);opacity:0}.sound-toggle.is-on .sound-toggle__state>span:first-child{transform:none;opacity:1}.sound-toggle.is-on .sound-toggle__state>span:last-child{transform:translateY(-100%);opacity:0}.stack-wrap{position:absolute;top:0;right:0;bottom:0;left:0;z-index:10;pointer-events:none}.stack-wrap:before{content:"";position:absolute;top:-12%;right:-12%;bottom:-12%;left:-12%;z-index:0;background:radial-gradient(ellipse 52% 42% at 47% 57%,#ffffffd9,#fff0 68%);transform:rotate(-10deg);pointer-events:none}.stack{position:absolute;top:0;right:0;bottom:0;left:0;--t: 0px;--nex: 0;--ney: 0;--edge-dx: 0px;--edge-dy: 0px;--cw: 0px;--ch: 0px}.card{position:absolute;top:0;left:0;cursor:pointer;pointer-events:auto;transform-origin:50% 50%;transition:transform .65s var(--ease),opacity .4s var(--ease),filter .5s var(--ease);will-change:transform;contain:layout}.stack.is-scrubbing .card{transition:none}.card-slide{position:absolute;top:0;right:0;bottom:0;left:0;transition:transform var(--spring-dur) var(--spring);will-change:transform}.card-shadow{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:3px;pointer-events:none;box-shadow:var(--card-shadow),calc(var(--edge-dx) + var(--t) * .45) calc(var(--edge-dy) - var(--t) * .1) calc(var(--t) * .9) calc(var(--t) * -.1) #0a0a0e29;transition:box-shadow .3s var(--ease)}.stack.is-tower .card-shadow{box-shadow:var(--card-shadow),0 calc(var(--edge-dy) - var(--t) * .25) calc(var(--t) * .8) calc(var(--t) * -.1) #0a0a0e24}.card-image{position:absolute;top:0;right:0;bottom:0;left:0;background-color:var(--card);background-size:cover;background-position:center;border-radius:3px;overflow:hidden;pointer-events:none}.card-image:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;background:linear-gradient(118deg,#fff0 24%,#ffffff1f 31%,#ffffff08 40%,#fff0 47%),linear-gradient(90deg,#ffffff2e,#ffffff0d 1.4%,#00000012 1.9%,#ffffff29 2.3%,#fff0 4%),linear-gradient(162deg,#ffffff12,#fff0 45%,#0000000f);box-shadow:inset 0 1px #fff9,inset 0 0 0 1px #ffffff3d,inset 0 0 0 3px #ffffff0d}.card-image:before{content:"";position:absolute;top:0;bottom:0;left:-45%;width:45%;z-index:1;background:linear-gradient(105deg,#fff0 15%,#ffffff4d,#fff0 85%);opacity:0}.card.is-peek .card-image:before{opacity:1;transform:translate(330%);transition:transform 1.1s cubic-bezier(.22,1,.36,1) .06s,opacity .15s linear .06s}.card-edge{position:absolute;height:var(--t);transform-origin:0 100%;overflow:hidden;pointer-events:none;background:var(--case-tint);transition:opacity .35s var(--ease) .12s}.card-edge:before,.card-edge:after{content:"";position:absolute}.card-edge:before{background-image:var(--hero);background-repeat:no-repeat;filter:blur(3px) saturate(1.5) brightness(var(--refract-b, 1.08));opacity:.9}.card-edge:after{top:0;right:0;bottom:0;left:0}.card-edge--top{left:0;top:calc(var(--t) * -1);width:100%;transform:matrix(1,0,var(--nex),var(--ney),0,0)}.card-edge--top:before{left:-8px;top:-8px;width:calc(100% + 16px);height:calc(var(--t) + 16px);background-size:var(--cw) calc(var(--ch) * 8);background-position:8px 8px;transform:scaleY(-1)}.card-edge--top:after{background:linear-gradient(to top,#ffffffe6,#fff6 1px,#ffffff1a 3px,#fff0 30%),var(--case-seam),linear-gradient(to bottom,#14182238,#14182238 1px,#ffffff80 1px,#fff0 3px),linear-gradient(to right,#ffffff38,#fff0 30%,#ffffff1f 60%,#fff0 85%),var(--case-prism)}.card-edge--right{left:100%;top:calc(var(--t) * -1);width:var(--ch);transform:matrix(0,1,var(--nex),var(--ney),0,0);--refract-b: .9}.card-edge--right:before{left:-8px;top:-8px;width:calc(var(--t) + 16px);height:calc(var(--ch) + 16px);transform-origin:0 0;transform:matrix(0,1,1,0,0,0);background-size:calc(var(--cw) * 8) var(--ch);background-position:right 8px top 8px}.card-edge--right:after{background:linear-gradient(to top,#fff9,#ffffff40 1px,#ffffff0f 3px,#fff0 30%),var(--case-seam),linear-gradient(to bottom,#14182242,#14182242 1px,#ffffff4d 1px,#fff0 3px),linear-gradient(to right,#1418220f,#14182238),var(--case-prism)}.stack.is-tower .card-edge--right{display:none}.case-tab{position:absolute;top:14%;bottom:14%;width:2.6%;border:1px solid rgba(255,255,255,.6);border-radius:1.5px;background:linear-gradient(to top,#ffffff4d,#ffffff14)}.case-tab--l{left:1.4%}.case-tab--r{right:1.4%}.case-tab:after{content:"";position:absolute;left:35%;right:35%;top:18%;bottom:18%;border-radius:1px;background:#0a0c1459}.card.is-flat .card-edge{opacity:0;transition:opacity .12s linear}.card.is-flat .card-shadow{box-shadow:var(--card-shadow),calc(var(--edge-dx) + var(--t) * .45) calc(var(--edge-dy) - var(--t) * .1) calc(var(--t) * .9) calc(var(--t) * -.1) #0a0a0e00}.card.is-dragging{transition:transform .22s cubic-bezier(.22,1,.36,1),opacity .3s var(--ease);cursor:grabbing;z-index:5000!important}.card.is-dragging .card-shadow{box-shadow:0 20px 40px #0000001a,0 60px 100px -20px #00000059,0 0 #0a0a0e00}@media(prefers-reduced-motion:reduce){.card-slide{transition-duration:.25s;transition-timing-function:var(--ease)}.card.is-peek .card-image:before{transition:none;opacity:0}}.clock{position:absolute;top:var(--pad);right:var(--pad);z-index:30;pointer-events:none;display:flex;flex-direction:row;align-items:center;gap:12px}.clock-text{display:flex;flex-direction:column;align-items:flex-end;gap:3px;line-height:1.1}.clock-time{font-size:13px;font-weight:500;color:var(--ink);font-variant-numeric:tabular-nums;letter-spacing:-.005em}.clock-face{width:42px;height:42px;overflow:visible;flex-shrink:0}.clock-ring{fill:none;stroke:var(--ink-soft);stroke-opacity:.28;stroke-width:1}.clock-hour,.clock-minute{stroke:var(--accent);stroke-linecap:round;transform-origin:20px 20px;transition:transform .6s var(--ease)}.clock-hour{stroke-width:1.6}.clock-minute{stroke-width:1}.clock-pivot{fill:var(--ink)}.clock-city{font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft);font-weight:500}.section-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--bg);z-index:100;opacity:0;pointer-events:none;transition:opacity .45s var(--ease);display:flex;align-items:center;justify-content:center;padding:var(--pad)}.section-overlay.is-open{opacity:1;pointer-events:auto}.section-close{position:absolute;top:var(--pad);right:var(--pad);background:none;border:none;font-family:Cormorant Garamond,serif;font-size:36px;line-height:1;color:var(--ink-soft);cursor:pointer;transition:color .2s var(--ease),transform .2s var(--ease)}.section-close:hover{color:var(--ink);transform:rotate(90deg)}.section-content{max-width:540px;text-align:left;transform:translateY(12px);opacity:0;transition:transform .6s var(--ease) .1s,opacity .6s var(--ease) .1s}.section-overlay.is-open .section-content{transform:translateY(0);opacity:1}.section-eyebrow{font-size:11px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:16px}.section-title{font-family:Cormorant Garamond,serif;font-weight:500;font-size:clamp(44px,6vw,84px);line-height:.95;letter-spacing:-.015em;margin-bottom:20px}.section-body{font-size:16px;line-height:1.65;color:var(--ink-soft)}@media(max-width:1100px){.info{top:clamp(180px,26vh,280px)}}.menu-btn,.menu-scrim{display:none}@media(max-width:820px){.header{max-width:calc(100% - var(--pad) * 2 - 40px);z-index:30}.display{font-size:clamp(34px,9vw,56px)}.tagline{font-size:13px}.stack-wrap:before{background:radial-gradient(ellipse 64% 34% at 50% 36%,#ffffffd9,#fff0 70%);transform:none}.display,.tagline,.menu-btn,.footer{opacity:0;transform:translateY(16px);filter:blur(8px)}.stage.is-ready .display,.stage.is-ready .tagline,.stage.is-ready .menu-btn,.stage.is-ready .footer{opacity:1;transform:none;filter:none;transition:opacity .9s cubic-bezier(.25,.1,.25,1) var(--enter-delay, 0s),transform 1.2s cubic-bezier(.22,1,.36,1) var(--enter-delay, 0s),filter .9s cubic-bezier(.22,1,.36,1) var(--enter-delay, 0s)}.tagline{--enter-delay: .16s}.menu-btn{--enter-delay: .3s}.footer{--enter-delay: 1s}.menu-btn{display:block;position:absolute;top:calc(var(--pad) - 5px);right:calc(var(--pad) - 11px);width:44px;height:44px;z-index:70;padding:0;border:0;background:none;color:var(--ink);cursor:pointer;-webkit-tap-highlight-color:transparent}.menu-btn__line{position:absolute;left:11px;right:11px;height:1.5px;border-radius:1px;background:currentColor;transition:transform .5s cubic-bezier(.34,1.56,.64,1)}.menu-btn__line:first-child{top:17.5px}.menu-btn__line:last-child{top:25px}.stage.menu-open .menu-btn__line:first-child{transform:translateY(3.75px) rotate(45deg)}.stage.menu-open .menu-btn__line:last-child{transform:translateY(-3.75px) rotate(-45deg)}.menu-scrim{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;background:var(--bg);opacity:0;visibility:hidden;transition:opacity .3s cubic-bezier(.4,0,1,1) .12s,visibility 0s linear .42s}.menu-scrim:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;opacity:.16;background-image:var(--noise-tile);background-size:180px 180px}.stage.menu-open .menu-scrim{opacity:1;visibility:visible;transition:opacity .4s var(--ease)}.leftnav{position:fixed;top:calc(var(--pad) + 64px);left:var(--pad);right:var(--pad);transform:none;z-index:65;gap:16px;visibility:hidden;transition:visibility 0s linear .42s}.stage.menu-open .leftnav{visibility:visible;transition:none}.leftnav-group{gap:0}.leftnav-item{font-family:var(--font-display);font-size:clamp(30px,8.6vw,40px);font-weight:480;line-height:1.12;letter-spacing:-.035em;word-spacing:-.06em;text-transform:none;color:var(--ink);padding:5px 0;gap:10px;opacity:0;transform:translateY(14px);filter:blur(6px);transition:opacity .18s cubic-bezier(.4,0,1,1),transform .22s cubic-bezier(.4,0,1,1),filter .18s cubic-bezier(.4,0,1,1),color .25s var(--ease)}.stage.menu-open .leftnav-item{opacity:1;transform:none;filter:none;transition:opacity .45s var(--ease) calc(var(--i, 0) * 40ms + .1s),transform .7s var(--ease) calc(var(--i, 0) * 40ms + .1s),filter .4s var(--ease) calc(var(--i, 0) * 40ms + .1s),color .25s var(--ease)}.leftnav-item:before{height:2px}.leftnav-item.is-active:before{width:18px}.leftnav-group--sections .leftnav-item{font-size:clamp(20px,5.6vw,26px);color:var(--ink-soft);padding:7px 0}.leftnav-divider{width:28px;opacity:0;transition:opacity .18s linear}.stage.menu-open .leftnav-divider{opacity:.5;transition:opacity .45s var(--ease) calc(var(--i, 0) * 40ms + .1s)}.clock{position:fixed;top:auto;right:auto;left:var(--pad);bottom:calc(var(--pad) + env(safe-area-inset-bottom,0px));z-index:65;flex-direction:row-reverse;gap:14px;visibility:hidden;opacity:0;transform:translateY(12px);transition:opacity .18s cubic-bezier(.4,0,1,1),transform .22s cubic-bezier(.4,0,1,1),visibility 0s linear .42s}.clock-text{align-items:flex-start}.stage.menu-open .clock{visibility:visible;opacity:1;transform:none;transition:opacity .5s var(--ease) .4s,transform .8s var(--ease) .4s}.stage.menu-open .clock-hour,.stage.menu-open .clock-minute{transition:transform 1.2s cubic-bezier(.34,1.3,.64,1) .45s}.footer .sound-toggle{display:none}.sound-toggle--menu{display:inline-flex;position:fixed;right:calc(var(--pad) - 12px);bottom:calc(var(--pad) + env(safe-area-inset-bottom,0px));z-index:65;height:42px;margin:0;padding:0 12px;visibility:hidden;opacity:0;transform:translateY(12px);transition:opacity .18s cubic-bezier(.4,0,1,1),transform .22s cubic-bezier(.4,0,1,1),visibility 0s linear .42s,color .25s var(--ease)}.stage.menu-open .sound-toggle--menu{visibility:visible;opacity:1;transform:none;transition:opacity .5s var(--ease) .46s,transform .8s var(--ease) .46s,color .25s var(--ease)}.info{top:auto;bottom:calc(var(--pad) + 60px);left:var(--pad);right:var(--pad);width:auto;max-width:none}.info-card{top:auto;bottom:0;transform-origin:50% 100%}.info-eyebrow{display:block}.info-title{font-size:17px}.info-body{font-size:13px;line-height:1.5;margin-bottom:12px}.info-meta{font-size:10px}.footer:before{content:"";position:absolute;left:calc(var(--pad) * -1);right:calc(var(--pad) * -1);bottom:calc(var(--pad) * -1);height:clamp(120px,22vh,200px);z-index:-1;background:linear-gradient(to bottom,rgba(var(--bg-rgb),0),rgba(var(--bg-rgb),.74) 52%,rgba(var(--bg-rgb),.94))}.counter{font-size:clamp(34px,10vw,50px)}.hint-desktop{display:none}.hint-mobile{display:inline}.section-title{font-size:clamp(36px,11vw,56px)}}@media(max-width:820px)and (prefers-reduced-motion:reduce){.display,.tagline,.menu-btn,.footer,.leftnav-item,.clock,.sound-toggle--menu{transform:none!important;filter:none!important}}@media(max-height:560px){.tagline{display:none}.display{font-size:clamp(32px,4.4vw,60px)}}.project-page{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;pointer-events:none;visibility:hidden;transition:visibility 0s linear 1.1s}.project-page.is-open{visibility:visible;transition:visibility 0s}html:has(.stage.project-open),body:has(.stage.project-open){touch-action:auto}.project-page__scrim{position:absolute;top:0;right:0;bottom:0;left:0;background:#0a0a0a7a;-webkit-backdrop-filter:blur(10px) saturate(.9);backdrop-filter:blur(10px) saturate(.9);opacity:0;transition:opacity .45s cubic-bezier(.4,0,1,1) .12s}.project-page.is-open .project-page__scrim{opacity:1;pointer-events:auto;transition:opacity .55s cubic-bezier(.22,1,.36,1)}.project-page__modal{position:absolute}.project-page.is-open .project-page__modal{pointer-events:auto}.project-page__fold{position:absolute;left:0;right:0;top:0;height:100%;background:var(--bg);border-radius:14px;box-shadow:0 24px 80px -12px #0000008c}.project-page__scroll{position:absolute;top:0;right:0;bottom:0;left:0;overflow-y:auto;touch-action:pan-y;overflow-x:hidden;overscroll-behavior:contain;scrollbar-width:none;border-radius:14px;pointer-events:none}.project-page__scroll::-webkit-scrollbar{display:none}.project-page__image{position:absolute;z-index:5;background:var(--card);overflow:hidden;border-radius:6px;will-change:left,top,width,height}.project-page__image-inner{position:absolute;top:0;right:0;bottom:0;left:0;background:#b8bec8;background-size:cover;background-position:center;transform-origin:50% 50%;will-change:filter,transform,opacity}.project-page__content{position:relative;--measure: 540px}.project-page__content>:is(.project-page__title,.project-page__desc,.project-page__meta,.project-page__text,.project-page__quote,.pp-stats,.pp-steps,.pp-brief,.pp-outcomes:not(.pp-outcomes--paired),.pp-timeline){max-width:var(--measure);margin-inline:auto}.project-page__title{font-family:var(--font-display);font-weight:480;font-size:clamp(30px,5vw,54px);line-height:1;letter-spacing:-.03em;word-spacing:-.06em;color:var(--ink);margin-bottom:clamp(10px,1.5vh,18px)}.project-page__desc{font-size:clamp(13px,1.1vw,15px);line-height:1.65;color:var(--ink-soft);margin-bottom:clamp(18px,2.5vh,30px)}.project-page__meta{display:grid;grid-template-columns:clamp(96px,30%,180px) minmax(0,1fr);gap:14px 20px;margin-bottom:clamp(18px,2.5vh,30px);padding-bottom:clamp(14px,2vh,24px);border-bottom:1px solid rgba(0,0,0,.1)}.project-page__meta-label{font-size:9px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:3px}.project-page__meta-value{font-size:clamp(11px,.85vw,13px);font-weight:500;color:var(--ink);letter-spacing:-.01em}.project-page__media{aspect-ratio:16 / 9;border-radius:10px;background:linear-gradient(135deg,#00000012,#00000005);border:1px solid rgba(0,0,0,.05);margin-bottom:clamp(20px,3vh,32px)}.project-page__media--tall{aspect-ratio:4 / 5;margin-bottom:0}.project-page__media-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(14px,2vw,24px);margin-bottom:clamp(20px,3vh,32px)}.project-page__media>img,.project-page__media>video,.project-page__media>iframe{display:block;width:100%;height:100%;object-fit:cover;border:0;border-radius:inherit}button.project-page__media{display:block;width:100%;padding:0;color:inherit;font:inherit;cursor:zoom-in}button.project-page__media:focus{outline:none}button.project-page__media:focus-visible{outline:2px solid var(--ink);outline-offset:3px}.project-page__content{--mat: clamp(10px, 2.4cqi, 24px)}.project-page__media:has(>img):not(.project-page__media--full){padding:var(--mat);background:var(--card);border:1px solid rgba(0,0,0,.12)}.project-page__media:has(>img):not(.project-page__media--full)>img{object-fit:contain;border-radius:3px}.project-page__figure{max-width:var(--w, none);margin:0 auto clamp(20px,3vh,32px)}.project-page__figure--narrow{max-width:min(var(--w, 100%),var(--measure));--mat: 10px}.project-page__media-grid .project-page__figure{margin:0}.project-page__figure .project-page__media{margin-bottom:0}.project-page__caption{margin-top:8px;font-size:11px;line-height:1.5;letter-spacing:.01em;text-align:center;color:var(--ink-soft)}.project-page__caption--title{margin-top:12px;font-size:clamp(14px,1.2vw,16px);font-weight:500;line-height:1.45;letter-spacing:-.01em;color:var(--ink)}.project-page__figure:has(>.project-page__media--portrait){max-width:min(var(--w, 100%),320px,52cqi)}.project-page__figure:has(>.project-page__media--upright){max-width:min(var(--w, 100%),520px)}.project-page__media-grid .project-page__figure:has(>.project-page__media--portrait),.project-page__media-grid .project-page__figure:has(>.project-page__media--upright){justify-self:center}.project-page__media--full{margin-inline:calc(var(--pp-pad, 0px) * -1);border-radius:0}.project-page__quote{margin:clamp(24px,4vh,44px) 0;padding-left:18px;border-left:2px solid var(--accent);font-family:var(--font-display);font-weight:480;font-size:clamp(19px,2.2vw,28px);line-height:1.25;letter-spacing:-.02em;color:var(--ink)}.project-page__text{margin-bottom:clamp(24px,4vh,44px)}.project-page__text h2{font-family:var(--font-body);font-weight:500;font-size:clamp(17px,1.6vw,21px);letter-spacing:-.01em;color:var(--ink);margin-bottom:10px}.project-page__text p{font-size:clamp(13px,1.05vw,15px);line-height:1.7;color:var(--ink-soft)}.project-page__text h3{font-family:var(--font-body);font-weight:500;font-size:clamp(14px,1.2vw,16px);letter-spacing:-.01em;color:var(--ink);margin-bottom:6px}.project-page__text>*+h2{margin-top:clamp(22px,3.2vh,36px)}.project-page__content>:not(.project-page__meta,.project-page__text)+.project-page__text:has(>h2:first-child){margin-top:clamp(36px,3vw + 24px,72px)}.project-page__sub{padding-left:18px;border-left:1px solid rgba(0,0,0,.12)}.project-page__text>*+.project-page__sub{margin-top:clamp(18px,2.6vh,26px)}.project-page__text>.project-page__sub+.project-page__sub{margin-top:clamp(14px,2vh,20px)}.project-page__text>.project-page__sub+:is(p,ul){margin-top:clamp(18px,2.6vh,26px)}.project-page__sub h3{margin-bottom:4px}.project-page__sub p{margin-top:0}.project-page__text p+p{margin-top:14px}.project-page__text h2+p,.project-page__text h3+p{margin-top:0}.project-page__list{list-style:none;margin-top:12px}.project-page__list li{position:relative;padding-left:16px;font-size:clamp(13px,1.05vw,15px);line-height:1.7;color:var(--ink-soft)}.project-page__list li+li{margin-top:4px}.project-page__list li:before{content:"";position:absolute;left:2px;top:.72em;width:4px;height:1px;background:var(--ink-faint)}.project-page__text p+.project-page__list,.project-page__list+p{margin-top:14px}.project-page__sub .project-page__list{margin-top:8px}.project-page__sub .project-page__list li{line-height:1.55}.project-page__sub .project-page__list li+li{margin-top:6px}.project-page__sub .project-page__list li:before{top:.62em;width:4px;height:4px;border-radius:50%;background:var(--ink-soft)}.project-page__animate{opacity:0;transform:translateY(32px);filter:blur(6px);transition:opacity .25s cubic-bezier(.4,0,1,1),transform .3s cubic-bezier(.4,0,1,1),filter .25s cubic-bezier(.4,0,1,1)}.project-page__animate.is-visible{opacity:1;transform:translateY(0);filter:blur(0);transition:opacity .5s cubic-bezier(.22,1,.36,1),transform .75s cubic-bezier(.16,1,.3,1),filter .6s cubic-bezier(.16,1,.3,1)}@media(prefers-reduced-motion:reduce){.project-page__animate,.project-page__animate.is-visible{transform:none;filter:none;transition:opacity .2s linear}}.project-page__progress{position:absolute;right:12px;transform:scaleY(.3);transform-origin:center center;z-index:6;width:3px;background:#0000001f;border-radius:3px;pointer-events:none;opacity:0;filter:blur(6px);transition:opacity .3s cubic-bezier(.4,0,1,1),transform .35s cubic-bezier(.4,0,.6,1),filter .35s cubic-bezier(.4,0,.6,1)}.project-page__progress.is-visible{opacity:1;transform:scaleY(1);filter:blur(0);transition:opacity .2s linear .4s,transform .65s cubic-bezier(.34,1.56,.64,1) .38s,filter .5s cubic-bezier(.16,1,.3,1) .38s}.project-page__progress-thumb{position:absolute;top:0;left:0;width:100%;height:18%;background:var(--ink);border-radius:3px;transition:height .15s linear}.project-page__close{position:absolute;top:14px;right:14px;z-index:7;width:34px;height:34px;display:grid;place-items:center;padding:0;border:none;border-radius:999px;background:#0c0c0c61;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#fff;cursor:pointer;pointer-events:none;opacity:0;transform:scale(.6);filter:blur(4px);transition:opacity .25s cubic-bezier(.4,0,1,1),transform .3s cubic-bezier(.4,0,.6,1),filter .3s cubic-bezier(.4,0,.6,1),background .2s var(--ease)}.project-page.is-open .project-page__close{opacity:1;transform:scale(1);filter:blur(0);pointer-events:auto;transition:opacity .2s linear .42s,transform .55s cubic-bezier(.34,1.56,.64,1) .4s,filter .4s cubic-bezier(.16,1,.3,1) .4s,background .2s var(--ease)}.project-page__close:hover{background:#0c0c0c99}.project-page__close svg{width:12px;height:12px}.info-open-btn{position:absolute;left:14px;bottom:12px;display:inline-flex;align-items:center;gap:8px;padding:8px 14px;background:var(--ink);color:#fff;border:none;border-radius:999px;font-family:inherit;font-size:11px;font-weight:500;letter-spacing:.04em;cursor:pointer;pointer-events:none;opacity:0;transform:translateY(6px);transition:opacity .4s var(--ease),transform .4s var(--ease),background .2s var(--ease)}.info-open-btn svg{width:11px;height:11px}.info-open-btn:hover{background:#222}.info-card.is-pinned .info-open-btn{position:relative;left:auto;bottom:auto;margin-top:12px;pointer-events:auto;opacity:1;transform:translateY(0)}.stage.project-open .info{opacity:0;pointer-events:none;transition:opacity .35s var(--ease)}.stage.project-open .stack-wrap{pointer-events:none}@media(max-width:820px){.project-page__fold,.project-page__scroll{border-radius:0}.project-page__fold{box-shadow:none}.project-page__close{top:calc(14px + env(safe-area-inset-top))}.project-page__media-grid{grid-template-columns:1fr}.project-page__figure:has(>.project-page__media--portrait){max-width:min(var(--w, 100%),260px,78cqi)}.project-page__quote{font-size:clamp(18px,5.4vw,24px);padding-left:14px}}.project-page__content{container-type:inline-size;container-name:story}.icon{display:block;width:100%;height:100%;flex:none}.pp-stats{display:flex;flex-wrap:wrap;gap:clamp(28px,6vw,72px);margin-bottom:clamp(24px,4vh,44px);padding:clamp(16px,2.4vh,24px) 0;border-top:1px solid rgba(0,0,0,.1);border-bottom:1px solid rgba(0,0,0,.1)}.pp-stat__value{font-family:var(--font-display);font-weight:480;font-size:clamp(34px,5vw,52px);line-height:.95;letter-spacing:-.035em;color:var(--ink)}.pp-stat__label{margin-top:10px;font-size:10px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft)}.pp-steps{--dot: 44px;--step-line: rgba(10, 10, 10, .26);display:grid;grid-template-columns:repeat(var(--cols, 4),minmax(0,1fr));row-gap:clamp(24px,3.4vh,34px);list-style:none;margin-bottom:clamp(24px,4vh,44px);padding-bottom:clamp(8px,1.6vh,16px)}.pp-step{position:relative;min-width:0;display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center}.pp-step__n{flex:none;display:grid;place-items:center;width:var(--dot);height:var(--dot);border:1.5px solid oklch(.62 .14 var(--h, 25));border-radius:50%;background:oklch(.95 .035 var(--h, 25));font-family:var(--font-display);font-weight:480;font-size:18px;line-height:1;color:oklch(.44 .13 var(--h, 25))}.pp-step__label{padding:0 8px;font-size:clamp(13px,1.1vw,15px);font-weight:500;line-height:1.35;color:var(--ink)}.pp-step:not(:last-child):before,.pp-step:not(:last-child):after{content:"";position:absolute;top:calc(var(--dot) / 2);right:calc(-50% + var(--dot) / 2 + 10px)}.pp-step:not(:last-child):before{left:calc(50% + var(--dot) / 2 + 10px);border-top:1.5px solid var(--step-line);transform:translateY(-50%)}.pp-step:not(:last-child):after{width:7px;height:7px;border-top:1.5px solid var(--step-line);border-right:1.5px solid var(--step-line);transform:translateY(-50%) rotate(45deg)}.pp-step--end:before,.pp-step--end:after{display:none}@container story (max-width: 559px){.pp-steps--long{--dot: 38px;grid-template-columns:1fr;row-gap:16px}.pp-steps--long .pp-step{flex-direction:row;gap:14px;text-align:left}.pp-steps--long .pp-step__n{font-size:16px}.pp-steps--long .pp-step__label{padding:0}.pp-steps--long .pp-step:not(:last-child):before{display:block;top:calc(var(--dot) + 3px);left:calc(var(--dot) / 2);right:auto;height:10px;border-top:0;border-left:1.5px solid var(--step-line);transform:translate(-50%)}.pp-steps--long .pp-step:after{display:none}}.pp-cards{max-width:var(--measure);margin:0 auto clamp(24px,4vh,44px)}.pp-cards--compact{max-width:760px}.pp-cards__head{margin-bottom:8px;font-size:clamp(14px,1.15vw,16px);font-weight:500;color:var(--ink)}.pp-cards>ul{display:grid;grid-template-columns:minmax(0,1fr);column-gap:44px;list-style:none}.pp-cards:not(.pp-cards--tiles)>.pp-cards__head+ul{padding-left:18px;border-left:1px solid rgba(0,0,0,.12)}.pp-cards:not(.pp-cards--tiles)>.pp-cards__head+ul>.pp-card:first-child{border-top:0;padding-top:6px}.pp-cards:not(.pp-cards--tiles)>.pp-cards__head+ul>.pp-card:last-child{border-bottom:0;padding-bottom:6px}.pp-card{display:grid;grid-template-columns:32px minmax(0,1fr);column-gap:14px;align-items:start;padding:16px 0 18px;border-top:1px solid rgba(0,0,0,.09)}.pp-cards:not(.pp-cards--tiles) .pp-card:last-child{border-bottom:1px solid rgba(0,0,0,.09)}.pp-card__icon{width:32px;height:32px;padding:7px;border-radius:50%;background:#0a0a0a0e;color:var(--ink)}.pp-card__body{min-width:0}.pp-card__title{padding-top:6px;font-size:clamp(14px,1.1vw,15px);font-weight:500;line-height:1.4;color:var(--ink)}.pp-card__chips{display:flex;flex-wrap:wrap;gap:5px;margin-top:8px;list-style:none}.pp-card__chips>li{padding:2px 9px;border:1px solid rgba(0,0,0,.12);border-radius:999px;font-size:12px;line-height:1.5;color:var(--ink)}.pp-card__text{margin-top:8px;font-size:clamp(13px,1.05vw,14px);line-height:1.6;color:var(--ink-soft)}.pp-cards--tiles>ul{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 20px;padding:clamp(20px,3vh,28px) 0;border-top:1px solid rgba(0,0,0,.1);border-bottom:1px solid rgba(0,0,0,.1)}.pp-cards--tiles .pp-card{grid-template-columns:minmax(0,1fr);justify-items:center;align-content:start;row-gap:12px;padding:0;border:0;text-align:center}.pp-cards--tiles .pp-card__icon{width:52px;height:52px;padding:13px;background:color-mix(in srgb,var(--tone, var(--accent)) 10%,var(--bg));color:var(--tone, var(--accent))}.pp-cards--positive{--tone: var(--positive)}.pp-cards--tiles .pp-card__title{padding-top:0;max-width:18ch;font-size:clamp(14px,1.1vw,15px)}@container story (min-width: 600px){.pp-cards--compact>ul{grid-template-columns:repeat(2,minmax(0,1fr))}.pp-cards--compact .pp-card:nth-last-child(2){border-bottom:1px solid rgba(0,0,0,.09)}.pp-cards--tiles>ul{grid-template-columns:repeat(var(--n, 4),minmax(0,1fr))}}.pp-brief{margin-bottom:clamp(24px,4vh,44px)}.pp-brief__row{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 14px;padding:13px 0;border-bottom:1px solid rgba(0,0,0,.08)}.pp-brief__row:first-child{border-top:1px solid rgba(0,0,0,.08)}.pp-brief__icon{flex:none;width:20px;height:20px;color:var(--ink);align-self:flex-start;font-size:clamp(13px,1.05vw,15px);margin-top:calc((1.6em - 20px)/2)}.pp-brief__term{flex:none;font-size:clamp(13px,1.05vw,15px);font-weight:500;color:var(--ink)}.pp-brief__term:after{content:":"}.pp-brief__value{flex:1 1 14ch;font-size:clamp(13px,1.05vw,15px);line-height:1.6;color:var(--ink-soft)}.pp-outcomes{margin-bottom:clamp(24px,4vh,44px)}.pp-outcomes__head{display:flex;align-items:center;gap:10px;margin-bottom:6px;font-size:clamp(14px,1.2vw,16px);font-weight:500;color:var(--ink)}.pp-outcomes__head .icon{width:20px;height:20px}.pp-outcomes ul{list-style:none}.pp-outcome{display:grid;grid-template-columns:22px minmax(0,1fr);align-items:start;gap:0 12px;padding:14px 0;border-bottom:1px solid rgba(0,0,0,.08)}.pp-outcomes--plain .pp-outcome{grid-template-columns:minmax(0,1fr)}.pp-outcome__mark{width:17px;height:17px;margin-top:.18em;color:var(--ink-faint)}.pp-outcome--met .pp-outcome__mark{color:var(--ink)}.pp-outcome--open .pp-outcome__mark{color:var(--accent)}.pp-outcome__mark:empty:before{content:"";display:block;width:5px;height:1px;margin-top:.72em;background:var(--ink-faint)}.pp-outcome__goal{font-size:clamp(13px,1.05vw,15px);line-height:1.6;color:var(--ink)}.pp-outcome__arrow,.pp-outcome__result{display:none}.pp-outcomes--paired .pp-outcome__result{display:block;grid-column:2;margin-top:6px;font-size:clamp(12.5px,1vw,14px);line-height:1.6;color:var(--ink-soft)}@container story (min-width: 620px){.pp-outcomes--paired .pp-outcome{grid-template-columns:22px minmax(0,1fr) 30px minmax(0,1.1fr);align-items:start}.pp-outcomes--paired .pp-outcome__arrow{display:block;width:18px;height:18px;margin-top:.2em;color:var(--ink-faint)}.pp-outcomes--paired .pp-outcome__result{grid-column:auto;margin-top:0}}.pp-carousel{--slide-h: clamp(178px, 30vh, 288px);margin:0 0 clamp(20px,3vh,32px)}.pp-carousel--narrow{max-width:var(--measure);margin-inline:auto}.pp-carousel__track{position:relative;display:flex;gap:clamp(10px,1.4vw,16px);overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;overscroll-behavior-x:contain;touch-action:pan-x;padding-bottom:2px}.pp-carousel__track::-webkit-scrollbar{display:none}.pp-carousel__track:focus{outline:none}.pp-carousel__track:focus-visible{outline:2px solid var(--ink);outline-offset:5px;border-radius:12px}.pp-carousel__slide{flex:0 0 auto;width:min-content;max-width:100%;margin:0;scroll-snap-align:start}.pp-carousel__media{display:block;height:min(var(--slide-h),100cqi / var(--r, 1.3333));width:auto;max-width:100%;aspect-ratio:4 / 3;padding:0;border-radius:10px;overflow:hidden;background:linear-gradient(135deg,#00000012,#00000005);border:1px solid rgba(0,0,0,.05);color:inherit;font:inherit;cursor:zoom-in}.pp-carousel__media:focus{outline:none}.pp-carousel__media:focus-visible{outline:2px solid var(--ink);outline-offset:3px}.pp-carousel__media>img{display:block;width:100%;height:100%;object-fit:cover}.pp-carousel__controls{display:flex;align-items:center;gap:14px;margin-top:14px}.pp-carousel.is-static .pp-carousel__controls{display:none}.pp-carousel__arrow{flex:none;display:grid;place-items:center;width:30px;height:30px;padding:7px;border:1px solid rgba(0,0,0,.16);border-radius:999px;background:transparent;color:var(--ink);cursor:pointer;transition:background .25s var(--ease),opacity .25s var(--ease),border-color .25s var(--ease)}.pp-carousel__arrow:hover:not(:disabled){background:#0000000f}.pp-carousel__arrow:disabled{opacity:.28;cursor:default}.pp-carousel__dots{display:flex;align-items:center;gap:7px;flex:1}.pp-carousel__dot{width:6px;height:6px;padding:0;border:none;border-radius:999px;background:#0000002e;cursor:pointer;transition:transform .4s var(--spring),background .3s var(--ease)}.pp-carousel__dot.is-on{background:var(--ink);transform:scale(1.4)}@container story (min-width: 660px){.pp-carousel{--slide-h: clamp(170px, 22vh, 220px)}.pp-carousel__track{flex-wrap:wrap;overflow:visible;scroll-snap-type:none}.pp-carousel__slide{flex:var(--r, 1.3333) 1 calc(var(--slide-h) * var(--r, 1.3333));width:auto;min-width:0;max-width:calc(var(--slide-h) * var(--r, 1.3333) * 1.9)}.pp-carousel__media{width:100%;height:auto}.pp-carousel--cols .pp-carousel__slide{flex-basis:0;min-width:calc(100% / (var(--cols) + 1) + 1px);max-width:none}}.pp-timeline{list-style:none;margin:clamp(6px,1.4vh,14px) 0 clamp(24px,4vh,44px)}.pp-stage{position:relative;padding-left:36px;padding-bottom:clamp(30px,5vh,58px)}.pp-stage:last-child{padding-bottom:0}.pp-stage:before{content:"";position:absolute;left:10px;top:11px;bottom:-2px;width:1.5px;background:var(--ink);transform:scaleY(0);transform-origin:50% 0;transition:transform .85s cubic-bezier(.22,1,.36,1)}.pp-stage:last-child:before{content:none}.pp-stage.is-in:before{transform:scaleY(1)}.pp-stage__marker{position:absolute;left:0;top:0;z-index:1;display:grid;place-items:center;width:21px;height:21px;padding:3px;border-radius:999px;background:var(--bg);color:var(--ink);opacity:0;transform:scale(.4);transition:opacity .3s var(--ease),transform var(--spring-dur) var(--spring)}.pp-stage.is-in .pp-stage__marker{opacity:1;transform:scale(1)}.pp-stage--node .pp-stage__marker{padding:6px}.pp-stage--fail .pp-stage__marker,.pp-stage--mixed .pp-stage__marker{color:var(--accent)}.pp-stage__body{opacity:0;transform:translateY(20px);filter:blur(5px);transition:opacity .5s cubic-bezier(.22,1,.36,1) .08s,transform .75s cubic-bezier(.16,1,.3,1) .08s,filter .6s cubic-bezier(.16,1,.3,1) .08s}.pp-stage.is-in .pp-stage__body{opacity:1;transform:none;filter:blur(0)}.pp-stage__head{max-width:56ch;font-size:clamp(13px,1.05vw,15px);line-height:1.55;color:var(--ink-soft)}.pp-stage__head b{font-weight:500;color:var(--ink)}.pp-stage__points{list-style:none;max-width:56ch;margin-top:9px}.pp-stage__points li{position:relative;padding-left:16px;font-size:clamp(12.5px,1vw,14px);line-height:1.65;color:var(--ink-soft)}.pp-stage__points li+li{margin-top:3px}.pp-stage__points li:before{content:"";position:absolute;left:2px;top:.78em;width:4px;height:1px;background:var(--ink-faint)}.pp-stage__points li.is-quote{font-style:italic;color:var(--ink)}.pp-stage__points li.is-quote:before{width:7px;background:var(--accent)}.pp-stage__media{--mat: 10px;margin-top:16px}.pp-stage__media .pp-carousel{--slide-h: clamp(150px, 22vh, 212px);margin-bottom:0}.pp-stage__media .project-page__figure{margin:0;max-width:min(420px,var(--w, 420px))}.pp-stage__media .project-page__media{margin-inline:0;max-width:100%}@container story (min-width: 660px){.pp-stage__media .pp-carousel{--slide-h: clamp(160px, 20vh, 220px)}}.pp-callout{--callout: var(--accent);--img: min(calc(440px * var(--ratio, .6)), 100cqi);--gap: 0px;margin-bottom:clamp(28px,5vh,56px)}.pp-callout__frame{position:relative;display:flex;flex-wrap:wrap;justify-content:center;align-items:flex-start;column-gap:var(--gap)}.pp-callout__fig{flex:none;width:var(--img);margin:0}.pp-callout__shot{position:relative;border-radius:10px;background:linear-gradient(135deg,#00000012,#00000005);box-shadow:0 0 0 1px #0000000f}.pp-callout__open{display:block;width:100%;height:100%;padding:0;border:0;border-radius:inherit;background:none;cursor:zoom-in}.pp-callout__open:focus{outline:none}.pp-callout__open:focus-visible{outline:2px solid var(--ink);outline-offset:3px}.pp-callout__shot img,.pp-callout__shot video{display:block;width:100%;height:100%;object-fit:cover;border-radius:inherit}.pp-callout--mat{--img: min(calc(440px * var(--ratio, .6)), calc(100cqi - 2 * var(--mat)))}.pp-callout--mat .pp-callout__frame{margin-block:var(--mat)}.pp-callout--mat .pp-callout__shot{margin-bottom:var(--mat);isolation:isolate;border-radius:3px;background:none;box-shadow:none}.pp-callout--mat .pp-callout__shot:before{content:"";position:absolute;z-index:-1;inset:calc(var(--mat) * -1);border:1px solid rgba(0,0,0,.12);border-radius:10px;background:var(--card)}.pp-callout__pin{position:absolute;z-index:1;display:grid;place-items:center;width:18px;height:18px;margin:-9px 0 0 -9px;border-radius:999px;background:var(--callout);box-shadow:0 0 0 2px #fff;color:#fff;font-size:9.5px;font-weight:600;line-height:1;font-variant-numeric:tabular-nums;pointer-events:none;transform:scale(0);transition:transform var(--spring-dur) var(--spring) calc(.3s + var(--i, 0) * .07s)}.pp-callout.is-in .pp-callout__pin{transform:scale(1)}.pp-callout__notes{flex:0 0 100%;max-width:var(--measure);margin-top:18px;list-style:none}.pp-callout__note{display:flex;align-items:flex-start;gap:10px;font-size:clamp(13px,1.05vw,14px);line-height:1.5;color:var(--ink-soft)}.pp-callout__note+.pp-callout__note{margin-top:10px}.pp-callout__note b{display:block;margin-bottom:2px;font-weight:500;color:var(--ink)}.pp-callout__note.is-pinned:before{content:attr(data-n);flex:none;display:grid;place-items:center;width:18px;height:18px;margin-top:1px;border-radius:999px;background:var(--callout);color:#fff;font-size:9.5px;font-weight:600;line-height:1}.pp-callout--aside .pp-callout__notes{order:-1;margin:0 0 16px}.pp-callout--aside .pp-callout__note b{font-size:clamp(14px,1.2vw,16px)}.pp-callout--pair{--before: 38cqi;--img: 48cqi;--gap: 6cqi;--drop: 14cqi}.pp-callout--pair .pp-callout__frame{justify-content:flex-start;width:calc(var(--before) + var(--gap) + var(--img));margin-inline:auto}.pp-callout--pair .pp-callout__fig:first-of-type{width:var(--before)}.pp-callout--pair .pp-callout__fig:last-of-type{margin-top:var(--drop)}.pp-callout__arrow{--rise: calc(var(--before) / var(--ratio-b, .6) * .055);position:absolute;top:var(--rise);left:calc(var(--before) * .8);width:calc(var(--before) * .2 + var(--gap) + var(--img) * .45);height:calc(var(--drop) - var(--rise) - 9px);border-top:1.5px solid var(--callout);border-right:1.5px solid var(--callout);border-top-right-radius:100%;filter:drop-shadow(0 0 .6px #fff) drop-shadow(0 0 .6px #fff);pointer-events:none;clip-path:inset(-12px 100% -12px -12px);transition:clip-path .9s var(--ease) .15s}.pp-callout__arrow:after{content:"";position:absolute;right:-4.75px;bottom:.5px;width:8px;height:8px;border-right:1.5px solid var(--callout);border-bottom:1.5px solid var(--callout);transform:rotate(45deg)}.pp-callout.is-in .pp-callout__arrow{clip-path:inset(-12px)}@container story (min-width: 600px){.pp-callout{--tall: clamp(300px, 56cqi, 500px);--img: min(calc(var(--tall) * var(--ratio, .6)), 44cqi);--gap: clamp(32px, 7cqi, 72px);--note: min(260px, calc(100cqi - var(--img) - var(--gap)))}.pp-callout--aside{--tall: clamp(280px, 40cqi, 380px);--gap: clamp(24px, 4cqi, 40px);--note: min(220px, calc(100cqi - var(--img) - var(--gap)))}.pp-callout__frame{flex-wrap:nowrap;width:calc(var(--note) + var(--gap) + var(--img));margin-inline:auto;column-gap:0}.pp-callout--left .pp-callout__frame{justify-content:flex-end}.pp-callout--right .pp-callout__frame{justify-content:flex-start}.pp-callout__notes{position:absolute;top:0;left:0;width:var(--img);height:calc(var(--img) / var(--ratio, .6));max-width:none;margin:0;pointer-events:none}.pp-callout--left .pp-callout__notes{left:calc(var(--note) + var(--gap))}.pp-callout__note{position:absolute;top:calc(var(--y, 50) * 1%);display:block;width:var(--note);pointer-events:auto;transform:translateY(calc(-50% + var(--shift, 0px)))}.pp-callout__note+.pp-callout__note{margin-top:0}.pp-callout__note.is-pinned{transform:translateY(calc(var(--shift, 0px) - .75em))}.pp-callout__note.is-pinned:before{content:none}.pp-callout--left .pp-callout__note{right:calc(100% + var(--gap))}.pp-callout--left .pp-callout__note{text-align:right}.pp-callout--right .pp-callout__note{left:calc(100% + var(--gap))}.pp-callout__note.is-pinned:after{content:"";position:absolute;top:.75em;width:hypot(var(--run),var(--shift, 0px));height:1px;background:var(--callout);box-shadow:0 0 0 1px #fff;pointer-events:none;transform:scaleX(0);transition:transform .7s var(--ease) calc(.1s + var(--i, 0) * .07s)}.pp-callout--left .pp-callout__note.is-pinned:after{--run: calc(var(--gap) - 12px + var(--img) * var(--x) / 100);left:calc(100% + 12px);transform-origin:0 50%;rotate:atan2(calc(var(--shift, 0px) * -1),var(--run))}.pp-callout--right .pp-callout__note.is-pinned:after{--run: calc(var(--gap) - 12px + var(--img) * (100 - var(--x)) / 100);right:calc(100% + 12px);transform-origin:100% 50%;rotate:atan2(var(--shift, 0px),var(--run))}.pp-callout.is-in .pp-callout__note.is-pinned:after{transform:scaleX(1)}.pp-callout__pin{width:9px;height:9px;margin:-4.5px 0 0 -4.5px;font-size:0}.pp-callout--pair{--img: min(calc(var(--tall) * var(--ratio, .6)), 28cqi);--before: var(--img);--drop: calc(var(--img) / var(--ratio, .6) * .2);--note: min(250px, calc(100cqi - var(--before) - var(--img) - var(--gap) * 2))}.pp-callout--pair .pp-callout__frame{width:calc(var(--before) + var(--img) + var(--gap) * 2 + var(--note));column-gap:var(--gap)}.pp-callout--pair .pp-callout__notes{top:var(--drop);left:calc(var(--before) + var(--gap))}}.pp-zoom__btn{position:relative;display:block;width:100%;padding:0;border:0;background:none;color:inherit;font:inherit;text-align:left;cursor:zoom-in}.pp-zoom--tall .pp-zoom__btn{max-width:min(520px,100%);margin-inline:auto}.pp-zoom__media{margin-bottom:0}.pp-zoom__media>img{display:block;width:100%;height:100%}.pp-zoom__hint{position:absolute;right:12px;bottom:12px;display:inline-flex;align-items:center;gap:7px;padding:7px 12px 7px 10px;border-radius:999px;background:#0c0c0c80;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#fff;font-size:9.5px;font-weight:500;letter-spacing:.11em;text-transform:uppercase;opacity:.82;transition:opacity .3s var(--ease),transform .4s var(--spring)}.pp-zoom__hint .icon{width:13px;height:13px}.pp-zoom__btn:hover .pp-zoom__hint,.pp-zoom__btn:focus-visible .pp-zoom__hint{opacity:1;transform:translateY(-2px)}.pp-zoom__btn:focus-visible{outline:2px solid var(--ink);outline-offset:5px;border-radius:12px}.lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:400;visibility:hidden;opacity:0;transition:opacity .28s cubic-bezier(.4,0,1,1),visibility 0s linear .28s}.lightbox.is-open{visibility:visible;opacity:1;transition:opacity .32s var(--ease),visibility 0s}.lightbox__scrim{position:absolute;top:0;right:0;bottom:0;left:0;background:#080809ed;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.lightbox__stage{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:clamp(14px,4vh,56px);overflow:hidden;touch-action:none;cursor:zoom-in}.lightbox.is-zoomed .lightbox__stage{cursor:grab}.lightbox.is-zoomed .lightbox__stage:active{cursor:grabbing}.lightbox__img{max-width:100%;max-height:100%;object-fit:contain;border-radius:8px;transform-origin:50% 50%;will-change:transform;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.lightbox__caption{max-width:60ch;font-size:13px;line-height:1.5;text-align:center;color:#fffc;transition:opacity .2s var(--ease)}.lightbox.has-caption .lightbox__stage{padding-bottom:calc(clamp(14px,3vh,28px) + 58px)}.lightbox.has-caption .lightbox__img{max-height:calc(100% - 72px)}.lightbox.is-zoomed .lightbox__caption{opacity:0}.lightbox__bar{position:absolute;left:50%;bottom:clamp(14px,3vh,28px);transform:translate(-50%);display:flex;align-items:center;gap:8px;padding:7px 8px;border-radius:999px;background:#101012a8;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#fff}.lightbox__hint{padding:0 12px 0 6px;font-size:10px;letter-spacing:.06em;color:#ffffffa8;white-space:nowrap}.lightbox__btn,.lightbox__close{display:grid;place-items:center;width:32px;height:32px;padding:7px;border:none;border-radius:999px;background:#ffffff1f;color:#fff;cursor:pointer;transition:background .22s var(--ease),opacity .22s var(--ease)}.lightbox__btn:hover:not(:disabled),.lightbox__close:hover{background:#ffffff42}.lightbox__btn:disabled{opacity:.32;cursor:default}.lightbox__close{position:absolute;top:clamp(12px,2.4vh,22px);right:clamp(12px,2.4vw,22px);width:36px;height:36px;padding:9px;background:#101012a8;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.lightbox__close:hover{background:#26262ad1}.lightbox__nav{position:absolute;top:50%;display:grid;place-items:center;width:40px;height:40px;margin-top:-20px;padding:10px;border:none;border-radius:999px;background:#101012a8;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#fff;cursor:pointer;transition:background .22s var(--ease),opacity .22s var(--ease)}.lightbox__nav:hover:not(:disabled){background:#26262ad1}.lightbox__nav:disabled{opacity:.3;cursor:default}.lightbox__nav--prev{left:clamp(10px,2.4vw,24px)}.lightbox__nav--next{right:clamp(10px,2.4vw,24px)}.lightbox:not(.is-gallery) .lightbox__nav{display:none}@media(max-width:820px){.lightbox__hint{display:none}.lightbox__bar{padding:6px}}@media(prefers-reduced-motion:reduce){.pp-stage:before{transform:scaleY(1);transition:none}.pp-stage__marker,.pp-stage__body{opacity:1;transform:none;filter:none;transition:none}.pp-carousel__track{scroll-behavior:auto}.pp-callout__pin,.pp-callout__note:after,.pp-callout__arrow{transition:none}}.about-page{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;background:var(--bg);opacity:0;pointer-events:none;filter:blur(14px);transition:opacity .42s cubic-bezier(.4,0,.6,1),filter .5s cubic-bezier(.4,0,.6,1),visibility 0s linear .5s;visibility:hidden}.about-page.is-open{opacity:1;filter:blur(0);pointer-events:auto;visibility:visible;transition:opacity .5s cubic-bezier(.4,0,.6,1),filter .6s cubic-bezier(.16,1,.3,1),visibility 0s linear 0s}html:has(.about-page.is-open),body:has(.about-page.is-open){touch-action:auto}.about-page__scroll{height:100%;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;touch-action:pan-y;-webkit-overflow-scrolling:touch;scrollbar-width:none}.about-page__scroll::-webkit-scrollbar{display:none}.about-page__scroll:focus{outline:none}.about-page__inner{--am: 620px;--ap: clamp(22px, 5vw, 64px);max-width:calc(var(--am) + var(--ap) * 2);margin:0 auto;padding:clamp(64px,12vh,132px) var(--ap) clamp(80px,14vh,140px)}.about-sec{opacity:0;transform:translateY(18px);filter:blur(10px)}.about-page.is-open .about-sec{opacity:1;transform:none;filter:blur(0);transition:opacity .62s cubic-bezier(.4,0,.6,1) calc(.18s + var(--i) * 95ms),transform .72s cubic-bezier(.16,1,.3,1) calc(.18s + var(--i) * 95ms),filter .52s cubic-bezier(.16,1,.3,1) calc(.18s + var(--i) * 95ms)}.about-page.is-open .about-page__close{opacity:1;transform:scale(1);filter:blur(0);pointer-events:auto;transition:opacity .2s linear .24s,transform .55s cubic-bezier(.34,1.56,.64,1) .22s,filter .4s cubic-bezier(.16,1,.3,1) .22s,background .2s var(--ease)}.about-page__close{position:fixed;top:var(--pad);right:var(--pad)}.about-portrait{text-align:center;margin-bottom:clamp(16px,3vh,28px)}.about-portrait img{width:clamp(104px,16vw,132px);height:clamp(104px,16vw,132px);border-radius:50%;object-fit:cover;display:inline-block;box-shadow:0 2px 6px #00000014,0 18px 40px -14px #0000004d}.about-name{font-family:var(--font-display);font-weight:500;font-size:clamp(38px,6.4vw,60px);line-height:1.02;letter-spacing:-.02em;text-align:center;margin-bottom:clamp(14px,2.4vh,24px)}.about-body{font-size:clamp(15px,1.15vw,16.5px);line-height:1.72;color:var(--ink-soft);margin-bottom:1em}.about-body:last-child{margin-bottom:0}.about-social{list-style:none;display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin:clamp(20px,3.4vh,34px) 0 0}.about-social__link{display:inline-flex;align-items:center;gap:8px;padding:8px 15px 8px 12px;border:1px solid rgba(10,10,10,.14);border-radius:999px;color:var(--ink-soft);text-decoration:none;font-size:12px;font-weight:500;letter-spacing:.02em;transition:color .25s var(--ease),border-color .25s var(--ease),transform .4s var(--spring)}.about-social__link .icon{width:17px;height:17px}.about-social__link:hover,.about-social__link:focus-visible{color:var(--ink);border-color:#0a0a0a66;transform:translateY(-2px)}.about-photos-sec{margin:clamp(26px,4vh,56px) 0 clamp(34px,6vh,58px);width:100vw;margin-inline:calc(50% - 50vw)}.about-photos{--ph: min(clamp(150px, 22vh, 256px), 15vw);display:flex;justify-content:center;align-items:center;padding:24px 0 40px}.about-photo{flex:0 0 auto;height:var(--ph);aspect-ratio:var(--ar);margin-inline:-16px;padding:5px;background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a,0 14px 30px -10px #0000004d;transform:rotate(var(--rot));transition:transform .62s var(--spring),box-shadow .5s var(--ease);will-change:transform}.about-photo img{width:100%;height:100%;object-fit:cover;border-radius:8px;display:block}@media(hover:hover){.about-photo:hover{transform:rotate(0) scale(1.09) translateY(-10px);box-shadow:0 4px 10px #0000001f,0 34px 60px -14px #0006;transition:transform .42s cubic-bezier(.16,1,.3,1),box-shadow .42s var(--ease);position:relative;z-index:3}}.about-block{margin-top:clamp(40px,7vh,72px)}.about-h{font-size:11px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-soft);padding-bottom:12px;border-bottom:1px solid rgba(10,10,10,.12);margin-bottom:4px}.about-cv{list-style:none}.about-cv__row{padding:clamp(20px,3vh,28px) 0;border-bottom:1px solid rgba(10,10,10,.08)}.about-cv__row:last-child{border-bottom:none;padding-bottom:0}.about-cv__head{display:flex;align-items:baseline;justify-content:space-between;gap:16px}.about-cv__org{font-size:15.5px;font-weight:500;letter-spacing:-.012em;color:var(--ink)}.about-cv__dates{flex:0 0 auto;font-size:10.5px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);white-space:nowrap}.about-cv__role{font-size:13px;color:var(--ink-soft);margin-top:3px}.about-cv__notes{list-style:none;margin-top:12px}.about-cv__notes li{position:relative;padding-left:16px;font-size:14px;line-height:1.62;color:var(--ink-soft);margin-bottom:7px}.about-cv__notes li:last-child{margin-bottom:0}.about-cv__notes li:before{content:"";position:absolute;left:0;top:.66em;width:7px;height:1px;background:var(--ink-faint)}.about-skills__row{display:grid;grid-template-columns:82px 1fr;gap:18px;padding:15px 0;border-bottom:1px solid rgba(10,10,10,.08)}.about-skills__row:last-child{border-bottom:none;padding-bottom:0}.about-skills__row dt{font-size:10.5px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);padding-top:2px}.about-skills__row dd{font-size:14px;line-height:1.6;color:var(--ink-soft)}@media(max-width:820px){.about-photos{--ph: clamp(212px, 34vh, 300px);justify-content:flex-start;scroll-padding-inline:var(--ap);gap:14px;padding:26px var(--ap) 30px;overflow-x:auto;scroll-snap-type:x mandatory;touch-action:pan-x;overscroll-behavior-x:contain;scrollbar-width:none}.about-photos::-webkit-scrollbar{display:none}.about-photo{margin-inline:0;scroll-snap-align:center;transform:rotate(calc(var(--rot) * .5))}.about-skills__row{grid-template-columns:1fr;gap:6px}.about-cv__head{flex-wrap:wrap;gap:4px 14px}}@media(prefers-reduced-motion:reduce){.about-page,.about-page.is-open .about-sec,.about-photo{transition-duration:.01ms!important}.about-sec{filter:none;transform:none}}
