@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/assets/fonts/inter-variable.woff2) format("woff2")}@font-face{font-family:Inter;font-style:italic;font-weight:100 900;font-display:swap;src:url(/assets/fonts/inter-variable-italic.woff2) format("woff2")}@font-face{font-family:"Instrument Serif";font-style:normal;font-weight:400;font-display:swap;src:url(/assets/fonts/instrument-serif-latin.woff2) format("woff2")}@font-face{font-family:"Instrument Serif";font-style:italic;font-weight:400;font-display:swap;src:url(/assets/fonts/instrument-serif-latin-italic.woff2) format("woff2")}:root{--font-sans: "Inter", "Helvetica Neue", Arial, sans-serif;--font-serif: "Instrument Serif", Georgia, "Times New Roman", serif;font-optical-sizing:auto}:root{font-family:var(--font-sans);color:#191c1b;background:#e9edf3;font-synthesis:none;--bg:#e9edf3;--ink:#191c1b;--muted:#6f747b;--glass:#f3f5f7ad;--line:#cfd4d9;color-scheme:light;scroll-behavior:smooth;scroll-padding-top:100px}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);transition:background .6s,color .6s}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}button{border:0}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin:0}button:focus-visible,a:focus-visible{outline:2px solid #616a47;outline-offset:5px}button:disabled{cursor:wait}img{display:block;max-width:100%}[hidden]{display:none!important}::selection{background:#cfdbb1}.skip-link{position:fixed;top:-70px;left:20px;padding:15px;background:var(--ink);color:var(--bg);z-index:100}.skip-link:focus{top:20px}.navigation{position:fixed;top:25px;left:50%;transform:translate(-50%);z-index:20;display:flex;gap:5px;background:#d3d7dc87;border:1px solid #bcc3ca5c;box-shadow:inset 0 1px 2px #ffffffc9,0 3px 5px #1c222e0c;border-radius:18px;padding:4px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.navigation>a{font-size:14px;line-height:1;padding:14px 22px;border-radius:13px;font-weight:550;transition:background .2s,box-shadow .2s}.navigation>a.current{background:#f4f6f8bd;box-shadow:0 1px 1px #fff,inset 0 1px 1px #fff}.navigation>a:hover{background:#f8f9facf}.intro{max-width:1400px;margin:0 auto;text-align:center;padding:95px 30px 70px}.scene-container{height:510px;max-width:1110px;margin:0 auto 15px;position:relative}.scene-container canvas{width:100%;height:100%;display:block;image-rendering:pixelated;touch-action:pan-y;opacity:0;transition:opacity .6s}.scene-container canvas.ready{opacity:1}.loading{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:15px;font-size:12px;color:var(--muted)}.loading>span{font-size:40px;animation:spin 8s linear infinite}.scene-footer{position:absolute;bottom:10px;left:0;right:0;display:flex;align-items:center;justify-content:space-between;gap:10px;max-width:900px;margin:auto;color:var(--muted);pointer-events:none}.scene-instruction{font-size:10px;letter-spacing:.05px}.scene-controls{display:flex;gap:4px;pointer-events:auto}.scene-controls>button{width:29px;height:29px;display:grid;place-items:center;border-radius:8px;background:transparent;font-size:18px;transition:background .15s,color .15s}.scene-controls>button:hover,.scene-controls>button[aria-pressed=true]{color:var(--ink);background:#cdd3db75}.scene-controls #explore{font-size:17px}.activity{position:absolute;bottom:-17px;left:0;width:100%;min-height:15px;font-size:11px;color:var(--muted);pointer-events:none}.thought{position:absolute;left:47%;top:25%;background:#fffff2e8;border:2px solid #dce0dd;border-radius:45% 45% 45% 10%;padding:12px 21px;transform:translate(-50%,-100%) scale(0);transform-origin:bottom center;transition:transform .25s;pointer-events:none;box-shadow:0 4px 9px #56616b13}.thought.show{transform:translate(-50%,-100%) scale(1)}.thought>span{font-size:27px;line-height:1}.scene-tooltip{position:fixed;z-index:25;padding:8px 12px;background:#fafbfcf0;border:1px solid #b6bdc45c;border-radius:8px;font-size:11px;color:#222;opacity:0;pointer-events:none;box-shadow:0 4px 10px #1d27300e;transform:translate(12px,-110%);white-space:nowrap}.scene-tooltip.visible{opacity:1}.action-menu{position:absolute;z-index:12;right:5%;bottom:50px;background:var(--bg);border:1px solid var(--line);padding:6px;border-radius:12px;box-shadow:0 10px 40px #2222;display:grid;min-width:200px;text-align:left}.action-menu button{font-size:12px;padding:11px 12px;text-align:left;border-radius:7px;background:transparent}.action-menu button:hover{background:#afb7c330}.intro h1{font-size:clamp(42px,5.2vw,72px);line-height:.98;letter-spacing:-3.1px;font-weight:750;margin:38px auto 0;max-width:950px}.discover{display:inline-block;font-size:27px;margin-top:40px;color:var(--muted)}.selection{max-width:1200px;margin:45px auto 0;padding:0 35px}.selection-top{display:flex;justify-content:space-between;color:var(--muted);font-size:11px;margin-bottom:26px}.project-card{margin-bottom:80px}.project-media{display:grid;grid-template-columns:1.1fr 1fr;gap:12px}.project-media button{padding:0;display:block;overflow:hidden;position:relative;background:#dce1e8;border-radius:9px;aspect-ratio:1.15}.project-media img{width:100%;height:100%;object-fit:cover;transition:transform .5s cubic-bezier(.2,.7,.2,1)}.project-media button:hover img{transform:scale(1.025)}.project-media button:after{content:"●";position:absolute;bottom:18px;right:18px;font-size:12px;letter-spacing:-.1px;border:1px solid #ffffff80;border-radius:30px;padding:10px 14px;background:#ffffffdc;color:#181a17;opacity:0;transform:translateY(4px);transition:opacity .2s,transform .2s}.project-media button:hover:after,.project-media button:focus-visible:after{opacity:1;transform:translateY(0)}.project-caption{display:flex;align-items:flex-start;justify-content:space-between;gap:28px;padding:20px 0}.project-caption h2{font-size:24px;font-weight:650;letter-spacing:-.9px;line-height:1.1}.project-caption p{font-size:17px;letter-spacing:-.3px;margin-top:4px;color:var(--muted);line-height:1.35;max-width:600px}.project-caption>span{font-size:11px;white-space:nowrap;margin-top:6px;color:var(--muted);text-align:right;line-height:1.6}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.project-grid .project-media{display:block}.project-grid .project-media button{width:100%;aspect-ratio:1.16}.project-grid .project-media button+button{display:none}.project-grid .project-caption{gap:15px}.project-grid .project-caption h2{font-size:23px}.project-grid .project-caption p{font-size:15px;max-width:360px}.project-grid .project-caption>span{font-size:10px}.project-grid .project-card{margin-bottom:35px}.info-view{max-width:1000px;margin:0 auto;padding:140px 35px 50px;text-align:center}.info-view h1{font-size:clamp(38px,5.5vw,68px);letter-spacing:-3px;line-height:.99;font-weight:750}.portrait-wrap{width:330px;height:330px;margin:30px auto;max-width:100%}.portrait-wrap canvas{width:100%;height:100%;image-rendering:pixelated}.bio-lead{font-size:32px;line-height:1.1;font-weight:600;letter-spacing:-1.3px;max-width:780px;margin:25px auto 0}.bio-copy{font-size:18px;line-height:1.45;letter-spacing:-.25px;max-width:670px;color:var(--muted);margin:20px auto 0}.info-details{display:grid;grid-template-columns:1fr 1fr;gap:70px;text-align:left;max-width:670px;margin:50px auto 85px;font-size:14px;line-height:1.7}.info-details>div{display:flex;flex-direction:column;align-items:flex-end}.info-details a:hover{text-decoration:underline}.inspiration h2,.little-things h2{font-size:36px;line-height:1;font-weight:650;letter-spacing:-1.3px}.inspiration>p,.little-things p{font-size:15px;line-height:1.45;color:var(--muted);margin-top:14px}.albums{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin-top:35px;text-align:left}.album img{aspect-ratio:1;object-fit:cover;width:100%;transition:transform .25s;box-shadow:0 5px 8px #25303a0b}.album:hover img{transform:translateY(-8px) rotate(-2deg)}.album strong{display:block;font-size:12px;line-height:1.2;font-weight:600;margin-top:13px}.album>span{font-size:11px;color:var(--muted)}.little-things{padding:95px 0 60px}.little-things button{margin-top:28px;border:1px solid var(--line);border-radius:25px;padding:12px 19px;font-size:13px;background:var(--glass)}footer{max-width:1130px;margin:40px auto 0;padding:35px 0 90px;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;gap:20px;font-size:12px}footer>div{display:flex;gap:22px}footer>span{text-align:center;color:var(--muted);font-size:11px}.footer-mark{justify-self:end;font-size:45px;line-height:1;font-weight:800;letter-spacing:-5px;transform:rotate(-8deg)}.footer-mark>span{font-size:28px;vertical-align:top;letter-spacing:-1px;margin-left:4px}dialog{max-width:1100px;width:calc(100% - 50px);max-height:90dvh;padding:0;border:1px solid #b4bac73d;border-radius:16px;background:var(--bg);color:var(--ink);overflow:auto;box-shadow:0 20px 100px #19232c30}dialog::backdrop{background:#37415285;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.close-dialog{position:sticky;left:calc(100% - 55px);top:15px;margin-bottom:-45px;width:38px;height:38px;background:#f5f6f8ed;color:#222;border:1px solid #ccc9;border-radius:50%;font-size:28px;line-height:1;z-index:1}.project-dialog-content{padding:60px 42px 42px}.project-dialog-content h2{font-size:52px;letter-spacing:-2px;line-height:1;font-weight:700}.project-dialog-meta{font-size:12px;color:var(--muted);margin-top:14px}.project-dialog-description{font-size:22px;line-height:1.3;letter-spacing:-.6px;max-width:760px;margin-top:30px}.project-dialog-context{font-size:15px;line-height:1.6;color:var(--muted);max-width:760px;margin-top:16px}.project-dialog-images{display:grid;gap:18px;margin-top:35px}.project-dialog-images img{width:100%;height:auto;border-radius:6px}.project-dialog-end{margin-top:25px;display:flex;justify-content:space-between;font-size:13px}.project-dialog-end button{background:var(--glass);border:1px solid var(--line);border-radius:20px;padding:10px 15px}.record-panel{position:fixed;right:25px;bottom:25px;z-index:18;width:310px;padding:20px;border:1px solid var(--line);border-radius:15px;background:var(--glass);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-shadow:0 10px 50px #2222}.record-panel>button{position:absolute;right:10px;top:8px;background:transparent;font-size:23px}.record-panel>p{font-size:15px;font-weight:600}.record-panel>span{display:block;font-size:10px;color:var(--muted);margin-top:14px}.record-panel #record-covers{display:flex;gap:9px;overflow:auto;margin-top:20px;padding-top:5px}.record-panel #record-covers a{flex:0 0 73px}.record-panel img{width:73px;height:73px;object-fit:cover}.record-panel a>span{font-size:9px;display:block;margin-top:7px}.night{--bg:#252a35;--ink:#edf0f5;--muted:#a4adbb;--glass:#343c49dc;--line:#48505e;color-scheme:dark}.night .navigation{background:#3b4454a8;border-color:#60697880;box-shadow:inset 0 1px 2px #ffffff20}.night .navigation>a.current{background:#69738265;box-shadow:inset 0 1px 1px #ffffff20}.night .navigation>a:hover{background:#69738295}.night .scene-controls>button:hover{background:#7a869b30}.night .project-media button{background:#37404f}.noscript{padding:120px 30px;text-align:center}#scene-error{position:absolute;top:40%;left:0;width:100%;font-size:14px;color:var(--muted)}#scene-error a{display:inline-block;margin-top:20px;text-decoration:underline}@keyframes spin{to{transform:rotate(360deg)}}@media(min-width:1500px){.intro{padding-top:105px}.scene-container{height:580px}.intro h1{margin-top:25px}.selection{margin-top:80px}}@media(max-width:1000px){.intro{padding-left:15px;padding-right:15px}.scene-container{height:470px}.scene-footer{padding:0 20px}.intro h1{font-size:58px;letter-spacing:-2.7px}.project-caption p{font-size:15px}.project-caption h2{font-size:22px}.selection{padding:0 25px}.project-grid .project-caption>span{display:none}footer{margin:25px 25px 0}.info-view h1{font-size:58px}.bio-lead{font-size:29px}}@media(max-width:600px){:root{scroll-padding-top:35px}.navigation{top:auto;bottom:max(22px,env(safe-area-inset-bottom));padding:4px;border-radius:17px}.navigation>a{padding:14px 22px;font-size:14px;border-radius:12px}.intro{padding:24px 0 35px}.scene-container{height:clamp(280px,72vw,400px);overflow:visible;margin-bottom:20px}.scene-footer{bottom:17px;padding:0 19px;flex-direction:column;gap:10px}.scene-instruction{font-size:9px}.scene-controls{gap:7px}.scene-controls>button{width:27px;height:27px;font-size:17px}.intro h1{font-size:clamp(30px,7.9vw,44px);line-height:1;letter-spacing:-1.5px;padding:0 18px;margin-top:24px;max-width:580px}.activity{bottom:-3px;font-size:10px}.discover{margin-top:25px;font-size:23px}.scene-container .thought{top:27%;left:41%;padding:8px 13px}.thought>span{font-size:21px}.scene-tooltip{font-size:10px}.action-menu{bottom:68px;right:20px}.selection{padding:0 17px;margin-top:20px}.selection-top{font-size:9px;margin-bottom:17px}.project-card{margin-bottom:40px}.project-media{gap:7px;grid-template-columns:1fr}.project-media button{aspect-ratio:1.08;border-radius:7px}.project-media button+button{display:none}.project-media button:after{opacity:1;transform:none;font-size:10px;padding:8px 12px;right:12px;bottom:12px}.project-caption{padding:15px 0;gap:18px}.project-caption h2{font-size:22px}.project-caption p{font-size:14px;line-height:1.3;max-width:310px}.project-caption>span{font-size:9px}.project-grid{grid-template-columns:1fr;gap:0}.project-grid .project-card{margin-bottom:40px}.project-grid .project-media button{aspect-ratio:1.08}.project-grid .project-caption>span{display:block}.project-grid .project-caption p{font-size:14px}.project-grid .project-caption h2{font-size:22px}.info-view{padding:55px 22px 20px}.info-view h1{font-size:39px;letter-spacing:-1.8px}.portrait-wrap{width:270px;height:270px;margin:20px auto}.bio-lead{font-size:25px;letter-spacing:-1px}.bio-copy{font-size:16px;line-height:1.4}.info-details{margin:35px auto 60px;font-size:12px;gap:25px}.inspiration h2,.little-things h2{font-size:30px}.inspiration>p,.little-things p{font-size:13px}.albums{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px 12px;margin-top:30px}.album strong{font-size:11px;margin-top:10px}.album>span{font-size:10px}.little-things{padding:70px 0 35px}footer{padding:30px 0 calc(28px + env(safe-area-inset-bottom));margin:20px 20px 0;grid-template-columns:1fr 1fr;row-gap:25px;font-size:11px}footer>span{text-align:left;font-size:10px;grid-column:1;grid-row:2}.footer-mark{grid-column:2;grid-row:1/3;font-size:40px}dialog{width:calc(100% - 20px);max-height:94dvh;border-radius:12px}.project-dialog-content{padding:55px 20px 25px}.project-dialog-content h2{font-size:38px;letter-spacing:-1.5px}.project-dialog-description{font-size:19px;line-height:1.3}.project-dialog-context{font-size:14px}.project-dialog-images{gap:10px;margin-top:25px}.project-dialog-end{font-size:11px;align-items:center;gap:15px}.record-panel{width:calc(100% - 30px);right:15px;bottom:95px}.record-panel #record-covers a{flex:0 0 61px}.record-panel img{width:61px;height:61px}.loading>p{font-size:10px}}@media(max-width:360px){.scene-container{height:265px}.intro h1{font-size:30px;letter-spacing:-1.2px}.scene-footer{bottom:12px}.scene-controls>button{width:24px;height:24px}.activity{bottom:-8px}.project-caption>span{display:none}.info-view h1{font-size:30px;letter-spacing:-1.4px}.portrait-wrap{height:240px;width:240px}}@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}.selection{max-width:1160px;padding-top:30px;padding-bottom:70px}.selection h2{font-size:clamp(36px,4.4vw,56px);text-align:center;line-height:1.05;letter-spacing:-2px;font-weight:600;margin-top:48px}.selection h2 em{font-family:var(--font-serif);font-style:normal;font-weight:400}.selection-hint{text-align:center;font-size:14px;color:var(--muted);margin-top:15px}#projects{max-width:1000px;margin:35px auto 0}.project-list{border-top:1px solid var(--line)}.project-list-row{display:grid;grid-template-columns:24px 70px minmax(150px,1fr) minmax(120px,.75fr) 62px 8px;align-items:center;gap:22px;width:100%;min-height:105px;padding:15px 10px 15px 0;border-bottom:1px solid var(--line);background:transparent;text-align:left;transition:background .18s}.project-list-number{font-size:10px;color:var(--muted);font-variant-numeric:tabular-nums}.project-list-cover{display:block;width:70px;height:64px;overflow:hidden;border-radius:8px;background:#dce2e8;isolation:isolate;transition:transform .24s cubic-bezier(.2,.8,.25,1),box-shadow .24s}.project-list-cover>.folio-image{height:100%;width:100%;object-fit:cover}.project-list-title{font-size:21px;line-height:1.2;letter-spacing:-.6px;font-weight:500}.project-list-category,.project-list-year{font-size:11px;line-height:1.45;color:var(--muted)}.project-list-year{text-align:right;font-variant-numeric:tabular-nums}.project-list-row>.link-dot{width:5px;height:5px;justify-self:end;opacity:.35;transition:opacity .18s,transform .18s}.project-list-cover>.folio-brand{padding:9px;gap:0}.project-list-cover>.folio-brand img{width:100%}.project-list-cover>.folio-brand>span{display:none}.folio-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;min-height:48px;margin-bottom:16px;color:var(--muted)}.folio-count{position:relative;isolation:isolate;display:grid;place-items:center;width:44px;height:44px;flex:none;color:var(--ink);font-size:17px;font-weight:650;font-variant-numeric:tabular-nums;transform:rotate(-7deg)}.folio-count:before,.folio-count:after{content:"";position:absolute;inset:2px;border-radius:50%;z-index:-1}.folio-count:before{background:#cbd4b9;transform:translate(3px,2px);border:1px solid #a9b894}.folio-count:after{background:#e4ebd9;border:1px solid #b8c4a4;box-shadow:inset 0 1px #ffffffc0;transform:translate(-2px,-1px)}.folio-count>span{transform:rotate(7deg)}.folio-tools{display:flex;align-items:center;gap:16px}.folio-modes{display:flex;gap:2px;padding:3px;background:#a6b0bc15;border:1px solid #aab6c12b;border-radius:28px}.folio-modes button{display:flex;align-items:center;gap:8px;min-height:40px;padding:9px 15px;background:transparent;border-radius:24px;font-size:12px;color:var(--muted);transition:background .16s,color .16s,box-shadow .16s}.folio-modes button[aria-pressed=true]{background:#fcfdfe;color:var(--ink);box-shadow:0 1px 3px #23344310,inset 0 0 0 1px #ffffff90}.mode-list-icon{width:11px;height:9px;background:repeating-linear-gradient(to bottom,currentColor 0 1px,transparent 1px 4px);opacity:.7}.mode-cards-icon{position:relative;width:10px;height:12px;border:1px solid currentColor;border-radius:2px;transform:rotate(8deg)}.mode-cards-icon:before{content:"";position:absolute;inset:0;border:1px solid currentColor;border-radius:2px;transform:translate(-4px,-2px) rotate(-16deg)}.folio-random{display:flex;align-items:center;gap:6px;min-height:44px;padding:8px;background:transparent;font-size:11px;color:var(--muted)}.folio-random>span{font-size:20px}.folio-brand{height:100%;width:100%;background:#0212ee;display:flex;align-items:center;justify-content:center;padding:10px}.folio-brand img{width:100%;filter:brightness(0) invert(1)}.folio-image{height:100%;width:100%;object-fit:cover;pointer-events:none}.folio-carousel{overflow:visible}.folio-stage{--folio-width:340px;position:relative;isolation:isolate;width:100vw;left:50%;transform:translate(-50%);height:calc(var(--folio-width)*1.43 + 40px);overflow:clip;touch-action:pan-y pinch-zoom;user-select:none;-webkit-user-select:none;cursor:grab;margin:12px 0 0}.folio{position:absolute;top:50%;left:50%;width:var(--folio-width);height:calc(var(--folio-width)/var(--card-ratio,.8));padding:0;overflow:hidden;isolation:isolate;background:#d6d7d3;border-radius:18px;box-shadow:0 2px 2px #1a242215,inset 0 0 0 1px #ffffff80;text-align:left;transform-origin:center;will-change:transform;cursor:grab;-webkit-user-drag:none;touch-action:pan-y pinch-zoom}.folio-card-media{display:block;width:100%;height:100%;overflow:hidden;background:var(--card-paper,#d9d8d4)}.folio-card-media img{object-fit:cover}.folio-theme{position:absolute;right:18px;top:0;width:44px;height:56px;display:grid;place-items:center;background:#f7f5ee;color:#20231f;border-radius:0 0 3px 3px;box-shadow:0 1px 1px #0000000a;pointer-events:none}.folio-theme svg{width:27px;height:27px}.folio-card-label{position:absolute;inset:45% 0 0;display:flex;justify-content:flex-end;flex-direction:column;gap:6px;padding:24px;color:#fff;background:linear-gradient(transparent,#0000009c);opacity:0;transition:opacity .18s;pointer-events:none}.folio-card-label strong{font-size:22px;font-weight:550;line-height:1.15;letter-spacing:-.6px;transform:translateY(5px);transition:transform .18s}.folio-card-label small{font-size:11px;line-height:1.4;opacity:.85}.folio:focus-visible{outline:2px solid var(--ink);outline-offset:5px}.folio:focus-visible .folio-card-label{opacity:1}.folio:focus-visible .folio-card-label strong{transform:none}.folio-dragging .folio,.folio-instant .folio{transition:none}.folio-dragging .folio-stage,.folio-dragging .folio{cursor:grabbing}#projects .folio-navigation{display:flex;align-items:center;justify-content:center;gap:22px;margin:0}#projects .folio-navigation>button{display:flex;align-items:center;justify-content:center;gap:8px;width:auto;min-width:90px;min-height:44px;padding:8px 10px;border-radius:8px;background:transparent;border:0;color:var(--muted);font-size:12px;transition:color .15s,transform .15s}#projects .folio-navigation>button[aria-disabled=true]{opacity:.3;cursor:default}.folio-position{min-width:55px;text-align:center;font-size:11px;font-variant-numeric:tabular-nums;letter-spacing:.06em;color:var(--muted)}.folio-announcement{position:absolute;width:1px;height:1px;clip-path:inset(50%);overflow:hidden;white-space:nowrap}.night .folio-modes button[aria-pressed=true]{background:#424b59;color:var(--ink)}.night .folio-count{color:#263125}@media(hover:hover)and (pointer:fine){.folio:not(.folio-dragging .folio):hover .folio-card-label{opacity:1}.folio:hover .folio-card-label strong{transform:none}.folio-modes button:hover,.folio-random:hover{color:var(--ink)}#projects .folio-navigation>button:not([aria-disabled=true]):hover{color:var(--ink)}.project-list-row:hover .project-list-cover{transform:rotate(-3deg) scale(1.05)}.project-list-row:hover{background:#ffffff25}}@media(hover:none),(pointer:coarse){.folio.is-selected .folio-card-label{opacity:1}.folio.is-selected .folio-card-label strong{transform:none}}@media(max-width:700px){.project-list-row{grid-template-columns:18px 58px minmax(0,1fr) 58px 6px;gap:15px;min-height:89px;padding:12px 3px 12px 0}.project-list-cover{width:58px;height:56px;grid-column:2;grid-row:1/3}.project-list-number{grid-row:1/3}.project-list-title{grid-column:3;grid-row:1;font-size:18px;align-self:end}.project-list-category{grid-column:3;grid-row:2;font-size:10px;align-self:start}.project-list-year{grid-column:4;grid-row:1/3;font-size:10px}.project-list-row>.link-dot{grid-column:5;grid-row:1/3}.project-list-row{row-gap:5px}}@media(max-width:600px){.selection{padding-top:20px}.selection h2{font-size:36px;letter-spacing:-1.5px}.selection-hint{font-size:12px}.folio-tools{gap:4px}.folio-random{font-size:0;width:44px;justify-content:center}.folio-modes button{min-height:40px;font-size:11px;padding:9px 12px}.folio-count{width:40px;height:40px;font-size:16px}.folio-toolbar{margin-bottom:8px}.folio{border-radius:16px}.folio-theme{right:14px;width:37px;height:48px}.folio-theme svg{width:24px;height:24px}.folio-card-label{padding:18px}.folio-card-label strong{font-size:20px}.folio-card-label small{font-size:10px}.folio.is-selected .folio-card-label{opacity:1}.folio.is-selected .folio-card-label strong{transform:none}#projects .folio-navigation{gap:10px;margin-top:8px}#projects .folio-dots>button{width:19px}.selection{padding-bottom:70px}}#projects .folio-navigation>button:active,.folio-modes button:active{transform:scale(.97)}.project-list-row:focus-visible{position:relative;z-index:1;outline-offset:3px;border-radius:4px}.project-list-row:focus-visible>.link-dot{opacity:1}@media(max-width:360px){.selection h2{font-size:31px}#projects .folio-navigation{gap:6px}#projects .folio-dots>button{width:17px}.project-list-row{grid-template-columns:13px 48px minmax(0,1fr) 43px 5px;column-gap:10px}.project-list-cover{width:48px;height:52px}.project-list-title{font-size:16px}.project-list-category,.project-list-year,.project-list-number{font-size:9px}}@media(prefers-reduced-motion:reduce){.folio,.folio-card-label,.folio-card-label strong,.folio-card-media img,.project-list-cover{transition:none!important}.folio:hover .folio-card-media img{transform:none}}:root{--spring:cubic-bezier(.2,.85,.2,1);--soft:cubic-bezier(.22,.7,.25,1);--accent:#77835c}.navigation{view-transition-name:navigation;padding:5px;gap:2px;border-radius:22px;top:24px;background:#d8dde398;box-shadow:inset 0 1px 1px #ffffffb8,0 4px 14px #1a25320a}.navigation>a{display:flex;align-items:center;gap:7px;border-radius:16px;padding:13px 19px;transition:background .18s,box-shadow .18s,transform .18s var(--spring)}.nav-dot{display:block;flex:0 0 auto;width:5px;height:5px;border-radius:50%;background:currentColor;opacity:.25;transition:opacity .18s,transform .22s var(--spring)}.navigation>a.current .nav-dot{opacity:1;transform:scale(1.1)}.language-switch{position:fixed;top:32px;right:max(25px,env(safe-area-inset-right));z-index:30;display:flex;align-items:center;gap:4px;font-size:10px;background:#e9edf3b8;border:1px solid #ffffff77;border-radius:18px;padding:3px 6px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);view-transition-name:language}.language-switch>a{background:transparent;border-radius:12px;padding:7px 5px;font-size:10px;opacity:.45;transition:opacity .15s,transform .15s}.language-switch>a[aria-current=true]{opacity:1;font-weight:700}.language-switch>span{opacity:.3}.language-switch>a:active{transform:scale(.9)}.night .language-switch{background:#343c49c9;border-color:#ffffff18}::view-transition-old(root){animation:page-out .13s ease-out both}::view-transition-new(root){animation:page-in .24s var(--soft) both}::view-transition-group(navigation),::view-transition-group(language){animation-duration:0s}@keyframes page-out{to{opacity:0;filter:blur(2px)}}@keyframes page-in{0%{opacity:0;transform:translateY(9px);filter:blur(2px)}to{opacity:1;transform:none;filter:blur(0)}}.intro h1{font-weight:650;letter-spacing:-2.8px}.info-view h1,.selection h2{font-weight:550}.intro .project-invitation{font-size:12px;border:1px solid #ffffff70;background:#ffffff25;padding:12px 16px;border-radius:18px}.dot-link{display:inline-flex;align-items:center;justify-content:center;gap:10px}.link-dot{display:inline-block;flex:0 0 auto;width:5px;height:5px;border-radius:50%;background:currentColor;transition:transform .22s var(--spring),background .22s;vertical-align:middle;position:relative}.link-dot:before{content:"";position:absolute;inset:-5px;border:1px solid currentColor;border-radius:50%;opacity:0;transform:scale(.5);transition:opacity .18s,transform .22s var(--spring)}.dot-link:active .link-dot,.project-invitation:active .link-dot{transform:scale(.75)}.scene-controls{gap:5px;padding:5px;border:1px solid #ffffff65;background:#fff3;border-radius:14px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.scene-controls>button{border-radius:9px;width:30px;height:30px;transition:background .15s,transform .18s var(--spring),color .15s}.scene-controls>button:active{transform:scale(.86)}.scene-footer{bottom:3px}.scene-instruction{font-size:10px;letter-spacing:0;max-width:310px;line-height:1.5}.activity{font-size:10px;bottom:-23px;opacity:.85}.action-menu{max-height:360px;overflow:auto;bottom:52px;min-width:235px;border-color:#fff9;background:var(--glass);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);transform-origin:90% 100%;box-shadow:0 12px 35px #27314018}.action-menu>p{font-size:10px;color:var(--muted);padding:12px 12px 8px}.action-menu button{position:relative;padding:10px 14px 10px 27px;transition:background .15s,transform .15s}.action-menu button:before{content:"";width:4px;height:4px;border-radius:50%;background:currentColor;position:absolute;left:12px;top:50%;opacity:.4}.action-menu button:active{transform:scale(.98)}@starting-style{.action-menu:not([hidden]){opacity:0;transform:translateY(7px) scale(.96)}}.action-menu{transition:opacity .16s,transform .22s var(--spring)}.thought{display:flex;align-items:center;gap:9px;max-width:225px;min-width:120px;padding:13px 17px;border:1px solid #cbd1c099;border-radius:18px 21px 19px 7px;background:#fffef6f5;color:#414638;box-shadow:0 5px 14px #414a3520,inset 0 1px #fff;opacity:0;transform:translate(-50%,-100%) translateY(8px) scale(.93);transform-origin:50% 100%;transition:transform .28s var(--spring),opacity .17s;z-index:3}.thought:after{content:"";position:absolute;left:30%;bottom:-7px;width:12px;height:12px;background:#fffef6;clip-path:polygon(0 0,100% 0,0 100%);border-left:1px solid #cbd1c099;transform:rotate(-10deg)}.thought.show{opacity:1;transform:translate(-50%,-100%) translateY(0) scale(1)}#thought-text{font-size:12px;line-height:1.3;letter-spacing:-.15px;text-align:left}.thought[data-mood=surprised]{transform:translate(-50%,-100%) rotate(-3deg)}.thought[data-mood=excited]{background:#eaf1d8;border-radius:13px 20px 11px 22px}.thought[data-mood=excited]:after{background:#eaf1d8}.scene-tooltip{background:#fdfef7f0;border-radius:20px;border-color:#ccd1c079;color:#3d4738;transform:translate(10px,-95%) scale(.95);transition:opacity .13s,transform .16s var(--spring);box-shadow:0 4px 12px #29372f12}.scene-tooltip.visible{transform:translate(10px,-110%) scale(1)}.project-dialog-heading{padding-bottom:6px}.project-eyebrow{display:block;color:var(--muted);font-size:11px;letter-spacing:.05px;margin-bottom:18px}.project-eyebrow b{padding:0 8px;font-weight:400}.project-dialog-content h2{font-weight:600}.close-dialog{transition:transform .18s,background .18s}.close-dialog:active{transform:scale(.9)}.project-dialog-end button{font-size:12px}.project-dialog-images figure{overflow:hidden}.project-dialog-images img{transition:transform .4s var(--soft)}.folio-paper{transform:perspective(700px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg));transition:transform .24s var(--soft)}.folio-dragging .folio-paper{transform:none;transition:none}.folio-sticker>.link-dot{width:5px;height:5px}.folio-navigation>button{width:auto;min-width:72px;height:36px;font-size:11px;border-radius:20px;padding:0 14px}.folio-navigation{gap:24px}.folio-dots{display:flex;align-items:center;justify-content:center;gap:1px;margin:16px auto 0}.folio-dots>button{display:grid;place-items:center;width:22px;height:24px;padding:0;background:transparent}.folio-dots>button>span{display:block;width:4px;height:4px;border-radius:50%;background:var(--ink);opacity:.18;transition:opacity .16s,transform .18s var(--spring)}.folio-dots>button[aria-current=true]>span{opacity:.85;transform:scale(1.55)}.folio-open{margin-top:15px}.folio-open>.link-dot{width:5px;height:5px}.overview-label>.link-dot{margin-right:4px}.overview-label{padding-right:3px}.folio-instant .folio-paper{transition:none}.personal-links>a{display:flex;gap:9px;padding:12px 15px;background:#ffffff35;border:1px solid #ffffff60;border-radius:14px;font-size:11px;transition:background .17s,transform .2s var(--spring)}.room-icon{font-size:20px;line-height:1}.info-contact>a{gap:12px}.info-project-icon>span{transition:transform .25s var(--spring),box-shadow .25s}.bio-lead{font-weight:450}.is-vinyl footer{display:none}.is-vinyl{min-height:100dvh}.night .scene-controls,.night .personal-links>a{border-color:#ffffff10;background:#6c7b8e14}.night .action-menu{border-color:#ffffff18}@media(hover:hover)and (pointer:fine){.dot-link:hover .link-dot,.project-invitation:hover .link-dot,.folio-open:hover .link-dot,.overview-project:hover .link-dot,.folio.is-selected:hover .link-dot{transform:scale(1.1)}.dot-link:hover .link-dot:before,.project-invitation:hover .link-dot:before,.folio-open:hover .link-dot:before,.overview-project:hover .link-dot:before,.folio.is-selected:hover .link-dot:before{opacity:.45;transform:scale(1)}.navigation>a:hover .nav-dot{opacity:.7;transform:scale(1.2)}.scene-controls>button:hover{transform:translateY(-2px)}.action-menu button:hover:before{opacity:1}.close-dialog:hover{transform:rotate(9deg)}.personal-links>a:hover{transform:translateY(-3px);background:#ffffff80}.info-project-icon:hover>span{box-shadow:0 10px 15px #162c4320;transform:translateY(-5px) rotate(-5deg) scale(1.03)}.folio-dots>button:hover>span{opacity:.6;transform:scale(1.4)}.project-dialog-images figure:hover img{transform:scale(1.012)}}@media(max-width:600px){.navigation{top:auto;bottom:max(20px,env(safe-area-inset-bottom));padding:4px;border-radius:21px}.navigation>a{padding:13px 16px;font-size:12px;gap:6px}.language-switch{top:15px;right:14px;padding:2px 5px;background:#e9edf3b8}.language-switch>a{font-size:9px;padding:6px 4px}.intro{padding-top:45px}.intro h1{letter-spacing:-1.4px;font-weight:600}.scene-controls{gap:5px;padding:4px;border-radius:12px}.scene-controls>button{height:26px;width:26px}.scene-footer{bottom:10px;gap:7px}.scene-instruction{font-size:9px;max-width:none}.activity{bottom:-14px;font-size:9px}.action-menu{max-height:265px;bottom:70px;min-width:220px}.action-menu button{padding-top:9px;padding-bottom:9px;font-size:11px}.action-menu>p{font-size:9px;padding-top:8px}.scene-container .thought{padding:10px 12px;max-width:190px;gap:7px}.thought #thought-text{font-size:10px}.thought:after{width:10px;height:10px;bottom:-6px}.folio-navigation{gap:7px}.folio-navigation>button{min-width:56px;padding:0 9px;font-size:9px;height:33px}.folio-caption{min-width:160px}.folio-caption h3{font-size:23px}.folio-caption p{font-size:9px}.folio-dots{margin-top:14px}.folio-dots>button{width:20px}.folio-open{margin-top:12px}.personal-links>a{font-size:10px;padding:11px 10px;gap:7px}.personal-links{gap:7px}.personal-links .link-dot{width:4px;height:4px}.info-view{padding-top:65px}.info-view h1{font-weight:550}.project-dialog-content h2{font-size:35px}.project-dialog-end{align-items:flex-start}.project-dialog-end>.dot-link{line-height:1.4}.project-dialog-end button{font-size:10px;white-space:nowrap}.project-eyebrow{font-size:10px}.project-dialog-description{font-size:18px}}@media(max-width:360px){.navigation>a{padding:13px}.folio-caption{min-width:148px}.folio-navigation>button{min-width:50px;font-size:8px}.personal-links>a{font-size:9px;padding:10px 8px}.personal-links .vinyl-icon{width:20px;height:20px;border-width:6px}.scene-instruction{font-size:8px}}@media(prefers-reduced-motion:reduce){::view-transition-old(root),::view-transition-new(root){animation:none!important}.thought,.thought.show,.thought[data-mood=surprised]{transform:translate(-50%,-100%)}.folio-paper{transform:none}.scene-controls>button:hover,.personal-links>a:hover{transform:none}}.portrait-wrap canvas{image-rendering:auto}.thought[data-mood=surprise]{border-radius:13px 20px 11px 22px;background:#eef3df}.thought[data-mood=proud]{border-color:#b4c790}.scene-container canvas{image-rendering:auto}@media(max-width:360px){.intro h1{font-size:29px;line-height:1.04;text-wrap:balance;padding:0 16px}.intro h1 br{display:none}}.intro-phrase{white-space:nowrap}.intro-word{display:inline;padding:0;border:0;border-radius:3px;background:none;font:inherit;letter-spacing:inherit;line-height:inherit;text-decoration-line:underline;text-decoration-color:color-mix(in srgb,var(--ink) 22%,transparent);text-decoration-thickness:1px;text-underline-offset:.1em;transition:color .17s,text-decoration-color .17s,opacity .17s;cursor:pointer}.intro-word[aria-expanded=true]{position:relative;z-index:42;text-decoration-color:currentColor;color:var(--ink)}.word-preview-highlight{position:fixed;z-index:42;display:flex;align-items:center;justify-content:center;background:#191c1b;color:#fff;border-radius:5px;pointer-events:none;text-decoration:none;white-space:nowrap}.intro h1 .intro-copy{transition:opacity .17s}.word-preview-veil{position:fixed;inset:0;z-index:40;background:#f8faff9c;backdrop-filter:blur(2px) saturate(.72);-webkit-backdrop-filter:blur(2px) saturate(.72);pointer-events:none;animation:preview-focus-in .16s ease-out}.night .word-preview-veil{background:#252a35a3}.word-preview{position:fixed;z-index:44;width:min(354px,calc(100vw - 28px));padding:8px;background:#f8fafcfa;border:1px solid #ffffffd9;border-radius:30px;box-shadow:0 12px 50px #182c4630,0 2px 6px #182c4612;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);animation:preview-reveal .18s cubic-bezier(.2,.8,.2,1);pointer-events:auto;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin}.word-preview.is-pinned{pointer-events:auto}.word-preview-open{display:block;width:100%;padding:0;background:none;text-align:left;border-radius:22px;overflow:hidden}.word-preview-media{display:block;width:100%;aspect-ratio:1.36;background:#e1e7ea;border-radius:22px;overflow:hidden}.word-preview-media img{width:100%;height:100%;object-fit:cover;transition:transform .23s cubic-bezier(.2,.8,.2,1)}.word-preview-caption{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:14px 10px 8px;font-size:12px;color:#242824}.word-preview-caption strong{display:block;font-size:14px;font-weight:550;letter-spacing:-.2px}.word-preview-caption small{display:block;font-size:10px;color:#757b80;margin-top:4px}.word-preview-close{position:absolute;right:18px;top:18px;z-index:2;display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#ffffffcf;box-shadow:0 1px 5px #10253a12;color:#3e454b;font-size:19px;line-height:1}@keyframes preview-reveal{0%{opacity:0;transform:translateY(5px) scale(.96)}to{opacity:1;transform:none}}@keyframes preview-focus-in{0%{opacity:0}to{opacity:1}}@media(hover:hover)and (pointer:fine){.intro-word:hover{text-decoration-color:currentColor}.word-preview-open:hover img{transform:scale(1.025)}.word-preview-close:hover{background:#fff}}#project-dialog{--bg:#fff;--ink:#191c1b;--muted:#747773;--line:#e7e8e5;--glass:#f4f5f2;position:fixed;inset:0;width:100%;height:100dvh;max-width:none;max-height:none;margin:0;border:0;border-radius:0;background:#fff;color:var(--ink);color-scheme:light;padding:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;box-shadow:none}#project-dialog::backdrop{background:#fff;-webkit-backdrop-filter:none;backdrop-filter:none}#project-dialog .close-dialog{position:fixed;top:23px;right:26px;left:auto;z-index:5;margin:0;width:40px;height:40px;background:#fffffff0;border:1px solid #e7e8e5;box-shadow:0 2px 10px #141b1c05;font-size:25px}#project-dialog .project-dialog-content{padding:60px 0 max(90px,env(safe-area-inset-bottom))}.case-top{min-height:0;padding:0;margin:0 0 34px;display:flex;align-items:center;gap:10px;font-size:12px;color:var(--muted)}.case-top span:last-child{color:var(--ink)}.case-top b{font-weight:400;opacity:.45}.case-gallery{width:100%;min-height:360px;position:relative}.case-gallery-fallback{display:flex;gap:20px;padding:0 16%;overflow:auto;scroll-snap-type:x mandatory}.case-gallery-fallback img{width:70%;height:clamp(300px,26vw,540px);object-fit:contain;flex:none;background:#f5f5f2;border-radius:20px;scroll-snap-align:center}.case-body{width:min(540px,100%);padding:45px 35px 0;margin:auto}.case-body .project-eyebrow{font-size:11px;color:var(--muted)}.case-body h2{font-size:42px;font-weight:550;letter-spacing:-1.6px;margin-top:15px}.case-body .project-dialog-description{font-size:22px;line-height:1.35;letter-spacing:-.5px;margin-top:25px}.case-body .project-dialog-context{font-size:14px;line-height:1.7;margin-top:16px;max-width:610px}.case-body .project-dialog-meta{font-size:11px;line-height:1.6;max-width:600px;margin-top:22px}.case-body .project-dialog-end{margin-top:40px;padding-top:24px;border-top:1px solid var(--line);align-items:center;gap:20px}.brand-home{position:absolute;left:30px;top:30px;z-index:21;display:block;width:36px;transition:opacity .15s}.brand-home img{width:100%;height:auto;display:block}.brand-home:active{opacity:.6}.footer-mark{display:block;width:44px;transform:none;letter-spacing:0}.footer-mark img{width:100%;height:auto}.night .brand-home img,.night .footer-mark img{filter:invert(1)}@media(max-width:600px){.brand-home{left:18px;top:19px;width:28px}#project-dialog{width:100%;height:100dvh;max-height:none;border-radius:0}#project-dialog .close-dialog{right:17px;left:auto;top:17px;width:36px;height:36px}#project-dialog .project-dialog-content{padding-top:74px}.case-top{min-height:0;padding:0;margin-bottom:28px;font-size:11px}.case-gallery{min-height:330px}.case-gallery-fallback{gap:14px;padding-inline:10%}.case-gallery-fallback img{height:clamp(270px,80vw,420px);width:85%}.case-body{padding:37px 24px 0}.case-body h2{font-size:34px}.case-body .project-dialog-description{font-size:20px}.case-body .project-dialog-context{font-size:13px}.case-body .project-dialog-end{flex-wrap:wrap;gap:16px;margin-top:28px}.word-preview{width:min(310px,calc(100vw - 28px));border-radius:25px}.word-preview-media{border-radius:18px}.word-preview-caption{padding:11px 9px 7px}.footer-mark{width:38px}}@media(prefers-reduced-motion:reduce){.word-preview,.word-preview-veil{animation:none}.intro-word,.intro h1 .intro-copy,.word-preview-media img{transition:none}}.intro h1{line-height:1.04}.intro-name{display:block;letter-spacing:-.045em}.intro-statement{display:block;max-width:790px;margin:13px auto 0;font-size:.72em;font-weight:550;line-height:1.08;letter-spacing:-.035em;text-wrap:balance}.scroll-cue{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;width:max-content;min-width:88px;min-height:70px;margin:28px auto 0;padding:10px 20px;color:var(--muted);font-size:11px;letter-spacing:.03em;border-radius:12px;transition:color .18s}.scroll-cue-trail{display:flex;flex-direction:column;align-items:center;gap:5px;transition:transform .2s cubic-bezier(.23,1,.32,1)}.scroll-cue-trail i{display:block;width:4px;height:4px;border-radius:50%;background:currentColor;opacity:.4;animation:scroll-cue-flow 2.4s cubic-bezier(.45,0,.2,1) infinite}.scroll-cue-trail i:nth-child(2){animation-delay:.14s}.scroll-cue-trail i:nth-child(3){animation-delay:.28s}.animations-paused .scroll-cue-trail i{animation-play-state:paused}.scroll-cue:focus-visible{color:var(--ink)}.scroll-cue:active .scroll-cue-trail{transform:translateY(4px)}@keyframes scroll-cue-flow{0%,55%,to{opacity:.4;transform:translateY(0)}25%{opacity:1;transform:translateY(3px)}}@media(hover:hover)and (pointer:fine){.scroll-cue:hover{color:var(--ink)}.scroll-cue:hover .scroll-cue-trail{transform:translateY(3px)}}@media(prefers-reduced-motion:reduce){.scroll-cue-trail i{animation:none;opacity:.55}.scroll-cue-trail{transition:none}.scroll-cue:hover .scroll-cue-trail,.scroll-cue:active .scroll-cue-trail{transform:none}}.scene-container .thought{--bubble-paper:#fffef2;--bubble-ink:#303832;--bubble-tilt:1deg;gap:10px;max-width:242px;min-width:120px;padding:14px 18px;border:2px solid var(--bubble-ink);border-radius:44% 48% 42% 20%/34% 40% 34% 44%;background:var(--bubble-paper);color:var(--bubble-ink);box-shadow:3px 4px 0 var(--bubble-ink);transform:translate(-50%,-100%) translateY(8px) rotate(var(--bubble-tilt)) scale(.93);transition:transform .24s cubic-bezier(.2,.8,.2,1),opacity .14s;pointer-events:none;isolation:isolate}.scene-container .thought.show{transform:translate(-50%,-100%) rotate(var(--bubble-tilt)) scale(1)}.scene-container .thought:after{left:37%;bottom:-12px;width:17px;height:17px;background:var(--bubble-paper);border:0;border-left:2px solid var(--bubble-ink);border-bottom:2px solid var(--bubble-ink);clip-path:none;transform:rotate(-35deg) skew(-15deg,-15deg);border-radius:0 0 0 4px;box-shadow:-1px 2px 0 var(--bubble-ink);z-index:-1}.scene-container #thought-text{font-size:13px;line-height:1.2;font-weight:700;letter-spacing:-.25px;text-align:left}.scene-container .thought[data-kind=need]{display:grid;grid-template-columns:minmax(0,1fr);row-gap:8px;max-width:260px;border-radius:23px 27px 23px 9px;z-index:15}.thought-choice{grid-column:1;justify-self:start;pointer-events:auto;min-height:30px;padding:6px 11px;border:1px solid currentColor;border-radius:20px;background:var(--bubble-ink);color:var(--bubble-paper);font-size:10px;font-weight:650;line-height:1.2;text-align:left;transition:transform .16s,background .16s}.thought-choice:hover{transform:translateY(-1px)}.thought-choice:active{transform:scale(.97)}.thought-choice:focus-visible{outline:2px solid var(--bubble-ink);outline-offset:3px}.scene-container .thought[data-mood=surprise]{--bubble-paper:#ffe87e;border-radius:26% 46% 30% 38%/38% 32% 46% 30%}.scene-container .thought[data-mood=dizzy]{--bubble-paper:#ffd5ce;border-radius:43% 28% 45% 32%/35% 48% 33% 47%}.scene-container .thought[data-mood=proud]{--bubble-paper:#e4efb1;border-color:var(--bubble-ink)}.scene-container .thought[data-mood=calm]{--bubble-paper:#e8edff;border-radius:48% 44% 44% 20%/40% 43% 39% 45%}.scene-touch-hint{display:none}@media(max-width:600px),(pointer:coarse)and (max-width:900px)and (max-height:600px){.intro-statement{font-size:.82em;max-width:355px;margin-top:11px;padding:0 4px;line-height:1.12}.scene-container .thought{min-width:100px;max-width:195px;padding:11px 14px;gap:7px;box-shadow:2px 3px 0 var(--bubble-ink)}.scene-container #thought-text{font-size:12px;line-height:1.3}.scene-container .thought:after{width:14px;height:14px;bottom:-10px}.scene-container .thought[data-kind=need]{max-width:220px}.thought-choice{min-height:44px;font-size:11px;padding:10px 13px;touch-action:manipulation}.scene-touch-hint{display:block;position:absolute;bottom:4px;left:14px;right:14px;color:var(--muted);font-size:11px;line-height:1.4;text-align:center;pointer-events:none}.scene-container .scene-controls{gap:4px;padding:5px;border-radius:18px;background:var(--glass);border:1px solid var(--line)}.scene-container .scene-controls>button{width:44px;height:44px;border-radius:12px;font-size:20px;touch-action:manipulation}.scene-container .scene-controls>button:active{transform:scale(.94)}.scene-container .scene-controls #explore{font-size:20px}.scene-container .scene-controls #sound svg{width:19px;height:19px}.scene-container .action-menu{position:fixed;inset:auto 12px calc(204px + var(--room-bottom-inset,0px));width:auto;min-width:0;max-height:min(54svh,calc(100svh - 264px - var(--room-bottom-inset,0px)));padding:8px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:3px;border-radius:20px;overflow-x:hidden;overscroll-behavior:contain;touch-action:pan-y;scrollbar-width:thin;scroll-padding-block:8px;transform-origin:50% 100%;background:var(--bg);border-color:var(--line);box-shadow:0 12px 34px #17233124}.scene-container .action-menu>p{grid-column:1/-1;margin:0;padding:10px 12px 12px;font-size:11px;line-height:1.35}.scene-container .action-menu button{min-height:44px;padding:10px 10px 10px 23px;font-size:12px;line-height:1.35;touch-action:manipulation;overflow-wrap:break-word}.scene-container .action-menu button:before{left:10px}}@media(max-width:359px){.scene-container .action-menu{grid-template-columns:minmax(0,1fr)}}@media(pointer:coarse)and (orientation:landscape)and (max-width:900px)and (max-height:600px){.scene-container .action-menu{inset:auto 14px calc(140px + var(--room-bottom-inset,0px));max-height:calc(100svh - 220px - var(--room-bottom-inset,0px))}}@media(pointer:coarse)and (orientation:landscape)and (min-width:601px)and (max-width:900px)and (max-height:600px){.scene-container .action-menu{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(prefers-reduced-motion:reduce){.scene-container .thought,.scene-container .thought.show{transform:translate(-50%,-100%);transition:opacity .12s}}.intro{max-width:none;padding:0;text-align:center;overflow:clip}.room-floor{height:100svh;position:relative}.room-stage{position:sticky;top:0;height:100svh;min-height:560px;display:flex;align-items:center;justify-content:center}.room-stage .scene-container{width:min(1680px,100%);max-width:1680px;height:calc(100svh - 160px);min-height:410px;max-height:720px;margin:35px auto 65px}.room-stage .scene-footer{bottom:0;left:35px;right:35px;justify-content:flex-end}@media(min-width:1221px){.room-stage .action-menu{right:calc((100% - 1220px)/2 + 61px)}}.room-stage .scene-instruction{font-size:10px}.room-stage .activity{position:absolute;bottom:-25px;left:35px;right:35px;font-size:10px}.room-stage>.scroll-cue{position:absolute;bottom:15px;left:50%;transform:translate(-50%);margin:0;font-size:10px;min-height:58px;gap:7px}.intro-copy-floor{position:relative;z-index:1;min-height:54svh;padding:72px 35px 64px;display:flex;align-items:center;justify-content:center;scroll-margin-top:0}.intro-copy-floor h1{max-width:1120px;margin:0;font-size:clamp(36px,4.4vw,68px);font-weight:700;line-height:1.08;letter-spacing:-.055em;text-wrap:balance;opacity:.45;transform:translateY(14px);transition:opacity .18s,transform .26s cubic-bezier(.23,1,.32,1)}.intro-copy-floor.is-arrived h1{opacity:1;transform:none}.intro-copy-floor .intro-statement,.intro-copy-floor .intro-name{display:inline;max-width:none;font-size:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;margin:0;padding:0}.selection{margin-top:0;padding-top:0}.selection h2 em,.info-view h1 em,.vx-heading h1 em{font-family:var(--font-serif);font-style:normal;font-optical-sizing:auto;font-weight:400;letter-spacing:-.045em}.portrait-wrap{position:relative}.portrait-tools{position:absolute;bottom:18px;right:6px;display:flex;flex-direction:column;gap:8px;z-index:2}.portrait-tool{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--glass);border:1px solid var(--line);transition:background .15s,transform .15s}.portrait-tool svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.portrait-tool[aria-pressed=true]{background:color-mix(in srgb,var(--muted) 20%,var(--bg))}.portrait-tool:active{transform:scale(.95)}@media(max-width:600px){.room-floor{height:100svh}.room-stage{--room-bottom-inset:max(0px, calc(env(safe-area-inset-bottom) - 20px) );min-height:0}.room-stage .scene-container{position:absolute;inset:64px 0 calc(208px + var(--room-bottom-inset));width:100%;height:auto;min-height:0;max-height:none;margin:0}.room-stage .scene-footer{left:12px;right:12px;bottom:-74px;padding:0;flex-direction:row;justify-content:center}.room-stage .scene-instruction{display:none}.room-stage .activity{left:18px;right:18px;text-align:center;bottom:-24px;font-size:9px}.room-stage>.scroll-cue{bottom:calc(94px + var(--room-bottom-inset));min-height:28px;height:28px;padding:0 16px;flex-direction:row;gap:10px}.room-stage>.scroll-cue .scroll-cue-trail{gap:3px}.room-stage>.scroll-cue .scroll-cue-trail i{width:3px;height:3px}.intro-copy-floor{min-height:50svh;padding:58px 24px 48px}.intro-copy-floor h1{font-size:clamp(30px,7.9vw,46px);line-height:1.12;letter-spacing:-.05em}.intro-copy-floor .intro-statement{font-size:inherit;line-height:inherit;margin:0;padding:0}.scene-container .thought{min-width:160px;width:max-content;max-width:195px}.selection{padding-top:0}.portrait-tools{right:0;bottom:18px}}@media(pointer:coarse)and (orientation:landscape)and (max-width:900px)and (max-height:600px){.room-floor{height:100svh}.room-stage{--room-bottom-inset:max(0px, calc(env(safe-area-inset-bottom) - 10px) );min-height:0}.room-stage .scene-container{position:absolute;inset:40px 0 calc(136px + var(--room-bottom-inset));width:100%;height:auto;min-height:0;max-height:none;margin:0}.room-stage .scene-footer{left:12px;right:12px;bottom:-62px;padding:0;flex-direction:row;justify-content:center}.room-stage .scene-instruction,.room-stage>.scroll-cue{display:none}.navigation{top:auto;bottom:max(10px,env(safe-area-inset-bottom));padding:4px;border-radius:20px}.navigation>a{min-height:44px;padding:12px 16px;font-size:12px}}@media(prefers-reduced-motion:reduce){.intro-copy-floor h1{opacity:1;transform:none;transition:none}.portrait-tool{transition:none}}.animations-paused .intro-copy-floor h1{transition:none}.room-stage .activity{width:1px;height:1px;overflow:hidden;clip-path:inset(50%);padding:0;white-space:nowrap}.scene-touch-target,.scene-pan-arrow{display:none}.scene-container[data-compact=true] canvas{touch-action:pan-y pinch-zoom;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.scene-container[data-compact=true] .scene-pan-arrow{display:grid;place-items:center;position:absolute;top:48%;z-index:4;width:44px;height:44px;padding:0;border:1px solid var(--line);border-radius:22px;background:var(--glass);color:var(--ink);font:24px/1 system-ui;touch-action:manipulation;transition:opacity .15s,transform .15s,background .15s}.scene-pan-left{left:8px}.scene-pan-right{right:8px}.scene-pan-arrow:disabled{opacity:.18;pointer-events:none}.scene-pan-arrow:active{transform:scale(.94)}.scene-touch-target{position:absolute;top:0;left:0;z-index:3;width:52px;height:76px;padding:0;border:0;border-radius:28px;background:transparent;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.scene-touch-target[data-touch-object=ball]{width:44px;height:44px;border-radius:50%}.scene-touch-target:focus-visible{outline:2px solid var(--ink);outline-offset:3px;background:color-mix(in srgb,var(--ink) 8%,transparent)}.scene-touch-target:active{background:color-mix(in srgb,var(--ink) 6%,transparent)}.portrait-wrap canvas{touch-action:pan-y pinch-zoom;-webkit-user-select:none;user-select:none}@media(max-width:600px),(pointer:coarse){.portrait-tool{width:44px;height:44px;touch-action:manipulation}.portrait-hint{opacity:1;transform:none}}@media(max-width:600px){.language-switch>a{display:grid;place-items:center;min-width:44px;min-height:44px;padding:6px;font-size:11px;touch-action:manipulation}.brand-home{display:grid;place-items:center;width:44px;height:44px;left:10px;top:13px;touch-action:manipulation}.brand-home img{width:28px;height:auto}}@media(pointer:coarse){.scene-container[data-compact=true] .scene-touch-target{display:block}}@media(prefers-reduced-motion:reduce){.scene-pan-arrow{transition:none}.scene-pan-arrow:active{transform:none}}.info-view{padding-top:128px}.info-view h1{max-width:680px;font-size:clamp(36px,4vw,46px);line-height:1.1;text-wrap:balance}.portrait-wrap{height:400px;margin:24px auto 44px}.portrait-hint{bottom:-24px;left:44px;right:44px;font-size:11px;line-height:1.5;letter-spacing:0}.bio-lead{max-width:720px;margin-top:36px;font-size:24px;line-height:1.4;letter-spacing:-.65px;text-wrap:pretty}.bio-studio-line{margin-top:14px}.inline-myrak{vertical-align:middle;margin:0 4px 3px}.bio-copy{max-width:590px;margin-top:22px;line-height:1.7;text-wrap:pretty}.info-panels{margin-top:40px;gap:18px}.info-panel h2{line-height:1.4;margin-bottom:22px}.skill-list{line-height:1.85}.info-contact{margin-top:40px}.intro-copy-floor .intro-statement{line-height:inherit}.selection h2{max-width:780px;margin:28px auto 0;line-height:1.12;text-wrap:balance}.selection-hint{line-height:1.5;margin-top:14px}.selection #projects{margin-top:0}.project-list-title,.project-list-category{line-height:1.35}.case-body h2{line-height:1.12;text-wrap:balance}.case-body .project-dialog-description{line-height:1.45;text-wrap:pretty}.case-body .project-dialog-context{line-height:1.8;text-wrap:pretty}.is-vinyl .vinyl-experience{padding-top:128px}.is-vinyl .vx-heading h1{line-height:1.12;text-wrap:balance}.is-vinyl .vx-selection-footer{row-gap:18px}.is-vinyl .vx-selected h2{line-height:1.2}.is-vinyl .vx-selected p{line-height:1.5}.is-vinyl .vx-album-details h1{line-height:1.15;overflow-wrap:anywhere}.is-vinyl .vx-album-details>p{line-height:1.5}.is-vinyl .vx-status{line-height:1.5;text-wrap:balance}@media(max-width:700px)and (min-width:601px){.is-vinyl .vinyl-experience{padding-top:112px}}@media(max-width:600px){.info-view{padding:88px 22px 32px}.info-view h1{font-size:clamp(29px,8.2vw,34px);line-height:1.12;letter-spacing:-1.3px}.portrait-wrap{height:300px;margin:20px auto 40px}.portrait-hint{bottom:-24px;left:30px;right:30px;font-size:10px;line-height:1.45}.bio-lead{font-size:20px;line-height:1.5;letter-spacing:-.5px;margin-top:28px}.bio-studio-line{margin-top:16px}.bio-copy{margin-top:20px;font-size:14px;line-height:1.7}.info-panels{grid-template-columns:1fr;gap:14px;margin-top:32px}.info-panel{padding:24px}.info-panel h2{min-height:0;font-size:14px;margin-bottom:20px}.info-project-icons{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px 12px}.info-project-icon{font-size:10px;line-height:1.4}.info-project-icon>span{width:52px;height:52px}.skill-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 18px;font-size:12px;line-height:1.6}.info-contact{margin-top:28px}.selection h2{margin-top:24px;line-height:1.15}.selection #projects{margin-top:0}.case-body .project-dialog-description{line-height:1.5}.is-vinyl .vinyl-experience{padding-top:88px}}@media(max-width:360px){.info-view{padding-inline:18px}.portrait-wrap{height:270px}.bio-lead{font-size:19px}.info-panel{padding:22px 18px}.skill-list{gap:8px 12px}.is-vinyl .vinyl-experience{padding-top:88px}}.scene-container .thought,.scene-container .thought[data-kind=need]{--bubble-paper:#f4edd4;--bubble-ink:#443d33;--bubble-key:#e6dab0;left:0;top:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;width:max-content;min-width:132px;max-width:min(272px,calc(100% - 28px));min-height:80px;padding:22px 26px;border:0;border-radius:0;background:none;color:var(--bubble-ink);box-shadow:none;isolation:isolate;z-index:15;filter:drop-shadow(0 3px 0 #1d1a1424);transform:translate(-50%,-100%) translateY(5px) scale(.96);transition:opacity .14s,transform .18s cubic-bezier(.2,.8,.2,1)}.scene-container .thought.show{transform:translate(-50%,-100%)}.scene-container .thought[data-mood]{background:none;border-radius:0;border-color:transparent}.scene-container .thought:before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;border:24px solid transparent;border-image:url(/assets/ui/thought-cloud.svg) 12 fill / 24px round;image-rendering:pixelated;background:linear-gradient(var(--bubble-paper),var(--bubble-paper)) 10px 10px/ calc(100% - 20px) calc(100% - 20px) no-repeat border-box}.scene-container .thought:after{content:"";position:absolute;left:var(--thought-tail-x,50%);bottom:-26px;width:28px;height:24px;margin-left:-20px;background:url(/assets/ui/thought-tail.svg) center/100% 100% no-repeat;image-rendering:pixelated;border:0;border-radius:0;box-shadow:none;clip-path:none;transform:none;z-index:-1}.scene-container .thought[data-placement=below]:after{top:-26px;bottom:auto;transform:rotate(180deg)}.scene-container #thought-text{max-width:220px;font-size:12px;font-weight:650;line-height:1.45;letter-spacing:-.15px;text-align:center;overflow-wrap:break-word;text-wrap:balance}.scene-container .thought-choice{display:inline-flex;align-items:center;gap:7px;align-self:center;min-height:28px;margin:0;padding:6px 11px 6px 9px;border:0;border-radius:0;background:var(--bubble-key);color:var(--bubble-ink);font-size:11px;font-weight:650;line-height:1.2;text-align:left;cursor:pointer;clip-path:polygon(0 2px,2px 2px,2px 0,calc(100% - 2px) 0,calc(100% - 2px) 2px,100% 2px,100% calc(100% - 2px),calc(100% - 2px) calc(100% - 2px),calc(100% - 2px) 100%,2px 100%,2px calc(100% - 2px),0 calc(100% - 2px));transition:background .14s,color .14s}.scene-container .thought-choice:before{content:"";flex:none;width:6px;height:10px;background:currentColor;clip-path:polygon(0 0,2px 0,2px 2px,4px 2px,4px 4px,6px 4px,6px 6px,4px 6px,4px 8px,2px 8px,2px 10px,0 10px);animation:thought-cursor 1s steps(1) infinite}.scene-container .thought-choice:hover,.scene-container .thought-choice:focus-visible{background:var(--bubble-ink);color:var(--bubble-paper)}.scene-container .thought-choice:focus-visible{outline:2px solid var(--bubble-ink);outline-offset:2px}.scene-container .thought-choice:active{transform:translateY(1px)}.animations-paused .scene-container .thought-choice:before{animation:none}@keyframes thought-cursor{50%{transform:translate(2px)}}@media(max-width:600px){.scene-container .thought,.scene-container .thought[data-kind=need]{min-width:124px;max-width:min(236px,calc(100% - 24px));padding:20px 24px;gap:6px}.scene-container #thought-text{max-width:188px;font-size:12px;line-height:1.4}.scene-container .thought-choice{min-height:44px;padding:9px 13px 9px 11px;font-size:12px}.scene-container:has(.thought.show[data-placement=below]) .scene-touch-hint{opacity:0}}@media(prefers-reduced-motion:reduce){.scene-container .thought,.scene-container .thought.show{transform:translate(-50%,-100%);transition:opacity .12s}.scene-container .thought-choice:before{animation:none}}.info-view{width:100%;max-width:1100px;margin:0 auto;padding:148px 32px 32px;text-align:center}.info-view h1{max-width:900px;margin:0 auto;font-size:clamp(40px,4.35vw,56px);line-height:1.01;font-weight:550;letter-spacing:-.065em;text-wrap:balance}.info-view h1 em{font:inherit;letter-spacing:inherit}.portrait-wrap{position:relative;width:520px;max-width:100%;height:410px;margin:28px auto 44px}.portrait-interact{display:block;width:100%;height:100%;padding:0;border-radius:45%;background:transparent;cursor:grab}.portrait-interact:active{cursor:grabbing}.portrait-wrap canvas{display:block;width:100%;height:100%;image-rendering:pixelated}.portrait-hint{position:absolute;bottom:-24px;left:32px;right:32px;color:var(--muted);font-size:11px;line-height:1.5;opacity:0;transform:translateY(3px);pointer-events:none;transition:opacity .18s,transform .18s}.portrait-wrap:focus-within .portrait-hint{opacity:1;transform:none}.info-story{max-width:830px;margin:0 auto}.bio-lead{margin:0;max-width:none;font-size:clamp(23px,2.3vw,28px);font-weight:450;line-height:1.22;letter-spacing:-.045em;text-wrap:pretty}.bio-lead>[data-i18n=bioBefore]{display:block}.bio-studio-line{display:block;margin-top:10px}.bio-studio{white-space:nowrap}.inline-myrak{position:relative;display:inline-flex;align-items:center;justify-content:center;width:76px;height:38px;padding:10px;margin:0 3px 3px;vertical-align:middle;border-radius:9px;background:#0212ee;box-shadow:0 2px 3px #0014cc25,inset 0 1px 1px #fff4;transform:rotate(-4deg);transition:transform .18s ease-out}.inline-myrak>img{width:100%;filter:brightness(0) invert(1)}.inline-myrak:active{transform:rotate(0) scale(.96)}.badge-label{position:absolute;bottom:calc(100% + 12px);left:50%;transform:translate(-50%,4px);padding:8px 11px;border-radius:6px;background:var(--ink);color:var(--bg);font-size:11px;font-weight:450;letter-spacing:0;line-height:1.3;white-space:nowrap;pointer-events:none;opacity:0;transition:opacity .15s,transform .15s}.inline-myrak:focus-visible .badge-label{opacity:1;transform:translate(-50%)}.bio-copy{max-width:620px;margin:22px auto 0;color:var(--muted);font-size:15px;line-height:1.55;font-weight:400;letter-spacing:-.015em;text-wrap:pretty}.info-panels{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;max-width:720px;margin:76px auto 0}.info-panel{min-width:0;padding:30px 28px 32px;border:1px solid #ffffff30;border-radius:26px;background:#ffffff35;box-shadow:none}.info-panel h2{min-height:0;margin:0 0 27px;color:var(--muted);font-size:12px;line-height:1.4;letter-spacing:-.01em;font-weight:400}.info-project-icons{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px 12px}.info-project-icon{display:flex;flex-direction:column;align-items:center;gap:10px;min-width:0;padding:0;background:transparent;font-size:11px;line-height:1.3;color:var(--muted)}.info-project-icon>span{display:grid;place-items:center;width:62px;height:62px;overflow:hidden;border-radius:15px;background:#dce1e7;box-shadow:0 2px 3px #162c4310;transition:transform .18s ease-out,box-shadow .18s}.info-project-icon img{width:100%;height:100%;object-fit:cover;pointer-events:none}.info-project-icon .brand-icon{background:#0212ee;padding:9px}.info-project-icon .brand-icon img{height:auto;filter:brightness(0) invert(1)}.info-project-icon small{font:inherit}.info-project-icon:focus-visible>span{transform:translateY(-4px)}.info-project-icon:active>span{transform:scale(.96)}.skill-list{display:flex;flex-direction:column;gap:3px;margin:0;padding:0;list-style:none;color:var(--ink);font-size:14px;font-weight:400;line-height:1.45;letter-spacing:-.02em}.info-contact{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;margin:58px auto 0}.info-contact>a,.contact-mail,.contact-copy{min-height:44px;padding:12px 20px;border:1px solid #ffffff80;border-radius:12px;background:#ffffff38;font-size:13px;font-weight:450;transition:background .15s,color .15s,transform .15s}.info-contact>a:active,.contact-mail:active,.contact-copy:active{transform:scale(.97)}.is-info footer{display:flex;flex-direction:column-reverse;gap:24px;max-width:720px;margin:18px auto 0;padding:15px 24px 70px;border:0}.is-info footer>div{display:none}.is-info footer>span{text-align:center;font-size:11px}.is-info .footer-mark{align-self:center;width:38px}.night .info-panel{background:#68717f16;border-color:#ffffff09}.night .info-contact>a,.night .contact-mail,.night .contact-copy{background:#68717f20;border-color:#ffffff12}@media(hover:hover)and (pointer:fine){.portrait-wrap:hover .portrait-hint{opacity:1;transform:none}.inline-myrak:hover{transform:rotate(2deg) translateY(-2px)}.inline-myrak:hover .badge-label{opacity:1;transform:translate(-50%)}.info-project-icon:hover>span{transform:translateY(-4px) rotate(-3deg);box-shadow:0 7px 12px #162c4314}.info-contact>a:hover,.contact-mail:hover,.contact-copy:hover{background:var(--ink);border-color:var(--ink);color:var(--bg);transform:translateY(-2px)}}@media(max-width:700px){.info-view{padding:118px 24px 24px}.info-view h1{font-size:clamp(34px,6.5vw,45px)}.info-panels{gap:14px}.info-panel{padding:28px 18px}}@media(max-width:600px){.info-view{padding:93px 22px 20px}.info-view h1{font-size:clamp(32px,8.7vw,44px);line-height:1.06;letter-spacing:-.055em;font-weight:550}.portrait-wrap{width:360px;height:310px;margin:24px auto 76px}.portrait-tools{bottom:-60px;right:0;left:0;flex-direction:row;justify-content:center;gap:8px}.portrait-hint{display:none}.bio-lead{font-size:21px;line-height:1.35;letter-spacing:-.035em}.bio-studio-line{margin-top:12px}.inline-myrak{width:67px;height:34px;padding:9px;border-radius:8px}.bio-copy{max-width:420px;margin-top:21px;font-size:14px;line-height:1.6;letter-spacing:-.01em}.info-panels{grid-template-columns:1fr;gap:14px;max-width:420px;margin-top:42px}.info-panel{padding:27px 22px 30px;border-radius:22px}.info-panel h2{font-size:12px;margin-bottom:24px}.info-project-icons{gap:23px 12px}.info-project-icon{font-size:11px}.info-project-icon>span{width:62px;height:62px}.skill-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 16px;font-size:13px;line-height:1.5;text-align:left}.info-contact{margin-top:84px;gap:8px}.info-contact>a,.contact-mail,.contact-copy{padding:12px 18px;font-size:12px}.is-info footer{padding-bottom:calc(30px + env(safe-area-inset-bottom));margin-top:16px}}@media(max-width:360px){.info-view{padding-inline:18px}.info-view h1{font-size:31px}.portrait-wrap{height:280px}.bio-lead{font-size:20px}.info-panel{padding-inline:18px}}@media(prefers-reduced-motion:reduce){.portrait-hint,.inline-myrak,.badge-label,.info-project-icon>span,.info-contact>a,.contact-mail,.contact-copy{transition:none}}:root{--accent:#ffb7cf;--accent-ink:#a53c65;--accent-soft:#fbd5e3;--studio-night:#4b5c7a}.night{--accent-ink:#ffc9dc;--accent-soft:#674754}button:focus-visible,a:focus-visible{outline-color:var(--accent-ink)}::selection{background:var(--accent);color:#32232b}#work-view{position:relative;isolation:isolate}.studio-backdrop{position:fixed;inset:0;z-index:-1;pointer-events:none;background:var(--bg);opacity:1;transition:background-color .24s;will-change:opacity}.night .studio-backdrop{background:var(--studio-night)}.scene-tooltip{background:var(--accent);color:#392a31}.scene-container .thought,.scene-container .thought[data-kind=need]{--bubble-key:var(--accent)}.folio-count:before{background:linear-gradient(145deg,var(--accent-soft),var(--accent));border-color:color-mix(in srgb,var(--accent-ink) 24%,transparent)}.folio-count:after{background:var(--accent);border-color:color-mix(in srgb,var(--accent-ink) 24%,transparent)}.dot-link:before{background:var(--accent-ink)}.brand-home img{transform-origin:50% 60%;transition:transform .22s cubic-bezier(.23,1,.32,1)}.language-switch>a{position:relative;transition:opacity .15s,transform .18s cubic-bezier(.23,1,.32,1)}.language-switch>a:after{content:"";position:absolute;bottom:3px;left:calc(50% - 6px);width:12px;height:2px;border-radius:2px;background:var(--accent-ink);transform:scaleX(0);transition:transform .16s ease-out}@media(hover:hover)and (pointer:fine){.brand-home:hover img{transform:translateY(-2px) rotate(-7deg) scale(1.06)}.language-switch>a:hover{opacity:1;transform:translateY(-1px)}.language-switch>a:hover:after{transform:scaleX(1)}}.brand-home:active img{transform:scale(.96)}.language-switch>a:active{transform:scale(.97)}@media(prefers-reduced-motion:reduce){.studio-backdrop,.brand-home img,.language-switch>a,.language-switch>a:after{transition:none}.brand-home:hover img,.brand-home:active img,.language-switch>a:hover,.language-switch>a:active{transform:none}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.static-project{max-width:1080px;margin:auto;padding:140px 30px 70px}.case-breadcrumb{display:flex;gap:14px;align-items:center;font-size:12px;color:var(--muted);margin-bottom:36px}.case-breadcrumb a{text-decoration:underline;text-underline-offset:4px}.static-project h1{font-size:clamp(44px,7vw,80px);letter-spacing:-.05em;line-height:1.04;margin-top:14px}.static-project-images{display:grid;gap:40px;margin-top:50px}.static-project-images figure{margin:0}.static-project-images img{width:100%;height:auto;border-radius:10px}.static-project-images figcaption{font-size:12px;color:var(--muted);line-height:1.5;margin-top:12px}.static-records{max-width:1080px;margin:auto;padding:140px 25px 60px}.vinyl-loading{display:none}html:not(.no-js) #vinyl-view:not(.vinyl-fallback)>.static-records{display:none}html:not(.no-js) #vinyl-view:not(.vinyl-fallback)>.vinyl-loading{display:grid;place-items:center;min-height:100svh}.vinyl-loading img{opacity:.35}#vinyl-view.vinyl-experience[data-vinyl-loading]{position:relative}#vinyl-view.vinyl-experience[data-vinyl-loading]>*{visibility:hidden}#vinyl-view.vinyl-experience[data-vinyl-loading]:before{content:"";position:absolute;left:50%;top:50%;width:32px;height:40px;transform:translate(-50%,-50%);background:url(/assets/auriane-logo.png) center/contain no-repeat;opacity:.35;pointer-events:none}.static-records>h1{font-size:clamp(38px,6vw,68px);letter-spacing:-.04em}.static-records>p{margin-top:20px;color:var(--muted)}.static-records ul{list-style:none;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:30px 20px;margin-top:45px}.static-records img{width:100%;aspect-ratio:1;object-fit:cover}.static-records h2{font-size:15px;margin-top:12px;line-height:1.3}.static-records li p{font-size:12px;color:var(--muted);margin-top:6px}.no-js .room-floor,.no-js .portrait-wrap,.no-js .scene-controls{display:none}.no-js .intro{height:auto;min-height:0;padding-top:150px}.no-js .intro-copy-floor{min-height:0;height:auto;padding:50px 25px 80px;position:static}.no-js .intro h1{position:static;transform:none;opacity:1}.no-js .selection{padding-top:30px}.project-dialog-heading h1{font-size:clamp(36px,6vw,64px);font-weight:600;line-height:1.02;letter-spacing:-.05em}.project-share{display:inline-flex;gap:7px;align-items:center;background:transparent;padding:8px 0;font-size:12px;color:var(--muted)}.project-share svg{width:16px;height:16px}.project-dialog-links{display:flex;align-items:center;gap:24px;flex-wrap:wrap}.project-share:focus-visible{outline-offset:5px}.project-share:hover{color:var(--ink)}.project-share-url{max-width:100%;border:1px solid var(--line);background:var(--bg);color:var(--ink);border-radius:6px;padding:8px;font:inherit;font-size:12px}@media(max-width:600px){.static-project{padding:95px 20px 50px}.static-records{padding-top:95px}.static-records ul{grid-template-columns:repeat(2,minmax(0,1fr))}.static-project .project-dialog-end{gap:24px;flex-wrap:wrap}}.loading-mark{width:34px;height:auto;opacity:.85;animation:loading-breathe 1.8s ease-in-out infinite}.night .loading-mark{filter:invert(1)}@keyframes loading-breathe{0%,to{transform:scale(.94);opacity:.55}50%{transform:scale(1.04);opacity:.95}}@media(prefers-reduced-motion:reduce){.loading-mark{animation:none}}.intro-loader{display:none}html.intro-loading body{overflow:hidden}html.intro-loading .intro-loader{display:grid;place-items:center;position:fixed;inset:0;z-index:1000;background:#e9edf3;color:#191c1b;clip-path:inset(0 0 0 0);transition:clip-path .95s cubic-bezier(.76,0,.24,1)}.intro-mark{position:relative;width:min(28vw,112px);aspect-ratio:865/1077;transition:opacity .45s ease,transform .6s cubic-bezier(.2,.8,.2,1);animation:intro-breathe 2.6s ease-in-out 1.35s infinite}.intro-mark>img{position:absolute;inset:0;width:100%;height:100%;display:block}.intro-quarter{opacity:0;animation:intro-quarter .9s cubic-bezier(.2,.8,.2,1) forwards}.intro-q1{clip-path:inset(0 50% 50% 0);--from:translate(-18%,-14%) rotate(-8deg)}.intro-q2{clip-path:inset(0 0 50% 50%);--from:translate(18%,-14%) rotate(8deg);animation-delay:.09s}.intro-q3{clip-path:inset(50% 50% 0 0);--from:translate(-18%,14%) rotate(8deg);animation-delay:.18s}.intro-q4{clip-path:inset(50% 0 0 50%);--from:translate(18%,14%) rotate(-8deg);animation-delay:.27s}.intro-spark{opacity:0;animation:intro-twinkle 1.6s ease-in-out 1s infinite}.intro-spark-top{clip-path:inset(0 36% 79% 36%);transform-origin:50% 10%}.intro-spark-bottom{clip-path:inset(79% 36% 0 36%);transform-origin:50% 90%;animation-delay:1.25s}html.intro-opening .intro-loader{clip-path:inset(0 0 100% 0)}html.intro-opening .intro-mark{opacity:0;transform:translateY(-26px) scale(.94)}@keyframes intro-quarter{0%{opacity:0;transform:var(--from) scale(.9)}to{opacity:1;transform:none}}@keyframes intro-twinkle{0%,to{opacity:0;transform:scale(1)}40%{opacity:1;transform:scale(1.35)}70%{opacity:.4;transform:scale(1.1)}}@keyframes intro-breathe{50%{transform:scale(1.035)}}html.intro-returning .intro-loader{transition-duration:.3s}html.intro-returning .intro-quarter{animation:none;opacity:1;transform:none}html.intro-returning .intro-spark,html.intro-returning .intro-mark{animation:none}html.intro-returning .intro-mark{transition:opacity .18s ease,transform .3s ease}.scene-container[data-compact=true] .scene-pan-arrow{transition:opacity .25s ease,transform .25s ease}.scene-container[data-compact=true] .scene-pan-arrow.is-edge{opacity:0;transform:scale(.8);pointer-events:none}#activity{position:absolute!important;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;margin:0}.scene-coach{position:absolute;left:50%;top:clamp(12px,7%,46px);z-index:6;display:flex;align-items:center;gap:12px;width:max-content;max-width:min(360px,calc(100% - 32px));padding:10px 16px 10px 10px;border:1px solid var(--line);border-radius:20px;background:var(--glass);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);color:var(--ink);box-shadow:0 14px 34px -18px #0007;opacity:0;transform:translate(-50%,-10px) scale(.96);transition:opacity .28s ease,transform .42s cubic-bezier(.2,.8,.2,1);cursor:pointer}.scene-coach.is-visible{opacity:1;transform:translate(-50%) scale(1)}.scene-coach-hand{position:relative;display:grid;place-items:center;flex:0 0 42px;height:42px;border-radius:50%;background:color-mix(in srgb,var(--accent,#ffb7cf) 70%,transparent);color:#1e1b24}.scene-coach-hand svg{animation:coach-hand 2.4s cubic-bezier(.45,0,.25,1) infinite}.scene-coach-hand i{position:absolute;left:12px;top:7px;width:14px;height:14px;border:2px solid currentColor;border-radius:50%;opacity:0;animation:coach-tap 2.4s ease-out infinite}.scene-coach-copy{display:grid;gap:2px}.scene-coach-copy strong{font-size:13px;font-weight:600;letter-spacing:-.01em}.scene-coach-copy span{font-size:11.5px;line-height:1.35;color:var(--muted)}@keyframes coach-hand{0%,to{transform:translate(0) rotate(0)}14%{transform:translateY(2px) scale(.9)}40%{transform:translate(9px,-7px) rotate(-10deg) scale(.9)}62%{transform:translate(-5px,-3px) rotate(6deg) scale(.92)}80%{transform:translate(0) scale(1)}}@keyframes coach-tap{10%{opacity:.75;transform:scale(.4)}34%{opacity:0;transform:scale(1.7)}}@media(max-width:600px){.scene-coach{top:auto;bottom:86px}}html{touch-action:manipulation}.scene-container canvas,.scene-container[data-compact=true] canvas{touch-action:pan-y}@media(prefers-reduced-motion:reduce){.scene-coach-hand svg,.scene-coach-hand i{animation:none}}.scene-coach-copy{text-align:left}.intro-break{display:none}@media(max-width:600px){.intro-copy-floor h1 br.intro-break{display:inline!important}.intro-copy-floor h1 *{white-space:inherit!important}.intro-copy-floor{min-height:0;padding:6px 24px 72px;align-items:flex-start}.intro-copy-floor h1{font-size:clamp(18px,calc((100vw - 44px) / 15.7),34px);line-height:1.14;letter-spacing:-.045em;text-wrap:initial;white-space:nowrap}}.scene-container .thought,.scene-container .thought[data-kind=need]{z-index:5}.scene-container .action-menu{z-index:20}.scene-container:has(#action-menu:not([hidden])) .thought{opacity:0!important;pointer-events:none}.folio-navigation{gap:14px!important;margin-top:14px}.folio-carousel .folio-navigation>button.folio-arrow{display:grid;place-items:center;width:52px;min-width:52px;height:52px;min-height:52px;padding:0;border-radius:50%;border:1px solid var(--line);background:var(--glass);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:var(--ink);transition:transform .16s cubic-bezier(.2,.8,.2,1),background .16s,opacity .2s}.folio-carousel .folio-navigation>button.folio-arrow:not([aria-disabled=true]):hover{background:var(--accent);color:#392a31;transform:scale(1.06)}.folio-carousel .folio-navigation>button.folio-arrow:active{transform:scale(.94)}.folio-carousel .folio-navigation>button.folio-arrow[aria-disabled=true]{opacity:.25}.folio-position{display:inline-flex;align-items:baseline;gap:5px;min-width:0;padding:9px 15px;border-radius:999px;background:var(--accent);color:#392a31;font-size:12px;letter-spacing:.04em}.folio-position b{font-size:15px;font-weight:650}.folio-position span{opacity:.7}.mode-board-icon{position:relative;width:12px;height:11px}.mode-board-icon:before,.mode-board-icon:after{content:"";position:absolute;width:6px;height:7px;border:1px solid currentColor;border-radius:1px}.mode-board-icon:before{left:0;top:0;transform:rotate(-8deg)}.mode-board-icon:after{right:0;bottom:0;transform:rotate(7deg)}.project-board{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:46px 34px;padding:26px 6px 40px}.project-board[hidden]{display:none}.board-slot{display:flex;justify-content:center}.board-slot:nth-child(3n+2){padding-top:34px}.board-slot:nth-child(3n){padding-top:12px}.board-print{position:relative;display:block;width:100%;max-width:300px;padding:12px 12px 14px;background:#fbfaf6;color:#26231f;text-decoration:none;box-shadow:0 1px 1px #0000000d,0 16px 32px -20px #0000006b;transform:rotate(var(--tilt));transition:transform .32s cubic-bezier(.2,.8,.2,1),box-shadow .32s;animation:board-drop .7s cubic-bezier(.2,.8,.2,1) both;animation-delay:calc(var(--i) * 55ms)}.board-print:hover,.board-print:focus-visible{transform:rotate(0) translateY(-6px) scale(1.03);box-shadow:0 2px 2px #0000000f,0 26px 44px -22px #00000080;z-index:2}.board-photo{display:block;aspect-ratio:4/5;overflow:hidden;background:var(--card-paper)}.board-photo img{width:100%;height:100%;display:block;transition:transform .5s cubic-bezier(.2,.8,.2,1)}.board-print:hover .board-photo img{transform:scale(1.04)}.board-tape{position:absolute;top:-11px;left:50%;width:76px;height:22px;background:color-mix(in srgb,var(--accent) 62%,#fff8);opacity:.85;transform:translate(-50%) rotate(calc(var(--tilt) * -2.2));box-shadow:0 1px 2px #0000001a;z-index:1}.board-caption{display:grid;gap:3px;padding:12px 2px 0}.board-caption em{font-family:var(--font-serif);font-size:25px;line-height:1;letter-spacing:-.01em}.board-caption small{font-size:10.5px;color:#77706a;letter-spacing:.02em}.night .board-print{background:#f1eee7}@keyframes board-drop{0%{opacity:0;transform:rotate(calc(var(--tilt) * 3)) translateY(18px) scale(.96)}}@media(max-width:600px){.project-board{grid-template-columns:1fr 1fr;gap:30px 16px;padding:22px 2px 30px}.board-slot:nth-child(3n+2),.board-slot:nth-child(3n){padding-top:0}.board-slot:nth-child(2n){padding-top:26px}.board-print{padding:7px 7px 9px}.board-tape{width:46px;height:15px;top:-8px}.board-caption em{font-size:18px}.board-caption small{font-size:9.5px}.folio-modes button{padding:9px 10px}}@media(prefers-reduced-motion:reduce){.board-print{animation:none;transition:none}}.navigation{transition:translate .2s ease-out}@media(max-width:600px){.folio-modes button{gap:0;width:44px;justify-content:center;padding:9px 0}.folio-modes .mode-label{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}}.night #project-dialog{--bg:#252a35;--ink:#edf0f5;--muted:#a4adbb;--line:#48505e;--glass:#343c49;background:var(--bg);color:var(--ink);color-scheme:dark}.night #project-dialog::backdrop{background:#252a35}.night #project-dialog .close-dialog{background:#343c49f0;border-color:#48505e;color:var(--ink)}.night .case-gallery-fallback img{background:#2e3542}.project-gallery-navigation{gap:10px}.project-gallery .project-gallery-direction{flex:none;min-width:46px;display:grid;place-items:center;width:46px;height:46px;min-height:46px;padding:0;border:1px solid var(--line);border-radius:50%;background:var(--glass);color:var(--ink);transition:transform .16s cubic-bezier(.2,.8,.2,1),background .16s,opacity .2s}.project-gallery .project-gallery-direction:not([aria-disabled=true]):hover{background:var(--accent);color:#392a31}.project-gallery .project-gallery-direction:active{transform:scale(.93)}.project-gallery-image img,.case-gallery-fallback img{object-fit:cover!important}.project-gallery-stage{cursor:zoom-in}.gallery-viewer{position:fixed;inset:0;z-index:50;display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr) auto;background:#0e1014;color:#f3f1ec;opacity:0;transition:opacity .22s ease}.gallery-viewer.is-open{opacity:1}.gallery-viewer-frame{display:grid;place-items:center;min-width:0;min-height:0;overflow:hidden;padding:64px 16px 8px;touch-action:none}.gallery-viewer-frame img{max-width:100%;max-height:calc(100dvh - 140px);object-fit:contain;cursor:zoom-in;transition:translate .2s ease-out,transform .3s cubic-bezier(.2,.8,.2,1);transform:scale(.97)}.gallery-viewer.is-open .gallery-viewer-frame img{transform:none}.gallery-viewer.is-zoomed .gallery-viewer-frame{display:block;overflow:auto;touch-action:pan-x pan-y;padding:0}.gallery-viewer.is-zoomed .gallery-viewer-frame img{max-width:none;max-height:none;width:auto;height:190dvh;cursor:zoom-out}.gallery-viewer-caption{margin:0;padding:12px 20px max(20px,env(safe-area-inset-bottom));font-size:12px;text-align:center;color:#c9c6bf;white-space:normal;overflow-wrap:anywhere}.gallery-viewer-close,.gallery-viewer-step{position:absolute;display:grid;place-items:center;width:46px;height:46px;border:1px solid #ffffff2e;border-radius:50%;background:#ffffff14;color:inherit;cursor:pointer}.gallery-viewer-close{top:max(14px,env(safe-area-inset-top));right:14px}.gallery-viewer-step{top:50%;translate:0 -50%}.gallery-viewer-step[data-step="-1"]{left:14px}.gallery-viewer-step[data-step="1"]{right:14px}.gallery-viewer-close:hover,.gallery-viewer-step:hover{background:#ffffff2a}@media(max-width:600px){.gallery-viewer-step{display:none}}.case-body .project-dialog-end{display:grid;grid-template-columns:1fr auto;gap:14px 12px;align-items:center;border-top:0!important;padding-top:6px!important}.project-dialog-links{display:contents!important}.project-visit{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:56px;padding:0 22px;border-radius:999px;background:var(--ink);color:var(--bg);font-size:15px;font-weight:550;text-decoration:none;transition:transform .16s cubic-bezier(.2,.8,.2,1),background .2s}.project-visit:hover{background:color-mix(in srgb,var(--ink) 86%,var(--accent))}.project-visit:active{transform:scale(.98)}.project-visit.is-contact{background:var(--accent);color:#392a31}.case-body .project-share{justify-self:start;min-height:48px;padding:0 18px;border:1px solid var(--line);border-radius:999px;color:var(--ink)}.project-next{display:flex;align-items:center;gap:12px;justify-self:end;text-decoration:none;color:var(--ink)}.project-next-copy{display:grid;text-align:right;line-height:1.2}.project-next-copy small{font-size:11px;color:var(--muted)}.project-next-copy strong{font-size:14px;font-weight:550}.project-next-arrow{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:var(--accent);color:#392a31;transition:transform .2s cubic-bezier(.2,.8,.2,1)}.project-next:hover .project-next-arrow{transform:translate(4px)}.project-next:active .project-next-arrow{transform:scale(.94)}html.vt-soft::view-transition-old(root){animation:vt-soft-out .55s cubic-bezier(.4,0,.2,1) both}html.vt-soft::view-transition-new(root){animation:vt-soft-in .8s cubic-bezier(.2,.8,.2,1) both}@keyframes vt-soft-out{to{opacity:0;filter:blur(8px);transform:scale(.985)}}@keyframes vt-soft-in{0%{opacity:0;filter:blur(6px);transform:translateY(16px) scale(1.01)}}.project-visit{position:relative;overflow:hidden;isolation:isolate}.project-visit svg{transition:transform .28s cubic-bezier(.2,.8,.2,1)}.project-visit:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(105deg,transparent 30%,#ffffff40 48%,transparent 66%);transform:translate(-120%);pointer-events:none}.project-share svg{transition:transform .25s cubic-bezier(.2,.8,.2,1)}.project-share.is-shared svg{animation:share-pop .5s cubic-bezier(.2,.8,.2,1)}.project-next-arrow{position:relative}.project-next-arrow:before{content:"";position:absolute;inset:0;border-radius:50%;border:1.5px solid var(--accent);opacity:0;transform:scale(.8);pointer-events:none}.project-next-arrow svg{transition:transform .25s cubic-bezier(.2,.8,.2,1)}.info-contact>a,.personal-links>a,.navigation>a{transition:background .2s,color .2s,border-color .2s,transform .22s cubic-bezier(.2,.8,.2,1),box-shadow .22s}.folio-arrow svg,.project-gallery-direction svg,.gallery-viewer-step svg,.vx-step svg{transition:transform .22s cubic-bezier(.2,.8,.2,1)}@media(hover:hover)and (pointer:fine)and (prefers-reduced-motion:no-preference){.project-visit:hover{transform:scale(1.012)}.project-visit.is-contact:hover{background:color-mix(in srgb,var(--accent) 88%,#fff)}.project-visit:hover:after{animation:cta-sheen .8s ease-out}.project-visit:hover svg{transform:translate(3px,-3px) rotate(-4deg)}.project-visit.is-contact:hover svg{transform:translate(4px) rotate(-8deg)}.case-body .project-share:hover{border-color:var(--ink);transform:translateY(-1px)}.case-body .project-share:hover svg{animation:share-lift .6s cubic-bezier(.2,.8,.2,1)}.project-next:hover .project-next-arrow:before{animation:next-ring .7s ease-out}.project-next:hover .project-next-arrow svg{animation:next-slide .55s cubic-bezier(.2,.8,.2,1)}.project-next:hover .project-next-copy strong{text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px}.folio-next.folio-arrow:not([aria-disabled=true]):hover svg,.project-gallery-direction[data-gallery-next]:hover svg,.gallery-viewer-step[data-step="1"]:hover svg,.vx-step[data-vx-next]:hover svg{transform:translate(3px)}.folio-prev.folio-arrow:not([aria-disabled=true]):hover svg,.project-gallery-direction[data-gallery-previous]:hover svg,.gallery-viewer-step[data-step="-1"]:hover svg,.vx-step[data-vx-previous]:hover svg{transform:translate(-3px)}.navigation>a:not(.current):hover{transform:translateY(-1px)}.info-contact>a:hover,.personal-links>a:hover{transform:translateY(-2px)}.folio-modes button:hover svg{animation:mode-wiggle .45s ease}.scene-controls>button:hover{transform:translateY(-2px) rotate(-6deg)}.scene-controls>button{transition:background .15s,color .15s,transform .22s cubic-bezier(.2,.8,.2,1)}.portrait-tool:hover{transform:translateY(-2px) rotate(-8deg)}.footer-mark{transition:transform .35s cubic-bezier(.2,.8,.2,1)}.footer-mark:hover{transform:rotate(-8deg) scale(1.06)}.dot-link:hover{transform:translateY(-1px)}.action-menu button{transition:background .15s,padding-left .2s cubic-bezier(.2,.8,.2,1)}.action-menu button:hover{padding-left:17px}}@keyframes cta-sheen{to{transform:translate(120%)}}@keyframes share-lift{0%{transform:none}40%{transform:translateY(-4px)}70%{transform:translateY(1px)}to{transform:none}}@keyframes share-pop{0%{transform:scale(1)}35%{transform:scale(1.3) rotate(-10deg)}to{transform:none}}@keyframes next-ring{0%{opacity:.9;transform:scale(.9)}to{opacity:0;transform:scale(1.45)}}@keyframes next-slide{0%{transform:none}45%{transform:translate(16px);opacity:0}46%{transform:translate(-16px);opacity:0}to{transform:none;opacity:1}}@keyframes mode-wiggle{0%,to{transform:none}30%{transform:rotate(-10deg)}65%{transform:rotate(8deg)}}@media(hover:none){.project-visit:active:after{animation:cta-sheen .6s ease-out}.project-next:active .project-next-arrow:before{animation:next-ring .6s ease-out}}.mode-index-icon{font-family:var(--font-serif,Georgia,serif);font-size:13px;line-height:1;font-style:italic;letter-spacing:-.04em}.project-index{position:relative;padding:14px 0 36px;border-top:1px solid var(--line)}.project-index[hidden]{display:none}.index-row{border-bottom:1px solid var(--line)}.index-link{display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:baseline;gap:6px 18px;padding:18px 4px 16px;color:var(--ink);text-decoration:none;transition:opacity .3s,padding .35s cubic-bezier(.2,.8,.2,1)}.index-number{font-size:11px;color:var(--muted);font-variant-numeric:tabular-nums}.index-title{font-size:clamp(34px,5.4vw,72px);line-height:.95;letter-spacing:-.04em;font-weight:650;transition:transform .35s cubic-bezier(.2,.8,.2,1),font-style .2s}.index-meta{font-size:11px;color:var(--muted);white-space:nowrap;text-align:right}.index-photo{display:none}.project-index.is-entering .index-row{animation:index-in .55s cubic-bezier(.2,.8,.2,1) both;animation-delay:calc(var(--i) * 45ms)}.index-float{position:absolute;left:0;top:0;width:0;height:0;pointer-events:none;z-index:5}.index-float-card{position:absolute;left:24px;top:-110px;width:min(260px,24vw);aspect-ratio:4/5;border-radius:10px;background:center/cover no-repeat;box-shadow:0 24px 46px -22px #10141c99;opacity:0;transform:scale(.6) rotate(-4deg);transition:opacity .22s,transform .35s cubic-bezier(.2,.8,.2,1)}.project-index.is-previewing .index-float-card{opacity:1;transform:none}.index-float-card.is-swap{animation:index-swap .3s cubic-bezier(.2,.8,.2,1)}@media(hover:hover)and (pointer:fine){.project-index.is-previewing .index-link:not(.is-hovered){opacity:.28}.index-link.is-hovered .index-title{transform:translate(14px);font-style:italic}}@media(hover:none),(max-width:600px){.index-float{display:none}.index-link{grid-template-columns:30px minmax(0,1fr);padding:16px 2px 14px}.index-meta{grid-column:2;text-align:left}.index-title{font-size:clamp(30px,9.4vw,46px)}.index-photo{display:block;grid-column:2;height:0;overflow:hidden;border-radius:12px;background:var(--card-paper);opacity:0;transition:height .45s cubic-bezier(.2,.8,.2,1),opacity .3s,margin .45s}.index-photo img{width:100%;height:100%;display:block}.index-link.is-centred .index-photo{height:clamp(190px,58vw,300px);opacity:1;margin-top:10px}.index-link.is-centred .index-title{font-style:italic}}@keyframes index-in{0%{opacity:0;transform:translateY(14px)}}@keyframes index-swap{0%{transform:scale(.92) rotate(3deg)}to{transform:none}}@media(prefers-reduced-motion:reduce){.project-index.is-entering .index-row,.index-float-card.is-swap{animation:none}.index-photo,.index-link,.index-title,.index-float-card{transition:none}}.project-gallery{position:relative}.gallery-coach{position:absolute;left:50%;top:clamp(14px,6%,34px);z-index:7;display:flex;align-items:center;gap:11px;width:max-content;max-width:min(340px,calc(100% - 32px));padding:8px 15px 8px 8px;border:1px solid var(--line);border-radius:22px;background:color-mix(in srgb,var(--bg) 90%,transparent);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);color:var(--ink);font-size:12px;line-height:1.35;cursor:pointer;opacity:0;transform:translate(-50%,-8px) scale(.94);transition:opacity .3s ease,transform .4s cubic-bezier(.2,.8,.2,1)}.gallery-coach.is-visible{opacity:1;transform:translate(-50%) scale(1)}.gallery-coach-hand{display:grid;place-items:center;flex:0 0 36px;height:36px;border-radius:50%;background:color-mix(in srgb,var(--accent,#ffb7cf) 75%,transparent);color:#1e1b24}.gallery-coach-hand svg{animation:gallery-swipe 2.2s cubic-bezier(.45,0,.25,1) infinite}@keyframes gallery-swipe{0%,to{transform:translate(5px) rotate(6deg)}45%{transform:translate(-6px) rotate(-8deg)}60%{transform:translate(-6px) rotate(-8deg) scale(.9)}}@media(prefers-reduced-motion:reduce){.gallery-coach,.gallery-coach-hand svg{transition:none;animation:none}}@media(max-width:600px){.project-gallery-navigation{width:100%;justify-content:space-between;gap:6px}.project-gallery-dots{flex:1 1 auto;min-width:0;justify-content:flex-start;gap:0}.project-gallery-dot{min-width:36px;flex:0 0 36px}}.header-tools{position:fixed;top:32px;right:max(25px,env(safe-area-inset-right));z-index:30}.header-tools .language-switch{position:relative;inset:auto}.global-theme{position:absolute;top:50%;right:calc(100% + 10px);display:grid;place-items:center;width:44px;height:44px;padding:0;border:1px solid color-mix(in srgb,var(--line) 70%,transparent);border-radius:50%;background:var(--glass);color:var(--ink);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);transform:translateY(-50%);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .18s ease,background .18s ease,border-color .18s ease,transform .18s cubic-bezier(.23,1,.32,1)}.has-global-theme .global-theme{opacity:1;visibility:visible;pointer-events:auto}.global-theme svg{width:19px;height:19px;grid-area:1/1;transition:opacity .18s ease,transform .24s cubic-bezier(.23,1,.32,1)}.global-theme :is(.theme-moon,[data-theme-icon=moon]){opacity:0;transform:rotate(-35deg) scale(.75)}.night .global-theme :is(.theme-sun,[data-theme-icon=sun]){opacity:0;transform:rotate(35deg) scale(.75)}.night .global-theme :is(.theme-moon,[data-theme-icon=moon]){opacity:1;transform:none}.global-theme:active{transform:translateY(-50%) scale(.94)}.global-theme:focus-visible,.contact-copy:focus-visible,.contact-mail:focus-visible{outline:2px solid var(--accent-ink);outline-offset:4px}#project-dialog>.header-tools{top:24px;right:80px}#project-dialog .close-dialog{width:44px;height:44px}.contact-address-group{position:relative;display:inline-flex;flex-wrap:wrap;align-items:center;justify-content:flex-start;gap:8px;min-width:0;max-width:100%}.contact-mail{display:inline-flex;align-items:center;justify-content:center;color:var(--ink)}.info-contact>.contact-address-group{justify-content:center}.contact-copy{position:relative;display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;padding:0;color:var(--ink)}.contact-copy svg{position:absolute;width:17px;height:17px;transition:opacity .16s ease,transform .2s cubic-bezier(.23,1,.32,1)}.contact-copy .check-icon{opacity:0;transform:scale(.7)}.contact-copy:is(.is-copied,[data-copied=true]){border-color:color-mix(in srgb,var(--accent-ink) 40%,var(--line))}.contact-copy:is(.is-copied,[data-copied=true]) .copy-icon{opacity:0;transform:scale(.7)}.contact-copy:is(.is-copied,[data-copied=true]) .check-icon{opacity:1;transform:none}.contact-copy:active{transform:scale(.97)}.contact-feedback{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}footer{grid-template-columns:auto minmax(0,1fr) auto;gap:16px;padding:22px 0 26px}footer>[data-contact-host=footer]{min-width:0;gap:0}footer>.footer-mark{width:32px}#project-dialog .project-dialog-content:has(>.case-intro){padding-top:112px}.case-intro{width:min(960px,100%);margin:0 auto;padding:0 clamp(24px,4vw,64px) 40px}.case-intro .case-top{margin-bottom:26px}.case-intro .project-eyebrow{margin-bottom:18px;font-size:11px;line-height:1.5;letter-spacing:.02em}.case-intro h1{max-width:850px;margin:0;color:var(--ink);font-size:clamp(40px,6.6vw,74px);font-weight:550;line-height:1.04;letter-spacing:-.05em;text-wrap:balance;overflow-wrap:anywhere}.case-role{display:flex;flex-wrap:wrap;align-items:baseline;gap:5px 12px;margin-top:22px;color:var(--muted);font-size:13px;line-height:1.6;text-wrap:pretty}.case-role :is(strong,b){color:var(--ink);font-weight:550}.case-role>span{min-width:0;overflow-wrap:anywhere}.case-highlight{display:inline-flex;align-items:center;max-width:100%;margin-top:18px;padding:8px 13px;border:1px solid color-mix(in srgb,var(--accent-ink) 15%,transparent);border-radius:999px;background:color-mix(in srgb,var(--accent) 18%,transparent);color:var(--accent-ink);font-size:11px;font-weight:450;line-height:1.5;text-wrap:pretty}.case-intro .project-dialog-description{max-width:760px;margin-top:24px;color:var(--ink);font-size:clamp(20px,2.4vw,26px);font-weight:400;line-height:1.45;letter-spacing:-.025em;text-wrap:pretty}.case-body:has(.case-details){width:min(960px,100%);padding:48px clamp(24px,4vw,64px) 0}.case-details{margin-bottom:32px}.case-details dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin:0}.case-details dl>div{min-width:0;padding-top:18px;border-top:1px solid var(--line)}.case-details dt{margin:0 0 10px;color:var(--muted);font-size:11px;font-weight:500;line-height:1.5}.case-details dd{margin:0;color:var(--ink);font-size:14px;font-weight:400;line-height:1.75;letter-spacing:-.01em;text-wrap:pretty;overflow-wrap:anywhere}.case-body:has(.case-details) .project-dialog-context{max-width:760px;margin-top:22px;font-size:14px;line-height:1.8;text-wrap:pretty}.case-body:has(.case-details) .project-dialog-meta{max-width:760px;font-size:12px;line-height:1.7}@media(hover:hover)and (pointer:fine){.global-theme:hover{background:color-mix(in srgb,var(--glass) 75%,var(--accent) 25%);border-color:color-mix(in srgb,var(--accent-ink) 30%,var(--line))}}@media(max-width:800px){.case-details dl{grid-template-columns:minmax(0,1fr);gap:24px}.case-details dl>div{display:grid;grid-template-columns:120px minmax(0,1fr);gap:22px}.case-details dt{margin:0;font-size:12px;line-height:1.75}}@media(max-width:600px){.header-tools{top:15px;right:max(14px,env(safe-area-inset-right))}.global-theme{right:calc(100% + 8px)}#project-dialog>.header-tools{top:16px;right:70px}#project-dialog .project-dialog-content:has(>.case-intro){padding-top:100px}.info-contact{row-gap:14px}footer{grid-template-columns:minmax(0,1fr) auto;row-gap:8px;padding-bottom:calc(26px + env(safe-area-inset-bottom))}footer>span{grid-column:1;grid-row:2;text-align:left;font-size:10px}footer>.footer-mark{grid-column:2;grid-row:1/3}.case-intro{padding:0 22px 30px}.case-intro .case-top{margin-bottom:24px}.case-intro .project-eyebrow{margin-bottom:14px;font-size:10px}.case-intro h1{font-size:clamp(34px,10vw,48px);line-height:1.08;letter-spacing:-.045em}.case-role{margin-top:18px;font-size:12px;gap:4px 9px}.case-highlight{margin-top:16px;padding:8px 12px;font-size:10px}.case-intro .project-dialog-description{margin-top:20px;font-size:19px;line-height:1.5;letter-spacing:-.02em}.case-body:has(.case-details){padding:32px 22px 0}.case-details{margin-bottom:26px}.case-details dl{gap:22px}.case-details dl>div{grid-template-columns:minmax(0,1fr);gap:8px;padding-top:16px}.case-details dt{font-size:11px}.case-details dd{font-size:13px;line-height:1.75}.case-body:has(.case-details) .project-dialog-context{font-size:13px;line-height:1.8}.case-body:has(.case-details) .project-dialog-meta{font-size:11px}}@media(max-width:360px){.info-contact>.contact-address-group{flex-basis:100%}.case-intro{padding-inline:18px}.case-body:has(.case-details){padding-inline:18px}}@media(prefers-reduced-motion:reduce){.global-theme,.global-theme svg,.contact-copy,.contact-copy svg,.contact-mail{transition:none}.global-theme:active{transform:translateY(-50%)}.contact-copy:active{transform:none}}.project-transition-image{position:fixed;z-index:100;pointer-events:none;overflow:hidden;transform-origin:center;will-change:transform;background:var(--bg)}.project-transition-image>img{position:absolute;left:50%;top:50%;max-width:none;object-fit:contain;transform-origin:center;will-change:transform,opacity}.case-gallery.is-image-transitioning .project-gallery-stage{opacity:0}.no-js .contact-copy{display:none}.contact-copy-fallback{max-width:100%;min-width:0;flex-basis:100%;padding:8px;border:1px solid var(--line);border-radius:6px;background:var(--bg);color:var(--ink);font:inherit}.project-index .index-row{position:relative;border-bottom:0}.project-index .index-row:after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:var(--line);transform-origin:0 50%}.project-index.is-waiting .index-row{opacity:0}.project-index.is-waiting .index-row:after{transform:scaleX(0)}.project-index.is-entering .index-row{animation:index-rise .78s cubic-bezier(.2,.8,.2,1) both;animation-delay:calc(var(--i) * 65ms)}.project-index.is-entering .index-row:after{animation:index-rule .95s cubic-bezier(.65,0,.2,1) both;animation-delay:calc(var(--i) * 65ms + .14s)}@keyframes index-rise{0%{opacity:0;transform:translateY(26px)}}@keyframes index-rule{0%{transform:scaleX(0)}}.index-number{transition:color .25s ease,transform .35s cubic-bezier(.2,.8,.2,1)}.index-float{transform-style:preserve-3d}.index-float-card{overflow:hidden;will-change:transform}.index-float-layer{position:absolute;inset:0;background:center/cover no-repeat;opacity:0;transform:scale(1.06)}.index-float-layer.is-shown{animation:float-leaf .5s cubic-bezier(.2,.8,.2,1) both}@keyframes float-leaf{0%{opacity:0;transform:scale(1.06) translate(8%)}to{opacity:1;transform:none}}@media(hover:hover)and (pointer:fine){.index-link.is-hovered .index-number{color:var(--accent-ink);transform:translate(4px) scale(1.15)}}.index-link.is-centred .index-number{color:var(--accent-ink)}@media(prefers-reduced-motion:reduce){.project-index.is-waiting .index-row{opacity:1}.project-index.is-waiting .index-row:after{transform:none}.project-index.is-entering .index-row,.project-index.is-entering .index-row:after,.index-float-layer.is-shown{animation:none}}html[data-input=pointer] :focus-visible{outline:none!important}html[data-input=pointer] .index-link:focus-visible,html[data-input=pointer] .folio:focus-visible{box-shadow:none}@media(max-width:600px){#project-dialog:before{content:"";position:fixed;left:0;right:0;top:0;height:calc(70px + env(safe-area-inset-top));z-index:4;pointer-events:none;background:linear-gradient(to bottom,var(--bg) 0,var(--bg) 62%,color-mix(in srgb,var(--bg) 0%,transparent) 100%)}#project-dialog{background:var(--bg)}#project-dialog>.header-tools,#project-dialog .close-dialog{z-index:6}}@media(max-width:600px){.is-vinyl .vinyl-experience:not([data-vinyl-stage=player])>.vx-heading{position:static;width:auto;height:auto;padding:0;margin:4px 0 0;overflow:visible;clip-path:none;white-space:normal}.is-vinyl .vx-heading h1{font-size:clamp(28px,8.4vw,34px);letter-spacing:-1.3px}body.is-vinyl .vinyl-experience .vx-collection:not([hidden]){min-height:calc(100svh - 140px - max(110px,calc(90px + env(safe-area-inset-bottom))))}body.is-vinyl .vinyl-experience .vx-stack-wrap{--vx-size:min( calc(100vw - 150px) ,clamp(200px,30svh,250px))}body.is-vinyl .vinyl-experience .vx-stack{height:clamp(300px,44svh,420px);-webkit-mask-image:linear-gradient(90deg,transparent,#000 13%,#000 87%,transparent);mask-image:linear-gradient(90deg,transparent,#000 13%,#000 87%,transparent)}}.vx-player-heading{position:relative}.vx-player-steps{display:flex;align-items:center;gap:2px;margin-left:auto;margin-right:4px}.vx-player-count{min-width:54px;text-align:center;font-size:10px;letter-spacing:.12em;color:var(--muted);font-variant-numeric:tabular-nums}.vx-player-steps .vx-step{opacity:.7}.vx-player-steps .vx-step:disabled{opacity:.15}.vx-record-label{animation:none!important;transform:rotate(var(--vx-spin,0deg))}.vx-vinyl:after{content:"";position:absolute;inset:0;border-radius:50%;pointer-events:none;z-index:1;background:conic-gradient(from var(--vx-spin,0deg),transparent 0 18%,#ffffff12 22%,transparent 27% 68%,#ffffff0d 72%,transparent 77%)}.vx-arm-slow .vx-tonearm{transition:transform 1.35s cubic-bezier(.45,.05,.2,1)}.vx-tracklist{margin-top:6px;max-width:420px;padding:0 16px 0 12px}@media(min-width:601px){.vinyl-experience .vx-player-layout{row-gap:18px}.vx-player-layout>.vx-now-playing{grid-column:1;grid-row:1}.vx-player-layout>.vx-deck-wrap{grid-column:2;grid-row:1/span 2}.vx-player-layout>.vx-tracklist{grid-column:1;grid-row:2;align-self:start}}.vx-tracklist[hidden]{display:none}.vx-tracklist-title{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin:0 0 10px}.vx-tracklist ol{list-style:none;margin:0;padding:0;font-size:12px;line-height:1.35}.vx-tracklist ol.is-long{columns:2;column-gap:22px}.vx-tracklist li{display:flex;align-items:baseline;gap:9px;padding:4px 0;break-inside:avoid;border-bottom:1px solid color-mix(in srgb,var(--line) 70%,transparent);color:color-mix(in srgb,var(--ink) 78%,transparent)}.vx-tracklist li span{flex:none;width:18px;font-size:9px;color:var(--muted);font-variant-numeric:tabular-nums}.vx-tracklist li b{font-weight:450;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vx-tracklist li.is-excerpt b{color:var(--ink);font-weight:550}.vx-tracklist li.is-excerpt span{color:var(--vx-accent)}.vx-eq{display:inline-flex;align-items:flex-end;gap:2px;height:10px;margin-left:auto;flex:none}.vx-eq s{display:block;width:2px;height:3px;border-radius:1px;background:var(--vx-accent)}.vx-tracklist li.is-playing .vx-eq s{animation:vx-eq .9s ease-in-out infinite}.vx-tracklist li.is-playing .vx-eq s:nth-child(2){animation-delay:-.3s}.vx-tracklist li.is-playing .vx-eq s:nth-child(3){animation-delay:-.6s}@keyframes vx-eq{0%,to{height:3px}50%{height:10px}}.vinyl-experience[data-vinyl-stage=player] .vx-tracklist li{animation:vx-track-in .5s cubic-bezier(.2,.8,.2,1) both;animation-delay:calc(var(--n) * 28ms + .38s)}@keyframes vx-track-in{0%{opacity:0;transform:translateY(6px)}}.vx-closing .vx-sleeve.is-landing .vx-sleeve-visual{visibility:hidden}.vx-opening .vx-album-details,.vx-opening .vx-tracklist{animation:vx-player-in .7s cubic-bezier(.2,.8,.2,1) .9s both}@keyframes vx-player-in{0%{opacity:0;transform:translateY(10px)}}@media(max-width:600px){.vx-player-count{min-width:44px}.vx-tracklist{order:3;width:100%;max-width:none;margin-top:4px;padding:0}.vx-tracklist ol.is-long{columns:1}}@media(prefers-reduced-motion:reduce){.vx-tracklist li,.vx-tracklist li.is-playing .vx-eq s,.vx-opening .vx-album-details,.vx-opening .vx-tracklist{animation:none!important}.vx-arm-slow .vx-tonearm{transition:none}}.folio-stage{perspective:1500px;perspective-origin:50% 45%}.folio{backface-visibility:hidden}#project-dialog-content{--reveal-delay:60ms}#project-dialog-content.after-flight{--reveal-delay:.38s}.reveal-mask{display:inline-block;overflow:hidden;vertical-align:bottom;padding:0 .04em .12em;margin:0 -.04em -.12em}#project-dialog-content.is-revealing .reveal-word{display:inline-block;animation:reveal-word .8s cubic-bezier(.2,.85,.2,1) both;animation-delay:calc(var(--reveal-delay) + var(--w) * 75ms)}#project-dialog-content.is-revealing :is(.case-top,.project-eyebrow){animation:reveal-up .6s cubic-bezier(.2,.8,.2,1) both;animation-delay:var(--reveal-delay)}#project-dialog-content.is-revealing :is(.case-role,.case-highlight){animation:reveal-up .7s cubic-bezier(.2,.8,.2,1) both;animation-delay:calc(var(--reveal-delay) + .22s)}#project-dialog-content.is-revealing .project-dialog-description{animation:reveal-up .7s cubic-bezier(.2,.8,.2,1) both;animation-delay:calc(var(--reveal-delay) + .3s)}#project-dialog-content.is-revealing .project-gallery-meta{animation:reveal-up .7s cubic-bezier(.2,.8,.2,1) both;animation-delay:calc(var(--reveal-delay) + .36s)}#project-dialog-content.is-revealing :is(.case-body,.project-next-feature){animation:reveal-up .8s cubic-bezier(.2,.8,.2,1) both;animation-delay:calc(var(--reveal-delay) + .46s)}#project-dialog-content.is-revealing:not(.after-flight) .project-gallery-stage{animation:reveal-fade .7s ease-out both;animation-delay:calc(var(--reveal-delay) + .12s)}@keyframes reveal-word{0%{transform:translateY(105%)}}@keyframes reveal-up{0%{opacity:0;transform:translateY(16px)}}@keyframes reveal-fade{0%{opacity:0}}.project-next-feature{position:relative;display:block;margin:clamp(56px,8vw,110px) clamp(24px,4vw,64px) clamp(40px,5vw,70px);border-radius:24px;overflow:hidden;color:#fff;text-decoration:none;background:#d9d8d4;isolation:isolate;aspect-ratio:16/7;min-height:260px}.pnf-media{position:absolute;inset:0;z-index:-1}.pnf-media img{width:100%;height:100%;object-fit:cover;display:block;transform:scale(1.02);transition:transform .9s cubic-bezier(.2,.8,.2,1),filter .5s}.pnf-media:after{content:"";position:absolute;inset:0;background:linear-gradient(to top,#0b0d10b3 0,#0b0d1033 45%,transparent 70%)}.pnf-copy{position:absolute;left:clamp(22px,3vw,40px);bottom:clamp(20px,3vw,36px);display:grid;gap:4px}.pnf-copy small{font-size:11px;letter-spacing:.12em;text-transform:uppercase;opacity:.82}.pnf-copy strong{font-size:clamp(34px,5.6vw,76px);line-height:.95;letter-spacing:-.04em;font-weight:650}.pnf-copy em{font-style:normal;font-size:12px;opacity:.8}.pnf-arrow{position:absolute;right:clamp(20px,3vw,36px);bottom:clamp(20px,3vw,36px);display:grid;place-items:center;width:56px;height:56px;border-radius:50%;background:var(--accent);color:#392a31;transition:transform .45s cubic-bezier(.2,.8,.2,1)}@media(hover:hover)and (pointer:fine){.project-next-feature:hover .pnf-media img{transform:scale(1.07)}.project-next-feature:hover .pnf-arrow{transform:translate(6px) scale(1.06)}}.project-next-cover{position:fixed;z-index:120;pointer-events:none;overflow:hidden;background:#d9d8d4}.project-next-cover img{width:100%;height:100%;object-fit:cover;display:block}@media(max-width:600px){.project-next-feature{margin:48px 16px 120px;aspect-ratio:4/5;min-height:0;border-radius:20px}.pnf-arrow{width:48px;height:48px}}.index-link.is-returned .index-number{color:var(--accent-ink)}.index-link.is-returned .index-title{animation:index-returned .9s cubic-bezier(.2,.8,.2,1)}@keyframes index-returned{30%{transform:translate(10px)}}@media(prefers-reduced-motion:reduce){#project-dialog-content.is-revealing *{animation:none!important}.pnf-media img,.pnf-arrow{transition:none}}.gallery-counter,.gallery-rolls{display:inline-flex;align-items:baseline}.gallery-roll{display:inline-block;height:1.5em;overflow:hidden;vertical-align:bottom}.gallery-roll>span{display:flex;flex-direction:column;transform:translateY(calc(var(--digit,0) * -1.5em));transition:transform .55s cubic-bezier(.2,.85,.2,1)}.gallery-roll i{display:block;height:1.5em;line-height:1.5em;font-style:normal}.gallery-roll+.gallery-roll>span{transition-delay:40ms}.gallery-total{white-space:pre}.gallery-caption-text{display:inline}.project-gallery-image img{opacity:0;transform:scale(.98);transition:opacity .6s ease,transform .8s cubic-bezier(.2,.8,.2,1)}.project-gallery-image img.is-loaded{opacity:1;transform:none}@media(prefers-reduced-motion:reduce){.gallery-roll>span,.project-gallery-image img{transition:none}.project-gallery-image img{opacity:1;transform:none}}.gallery-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.project-transition-image{background:transparent}.vinyl-experience .vx-player-heading .vx-return{gap:10px;min-height:42px;padding:6px 16px 6px 10px;border:1px solid var(--line);border-radius:999px;background:color-mix(in srgb,var(--glass,#fff) 70%,transparent);font-size:12px;font-weight:500;color:var(--ink);transition:background .2s,border-color .2s,transform .2s}.vinyl-experience .vx-player-heading .vx-return>svg{display:block;width:16px;height:16px;transition:transform .3s cubic-bezier(.2,.8,.2,1)}.vinyl-experience .vx-player-heading .vx-return .vx-link-dot{display:none}.vx-return-stack{position:relative;display:block;width:30px;height:22px;flex:none}.vx-return-stack i{position:absolute;top:1px;left:6px;width:20px;height:20px;border-radius:2px;background:#ccc center/cover;box-shadow:0 1px 3px #0003;transition:transform .35s cubic-bezier(.2,.8,.2,1)}.vx-return-stack i:nth-child(1){transform:translate(-6px) rotate(-10deg) scale(.86)}.vx-return-stack i:nth-child(3){transform:translate(6px) rotate(10deg) scale(.86)}.vx-return-stack i:nth-child(2){z-index:2}@media(hover:hover)and (pointer:fine){.vinyl-experience .vx-player-heading .vx-return:hover{background:var(--glass,#fff);border-color:color-mix(in srgb,var(--ink) 25%,var(--line))}.vinyl-experience .vx-player-heading .vx-return:hover>svg{transform:translate(-3px)}.vx-return:hover .vx-return-stack i:nth-child(1){transform:translate(-10px) rotate(-16deg) scale(.86)}.vx-return:hover .vx-return-stack i:nth-child(3){transform:translate(10px) rotate(16deg) scale(.86)}}.vinyl-experience .vx-player-heading .vx-return:active{transform:scale(.97)}@media(min-width:601px){.vinyl-experience .vx-player-layout>.vx-deck-wrap{width:100%;max-width:max(380px,calc((100svh - 250px)*1.03));justify-self:center}}@media(max-width:600px){.vinyl-experience .vx-player-heading .vx-return{padding:4px 12px 4px 8px;min-height:40px;font-size:12px}.vx-return-stack{width:26px}.vx-return-stack i{width:18px;height:18px}}@media(prefers-reduced-motion:reduce){.vx-return-stack i,.vinyl-experience .vx-player-heading .vx-return>svg{transition:none}}.project-next-feature{width:auto;max-width:min(720px,calc(100% - (2*clamp(24px,4vw,64px))));margin:clamp(40px,5vw,64px) auto 0;aspect-ratio:12/5;min-height:200px;border-radius:20px}.pnf-copy strong{font-size:clamp(28px,3.4vw,46px)}.pnf-arrow{width:46px;height:46px}#project-dialog .project-dialog-content{padding-bottom:max(36px,env(safe-area-inset-bottom))}@media(max-width:600px){.project-next-feature{max-width:none;margin:36px 16px 0;aspect-ratio:16/10}.pnf-copy strong{font-size:30px}#project-dialog .project-dialog-content{padding-bottom:max(24px,env(safe-area-inset-bottom))}}.project-close-veil{position:fixed;inset:0;z-index:99;pointer-events:none}.folio-stage{overscroll-behavior-x:contain}.vx-sleeve.is-landing .vx-sleeve-visual{transition:none}body.night .intro-loader{background:#252a35;color:#edf0f5}body.night .intro-mark{filter:invert(.93)}.intro-stack{display:grid;justify-items:center;gap:20px;transition:transform .7s cubic-bezier(.6,0,.2,1)}.intro-mark{width:min(38vw,150px)}@keyframes intro-quarter{0%{opacity:0;transform:var(--from) scale(.88)}55%{opacity:1}80%{transform:scale(1.015)}to{opacity:1;transform:none}}.intro-spark-top{clip-path:polygon(50% 0,63% 9.6%,50% 20%,37% 9.6%);transform-origin:50% 9.6%}.intro-spark-bottom{clip-path:polygon(50% 80%,63% 90.4%,50% 100%,37% 90.4%);transform-origin:50% 90.4%}@keyframes intro-twinkle{0%,to{opacity:0;transform:scale(1)}40%{opacity:.45;transform:scale(1.09)}70%{opacity:.15;transform:scale(1.03)}}.intro-sheen{position:absolute;inset:0;pointer-events:none;-webkit-mask:url(/assets/auriane-logo.png) center/100% 100% no-repeat;mask:url(/assets/auriane-logo.png) center/100% 100% no-repeat;overflow:hidden}.intro-sheen:before{content:"";position:absolute;top:0;bottom:0;left:-60%;width:60%;background:linear-gradient(115deg,transparent 15%,#ff9fc2 42%,#ffe3ee 50%,#ff9fc2 58%,transparent 85%);opacity:0;transform:translate(0);animation:intro-sheen 1.2s cubic-bezier(.45,0,.2,1) 1.05s forwards}body.night .intro-sheen{filter:invert(.93)}@keyframes intro-sheen{0%{opacity:1;transform:translate(0)}85%{opacity:1}to{opacity:0;transform:translate(270%)}}.intro-caption{margin:0;padding-left:.24em;font-size:11px;font-weight:550;letter-spacing:.24em;text-transform:uppercase;color:inherit;opacity:0;animation:intro-caption .8s cubic-bezier(.2,.8,.2,1) .65s forwards}@keyframes intro-caption{0%{opacity:0;transform:translateY(6px)}to{opacity:.7;transform:none}}.intro-progress{display:block;width:72px;height:2px;border-radius:2px;background:color-mix(in srgb,currentColor 12%,transparent);overflow:hidden}.intro-progress i{display:block;height:100%;background:#ffb7cf;transform:scaleX(0);transform-origin:0 50%;animation:intro-progress 1.55s cubic-bezier(.3,.6,.2,1) .2s forwards}@keyframes intro-progress{to{transform:scaleX(1)}}html.intro-opening .intro-caption,html.intro-opening .intro-progress{opacity:0!important;transition:opacity .25s ease}html.intro-opening .intro-stack{transform:translateY(-20px)}html.intro-returning :is(.intro-sheen,.intro-caption,.intro-progress){display:none}.vinyl-experience .vx-player-heading .vx-return{white-space:nowrap;flex:none}.project-gallery{--gallery-height:clamp(300px,26vw,540px);position:relative;width:100%;min-width:0;color:inherit;isolation:isolate}.project-gallery-stage{position:relative;height:var(--gallery-height);overflow:hidden;outline:none;touch-action:pan-y pinch-zoom;cursor:grab;contain:layout paint;user-select:none;-webkit-user-select:none}.project-gallery:not(.has-webgl) .project-gallery-stage{touch-action:auto}.gallery-native-fallback .project-gallery-image img{opacity:1;transform:none}.project-gallery-stage:focus-visible{outline:2px solid currentColor;outline-offset:-5px;border-radius:22px}.project-gallery.is-dragging .project-gallery-stage{cursor:grabbing}.project-gallery-track{display:flex;gap:20px;height:100%;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain;box-sizing:border-box}.project-gallery-track::-webkit-scrollbar{display:none}.project-gallery-image{flex:0 0 auto;width:min(76vw,520px);height:100%;margin:0;scroll-snap-align:center;scroll-snap-stop:normal;overflow:hidden;border-radius:20px;background:#f3f2ef}.project-gallery-image img{display:block;width:100%;height:100%;object-fit:contain;pointer-events:none;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.project-gallery-image figcaption{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.project-gallery canvas{position:absolute;inset:0;display:block;width:100%;height:100%;pointer-events:none;opacity:0;transition:opacity .24s ease}.project-gallery.has-webgl canvas{opacity:1}.project-gallery.has-webgl .project-gallery-track{opacity:0;pointer-events:none;overflow:hidden}.project-gallery-meta{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding:25px clamp(24px,4vw,64px) 0;font-size:11px;line-height:1.5;letter-spacing:.015em}.project-gallery-caption{margin:0;max-width:540px;color:color-mix(in srgb,currentColor 62%,transparent)}.project-gallery-caption strong{font-weight:500;color:inherit;font-variant-numeric:tabular-nums;white-space:nowrap;margin-right:12px}.project-gallery-navigation{display:flex;align-items:center;gap:10px;flex:0 1 auto;min-width:0;max-width:100%;margin-top:-8px}.project-gallery-direction{appearance:none;border:0;border-radius:100px;background:transparent;color:inherit;font:inherit;font-size:10px;padding:10px 8px;min-height:36px;cursor:pointer;transition:background .18s ease,opacity .18s ease}.project-gallery-direction[aria-disabled=true]{opacity:.28;cursor:default}.project-gallery-dots{position:relative;display:flex;gap:2px;align-items:center;min-width:0;overflow-x:auto;scrollbar-width:none;overscroll-behavior-x:contain}.project-gallery-dots::-webkit-scrollbar{display:none}.project-gallery-dot{position:relative;display:grid;place-items:center;appearance:none;flex:0 0 30px;min-width:30px;height:36px;padding:0;background:transparent;border:0;border-radius:100px;cursor:pointer;color:inherit}.project-gallery-dot span{display:block;width:5px;height:5px;border-radius:50%;background:currentColor;opacity:.25;transition:opacity .18s ease,transform .22s ease}.project-gallery-dot[aria-current=true] span{opacity:1;transform:scale(1.25)}.project-gallery-direction:focus-visible,.project-gallery-dot:focus-visible{outline:2px solid currentColor;outline-offset:2px}.project-gallery-hint{padding:5px clamp(24px,4vw,64px) 0;margin:0;color:color-mix(in srgb,currentColor 40%,transparent);font-size:10px;letter-spacing:.025em}.project-gallery[data-count="1"] .project-gallery-navigation,.project-gallery[data-count="1"] .project-gallery-hint{display:none}.project-gallery[data-count="1"] .project-gallery-stage{cursor:default}@media(hover:hover)and (pointer:fine){.project-gallery-direction:hover:not([aria-disabled=true]){background:color-mix(in srgb,currentColor 6%,transparent)}.project-gallery-dot:hover span{opacity:.75;transform:scale(1.5)}}@media(max-width:600px){.project-gallery{--gallery-height:clamp(270px,80vw,420px)}.project-gallery-meta{gap:12px;flex-wrap:wrap;padding-top:18px}.project-gallery-caption{font-size:10px;flex:1 1 100%}.project-gallery-navigation{width:100%;justify-content:space-between;margin-top:0}.project-gallery-direction{font-size:11px;min-height:44px;padding:10px 0}.project-gallery-dot{min-width:36px;height:44px}.project-gallery-hint{padding-top:0;font-size:9px}.project-gallery-image{border-radius:16px}}@media(prefers-reduced-motion:reduce){.project-gallery *{scroll-behavior:auto!important}.project-gallery canvas,.project-gallery-dot span,.project-gallery-direction{transition:none}}
