@font-face{font-family:Montserrat;font-style:normal;font-weight:400;font-display:swap;src:url(../media/8298327da6d5bcce-s.3q4n78m6muld7.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Montserrat;font-style:normal;font-weight:400;font-display:swap;src:url(../media/44fac91e6f2d2b1b-s.1d_6dtvtn9g3_.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Montserrat;font-style:normal;font-weight:400;font-display:swap;src:url(../media/2b402d8aebffd579-s.16nfeub7ja6ze.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Montserrat;font-style:normal;font-weight:400;font-display:swap;src:url(../media/a88409fdd7dc121c-s.1mvr14jy3vxq7.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Montserrat;font-style:normal;font-weight:400;font-display:swap;src:url(../media/e8f2fbee2754df70-s.p.1dqa_6e_ad4sj.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Montserrat;font-style:normal;font-weight:600;font-display:swap;src:url(../media/8298327da6d5bcce-s.3q4n78m6muld7.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Montserrat;font-style:normal;font-weight:600;font-display:swap;src:url(../media/44fac91e6f2d2b1b-s.1d_6dtvtn9g3_.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Montserrat;font-style:normal;font-weight:600;font-display:swap;src:url(../media/2b402d8aebffd579-s.16nfeub7ja6ze.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Montserrat;font-style:normal;font-weight:600;font-display:swap;src:url(../media/a88409fdd7dc121c-s.1mvr14jy3vxq7.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Montserrat;font-style:normal;font-weight:600;font-display:swap;src:url(../media/e8f2fbee2754df70-s.p.1dqa_6e_ad4sj.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Montserrat Fallback;src:local(Arial);ascent-override:85.79%;descent-override:22.25%;line-gap-override:0.0%;size-adjust:112.83%}.montserrat_82ccedb4-module__6CmpkG__className{font-family:Montserrat,Montserrat Fallback;font-style:normal}.montserrat_82ccedb4-module__6CmpkG__variable{--font-montserrat:"Montserrat", "Montserrat Fallback"}
@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.fixed{position:fixed}.static{position:static}.flex{display:flex}.grid{display:grid}.h-full{height:100%}.min-h-full{min-height:100%}.resize{resize:both}.flex-col{flex-direction:column}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--paper:#f0f0ef;--ink:#141414;--surface:#fff;--card-placeholder:#d9d9d9;--placeholder:#a4a4a2;--ink-06:#1414140f;--ink-08:#14141414;--ink-10:#1414141a;--ink-35:#14141459;--ink-40:#14141466;--ink-45:#14141473;--ink-50:#14141480;--ink-55:#1414148c;--ink-58:#14141494;--ink-60:#14141499;--ink-70:#141414b3;--ink-78:#141414c7;--ink-80:#141414cc;--shadow-04:#0000000a;--shadow-05:#0000000d;--shadow-06:#0000000f;--shadow-08:#00000014;--shadow-10:#0000001a;--shadow-16:#00000029;--shadow-20:#0003;--card-shadow-color:#0000001a;--card-shadow-color-hover:#00000029;--cta-bg:#000;--cta-fg:#fff;--pill-active-bg:#141414;--pill-active-fg:#fff;--toast-bg:#141414e0;--toast-fg:#fff;--glass-bg:#e9e9e9a1;--glass-border:#ffffffe6;--code-bg:#1717170f;--typing-dot:#17171766;--nav-bg:#ffffffb3;--nav-border:#1414140f;--dot-color:#171717}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);font-family:var(--font-montserrat), "MiSans", "PingFang SC", "Helvetica Neue", Arial, sans-serif;margin:0;font-weight:400;transition:background-color .3s,color .3s}a{color:inherit;text-decoration:none}button,input{font:inherit;color:inherit}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.portfolio-shell{background:var(--paper);justify-content:center;align-items:center;height:100svh;display:flex;overflow:hidden}.stage{z-index:2;aspect-ratio:1440/1080;background:0 0;width:min(1440px,100vw,133.333svh);position:relative;overflow:hidden;container-type:inline-size}.dot-field{z-index:0;pointer-events:none;width:100%;height:100%;display:block;position:absolute;inset:0}.dot-field-fixed{z-index:0;width:100vw;height:100svh;position:fixed;inset:0}.hero{width:100%;height:100%;position:relative}.hero-intro{display:none}.top-nav{z-index:20;border:1px solid var(--nav-border);background:var(--nav-bg);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);width:480px;height:56px;box-shadow:0 0 20px var(--shadow-10);border-radius:14px;align-items:center;padding:6px 6px 6px 26px;display:flex;position:fixed;top:24px;left:50%;transform:translate(-50%)}.nav-links{align-items:center;gap:28px;margin-right:auto;display:flex}.nav-links a{color:var(--ink-58);font-size:15px;font-weight:500;transition:color .2s,font-weight .2s}.nav-links a:hover,.nav-links a[data-active=true]{color:var(--ink);font-weight:600}.nav-cta{background:var(--cta-bg);height:42px;color:var(--cta-fg);white-space:nowrap;border-radius:8px;justify-content:center;align-items:center;padding:0 20px;font-size:14px;font-weight:400;transition:transform .2s;display:inline-flex}.nav-cta:hover{transform:scale(1.03)}.nav-cta-icon{display:none}@container (max-width:520px){.top-nav{width:calc(100% - 32px)}}.works{z-index:2;position:absolute;inset:0}.work-card{background:var(--card-placeholder);filter:drop-shadow(0 10px 16px var(--card-shadow-color));border-radius:1.0417cqw;transition:transform .25s,filter .25s;display:block;position:absolute;overflow:hidden}.work-card:hover{z-index:10;filter:drop-shadow(0 16px 24px var(--card-shadow-color-hover));transform:translateY(-4px)}.card-art{position:absolute;inset:0;overflow:hidden}.card-art img,.card-art video{transition:transform .5s cubic-bezier(.22,1,.36,1);display:block}.card-art img.card-art-mobile{display:none}@media (max-width:720px){.card-art img.card-art-desktop{display:none}.card-art img.card-art-mobile{display:block}}.work-card:hover .card-art img,.work-card:hover .card-art video{transform:scale(1.06)}.card-shade{background:linear-gradient(#22262d00,#22262d8c);position:absolute;bottom:0;left:0;right:0}.card-arrow{transform-origin:50%;width:3.4167cqw;height:3.4167cqw;transition:transform .2s;position:absolute}.card-arrow-ring{transition:fill-opacity .2s,stroke-opacity .2s}.card-arrow-glyph{transition:stroke-opacity .2s}.work-card:hover .card-arrow{transform:scale(1.1)}.work-card:hover .card-arrow-ring{fill-opacity:.35!important;stroke-opacity:.95!important}.work-card:hover .card-arrow-glyph{stroke-opacity:1!important}.card-copy{color:#fff;padding:0 2cqw 1.7cqw;position:absolute;inset:auto 0 0}.card-copy h2{margin:0;font-weight:600;line-height:1.1}.card-copy p{margin:.4167cqw 0 0;font-weight:400;line-height:1.3}.card-sketchbook .card-copy p,.card-culture .card-copy p{display:none}.card-sketchbook{width:19.36cqw;height:16.13cqw;top:12.9167cqw;left:.5cqw}.card-sketchbook .card-shade{height:33%}.card-sketchbook .card-arrow{top:1.4722cqw;left:14.5cqw}.card-contact .card-arrow,.card-culture .card-arrow{top:1.4722cqw;left:14.64cqw}.card-sketchbook .card-copy h2{font-size:2cqw}.card-contact .card-copy h2,.card-culture .card-copy h2{font-size:2.15cqw}.card-brand{width:25cqw;height:34cqw;top:15cqw;left:24cqw}.card-about{width:24cqw;height:32.18cqw;top:27cqw;left:53cqw}.card-brand .card-shade,.card-about .card-shade{height:27%}.card-brand .card-arrow{top:1.6389cqw;left:20cqw}.card-about .card-arrow{top:1.6389cqw;left:19cqw}.card-brand .card-copy h2,.card-about .card-copy h2{font-size:2.3cqw;font-weight:600}.card-brand .card-copy p,.card-about .card-copy p{max-width:19.5cqw;font-size:1.05cqw;font-weight:400}.card-contact{width:19.5cqw;height:19.2cqw;top:8cqw;left:79cqw}.card-culture{width:19.5cqw;height:19.2cqw;top:48.4722cqw;left:2.5cqw}.card-contact .card-shade,.card-culture .card-shade{height:46%}@keyframes card-float-a{0%,to{translate:0}50%{translate:0 -9px}}@keyframes card-float-b{0%,to{translate:0}50%{translate:-6px -6px}}@keyframes card-float-c{0%,to{translate:0}50%{translate:5px -7px}}.card-sketchbook{animation:7s ease-in-out -.5s infinite card-float-a}.card-brand{animation:8.5s ease-in-out -1.5s infinite card-float-b}.card-about{animation:9s ease-in-out -3s infinite card-float-c}.card-contact{animation:7.8s ease-in-out -2s infinite card-float-b}.card-culture{animation:8.2s ease-in-out -4s infinite card-float-a}.mandy-badge{animation:6.5s ease-in-out -1s infinite card-float-c}.badge-card-awards{animation:8s ease-in-out -2.5s infinite card-float-b}@media (prefers-reduced-motion:reduce){.card-sketchbook,.card-brand,.card-about,.card-contact,.card-culture,.mandy-badge,.badge-card-awards{animation:none}}.mandy-badge{z-index:15;background:var(--surface);height:3.6111cqw;box-shadow:0 0 10px var(--shadow-10);color:var(--ink);white-space:nowrap;border-radius:.984cqw;justify-content:center;align-items:center;padding:0 1.25cqw;font-size:1.6389cqw;font-weight:600;display:flex;position:absolute;top:48.3cqw;left:70.8611cqw}.badge-card-awards{z-index:15;background:var(--surface);width:18.5cqw;box-shadow:0 0 20px var(--shadow-10);border-radius:1.4cqw;flex-direction:column;gap:1cqw;padding:1.5cqw;display:flex;position:absolute;top:56cqw;left:81.5cqw}.badge-awards-stat{flex-direction:column;gap:.25cqw;display:flex}.badge-awards-number{color:var(--ink);font-size:3.4cqw;font-weight:700;line-height:1}.badge-awards-label{color:var(--ink-55);white-space:nowrap;font-size:1cqw;font-weight:500;line-height:1.3}.badge-awards-logos{display:flex}.badge-awards-logo{border:2px solid var(--surface);width:3.2cqw;height:3.2cqw;box-shadow:0 1px 4px var(--shadow-10);background:var(--surface);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin-left:-.9cqw;display:inline-flex;position:relative;overflow:hidden}.badge-awards-logo:first-child{margin-left:0}.coming-soon-toast{z-index:100;background:var(--toast-bg);color:var(--cta-fg);white-space:nowrap;box-shadow:0 8px 30px var(--shadow-20);border-radius:14px;justify-content:center;align-items:center;padding:18px 36px;font-size:16px;font-weight:500;animation:.2s coming-soon-fade;display:flex;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}@keyframes coming-soon-fade{0%{opacity:0;transform:translate(-50%,-46%)}to{opacity:1;transform:translate(-50%,-50%)}}.contact-dock{z-index:30;width:31.6667cqw;height:0;position:absolute;top:71.5972cqw;left:50%;transform:translate(-50%)}.contact-pill{cursor:pointer;background:#e2e2e2cc;border-radius:999px;flex-direction:column;justify-content:center;align-items:center;width:8cqw;height:3.5cqw;transition:width .35s cubic-bezier(.2,.8,.2,1),height .35s cubic-bezier(.2,.8,.2,1);display:flex;position:absolute;bottom:0;left:50%;overflow:hidden;transform:translate(-50%)}.contact-dock.is-open .contact-pill{border-radius:999px;width:31.6667cqw;height:12.5cqw}.contact-dots{opacity:.5;justify-content:center;align-items:center;gap:.54cqw;transition:opacity .2s;display:flex;position:absolute;inset:0}.contact-dock.is-open .contact-dots{opacity:0}.contact-dots span{background:var(--ink);border-radius:50%;width:.5cqw;height:.5cqw}.contact-content{opacity:0;pointer-events:none;flex-direction:column;justify-content:center;align-items:center;gap:.9cqw;transition:opacity .25s 50ms,transform .25s 50ms;display:flex;position:absolute;inset:0;transform:scale(.85)}.contact-dock.is-open .contact-content{opacity:1;pointer-events:auto;transform:scale(1)}.contact-items{gap:2.2cqw;display:flex}.contact-item-link{flex-direction:column;align-items:center;gap:.7333cqw;text-decoration:none;display:flex}.contact-item-icon{border-radius:50%;place-items:center;width:3.6667cqw;height:3.6667cqw;display:grid}.contact-item-icon svg{width:1.65cqw;height:1.65cqw}.contact-item-label{color:var(--ink);font-size:1.2833cqw;font-weight:700}.contact-copyright{color:var(--ink-60);white-space:nowrap;font-size:1cqw;font-weight:500}.image-showcase{z-index:1;width:100%;padding:100px 0;position:relative;overflow:hidden}.image-showcase-track{align-items:center;gap:12px;width:max-content;animation:32s linear infinite image-showcase-scroll;display:flex}.image-showcase-item{background:var(--card-placeholder);flex-shrink:0;width:280px;height:350px;position:relative;overflow:hidden}.image-showcase-item--rect{border-radius:24px}.image-showcase-item--circle{border-radius:999px}@keyframes image-showcase-scroll{0%{transform:translate(0)}to{transform:translate(-50%)}}@media (prefers-reduced-motion:reduce){.image-showcase-track{animation:none}}.home-projects{z-index:1;text-align:center;background:var(--paper);max-width:1140px;margin:0 auto;padding:40px 24px 120px;position:relative}.home-projects-heading{flex-direction:column;align-items:center;gap:12px;margin:0 0 48px;display:flex}.home-projects-heading h2{margin:0;font-size:clamp(28px,4vw,36px);font-weight:600}.home-projects-heading p{max-width:520px;color:var(--ink-60);margin:0;font-size:15px;font-weight:400;line-height:1.6}.home-projects-grid{text-align:left;grid-template-columns:repeat(2,1fr);gap:32px;display:grid}.home-project-card{background:var(--surface);border:1px solid var(--ink-10);box-shadow:0 4px 14px var(--shadow-04);border-radius:20px;flex-direction:column;padding:4px;transition:transform .25s,box-shadow .25s;display:flex}.home-project-card:hover{box-shadow:0 12px 28px var(--shadow-08);transform:translateY(-4px)}.home-project-image{aspect-ratio:7/5;background:var(--card-placeholder);border-radius:16px;width:100%;position:relative;overflow:hidden}.home-project-card .work-item-body{padding:14px 12px 16px}.home-projects-cta{color:var(--ink);background:0 0;border:1px solid #14141433;border-radius:999px;align-items:center;gap:8px;margin-top:48px;padding:14px 24px;font-size:14px;font-weight:600;transition:background-color .2s,color .2s,border-color .2s;display:inline-flex}.home-projects-cta:hover{background:var(--cta-bg);color:var(--cta-fg);border-color:var(--cta-bg)}@media (max-width:640px){.image-showcase{padding:64px 0}.image-showcase-item{width:200px;height:250px}.image-showcase-item--rect{border-radius:18px}.home-projects{padding:24px 20px 80px}.home-projects-grid{grid-template-columns:1fr}}.home-awards{z-index:1;text-align:center;background:var(--paper);max-width:1140px;margin:0 auto;padding:0 24px;position:relative}@media (max-width:640px){.home-awards{padding:0 20px}}.site-nav{z-index:50;border:1px solid var(--nav-border);background:var(--nav-bg);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);width:480px;height:56px;box-shadow:0 0 20px var(--shadow-10);border-radius:14px;align-items:center;padding:6px 6px 6px 26px;display:flex;position:fixed;top:24px;left:50%;transform:translate(-50%)}.site-nav-links{align-items:center;gap:28px;margin-right:auto;display:flex}.site-nav-links a{color:var(--ink-58);font-size:15px;font-weight:500;transition:color .2s,font-weight .2s}.site-nav-links a:hover,.site-nav-links a[data-active=true]{color:var(--ink);font-weight:600}.site-nav-cta{background:var(--cta-bg);height:42px;color:var(--cta-fg);white-space:nowrap;border-radius:8px;justify-content:center;align-items:center;padding:0 20px;font-size:14px;transition:transform .2s;display:inline-flex}.site-nav-cta:hover{transform:scale(1.03)}.site-shell{min-height:100vh;position:relative;overflow-x:hidden}.site-main{z-index:1;text-align:center;flex-direction:column;align-items:center;max-width:1140px;margin:0 auto;padding:130px 24px 100px;display:flex;position:relative}.site-footer{z-index:1;border-top:1px solid var(--ink-08);text-align:center;background:var(--paper);flex-direction:column;align-items:center;gap:4px;padding:40px 24px 48px;display:flex;position:relative}.site-footer p{color:var(--ink-50);margin:0;font-size:13px;font-weight:400}.section-title-block{text-align:center;flex-direction:column;align-items:center;gap:12px;margin:0 0 48px;display:flex}.section-title-block h2{margin:0;font-size:clamp(22px,3vw,28px);font-weight:600}.section-subtitle{max-width:560px;color:var(--ink-60);margin:0;font-size:15px;font-weight:400;line-height:1.75}.about-title-sub{max-width:none;color:var(--ink-70);white-space:nowrap;margin:18px 0 0;font-size:clamp(18px,2.4vw,24px);font-weight:400;line-height:1.7}.expertise-grid{text-align:left;grid-template-columns:repeat(3,1fr);gap:20px;width:100%;margin-bottom:120px;display:grid}.expertise-card{background:var(--surface);border:1px solid var(--ink-10);box-shadow:0 4px 14px var(--shadow-04);border-radius:20px;flex-direction:column;padding:26px;transition:transform .25s,box-shadow .25s,border-color .25s;display:flex}.expertise-card:hover{border-color:var(--ink-10);box-shadow:0 12px 28px var(--shadow-08);transform:translateY(-4px)}.expertise-icon{border:1px solid var(--ink-08);background:var(--ink-06);width:46px;height:46px;color:var(--ink);border-radius:12px;place-items:center;margin-bottom:18px;transition:background-color .2s,color .2s,border-color .2s;display:grid}.expertise-card:hover .expertise-icon{background:var(--ink);border-color:var(--ink);color:var(--paper)}.expertise-head{margin-bottom:14px}.expertise-zh{margin:0;font-size:17px;font-weight:700}.expertise-en{letter-spacing:.04em;text-transform:uppercase;color:var(--ink-45);margin-top:4px;font-size:11px;font-weight:500;display:block}.expertise-items{color:var(--ink-60);margin:0;font-size:13px;font-weight:400;line-height:1.65}.best-grid{grid-template-columns:repeat(4,1fr);align-items:stretch;gap:8px;margin:0 0 120px;padding:0 24px;display:grid}.best-card{border:1px solid var(--ink-10);width:calc(100% + 24px);height:145px;box-shadow:0 10px 22px var(--shadow-08);border-radius:22px;flex-direction:column;margin-left:-12px;padding:16px 4px 4px;transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s;display:flex;position:relative}.best-card[data-tilt=a]{z-index:1;transform:rotate(-6deg)translateY(-22px)}.best-card[data-tilt=b]{z-index:1;transform:rotate(6deg)translateY(22px)}.best-card:hover{box-shadow:0 20px 36px var(--shadow-16);z-index:2;transform:rotate(0)translateY(-8px)scale(1.03)}.best-card-title{margin:0;padding:0 14px;font-size:19px;font-weight:700}.best-card-en{letter-spacing:.05em;text-transform:uppercase;opacity:.65;margin:2px 0 16px;padding:0 14px;font-size:10px;font-weight:600;display:block}.best-card-panel{background:#f0f0f1;border-radius:16px;flex:1;justify-content:center;align-items:center;min-height:0;padding:18px 16px;display:flex;overflow:hidden}.best-card-tools{text-align:center;color:#0000008c;margin:0;font-size:13px;font-weight:400;line-height:1.7}.best-card--dark{background:#171717;border-color:#171717}.job-list{text-align:left;flex-direction:column;align-items:center;gap:0;width:100%;margin-bottom:120px;padding:0 24px;display:flex}.job-item{border-bottom:1px solid var(--ink-10);align-items:flex-start;padding:32px 0;display:flex}.job-item:first-child{padding-top:0}.job-company{white-space:nowrap;text-align:left;flex:0 0 240px;margin:0 56px 0 0;font-size:22px;font-weight:600}.job-body{text-align:left;flex:0 0 420px;min-width:0;margin-right:57px}.job-role{color:var(--ink);text-align:left;margin:0 0 8px;font-size:15px;font-weight:600}.job-desc{color:var(--ink-60);text-align:left;margin:0;font-size:14px;font-weight:400;line-height:1.75}.job-note{color:var(--ink);text-align:left;margin:6px 0 0;font-size:14px;font-weight:600;line-height:1.75}.job-year{text-align:right;color:var(--ink);white-space:nowrap;flex:0 0 170px;margin:0;font-size:20px;font-weight:600}.awards-list{flex-direction:column;align-items:center;gap:10px;width:100%;margin-bottom:120px;display:flex}.awards-item{background:var(--surface);border:1px solid var(--ink-10);width:100%;max-width:760px;box-shadow:0 4px 14px var(--shadow-04);border-radius:14px;justify-content:space-between;align-items:center;gap:24px;padding:18px 26px;display:flex}.awards-item-left{align-items:baseline;gap:20px;min-width:0;display:flex}.awards-num{color:var(--ink-40);flex-shrink:0;font-size:13px;font-weight:600}.awards-title{margin:0;font-size:17px;font-weight:600}.awards-detail{color:var(--ink-60);white-space:nowrap;flex-shrink:0;font-size:13px;font-weight:400}.about-title-block{text-align:center;flex-direction:column;align-items:center;max-width:960px;margin:12px 0 80px;display:flex}.about-title-block h1{margin:0;font-size:clamp(34px,5vw,52px);font-weight:600;line-height:1.35}.contact-block{flex-direction:column;align-items:center;gap:32px;display:flex}.contact-item{flex-direction:column;align-items:center;gap:6px;display:flex}.contact-item .label{text-transform:uppercase;letter-spacing:.08em;color:var(--ink-40);font-size:12px}.contact-item a{font-size:18px;font-weight:600;transition:opacity .2s}.contact-item a:hover{opacity:.7}.contact-qr{border:1px solid var(--ink-08);border-radius:12px;width:140px;height:140px}.work-intro{flex-direction:column;align-items:center;max-width:680px;margin:12px 0 64px;display:flex}.work-intro h1{margin:0;font-size:clamp(34px,5vw,52px);font-weight:600;line-height:1.35}.work-filter{background:var(--surface);box-shadow:0 0 20px var(--shadow-08);border-radius:14px;flex-wrap:wrap;justify-content:center;gap:6px;margin:0 0 56px;padding:6px;display:flex}.work-filter button{background:var(--surface);color:var(--ink-60);white-space:nowrap;cursor:pointer;border:0;border-radius:10px;padding:10px 20px;font-size:14px;font-weight:700;transition:background .2s,color .2s}.work-filter button:hover{color:var(--ink)}.work-filter button[data-active=true]{background:var(--pill-active-bg);color:var(--pill-active-fg)}.work-grid{text-align:left;grid-template-columns:repeat(2,1fr);gap:48px 32px;width:100%;display:grid}.work-item{flex-direction:column;display:flex}.work-item-image{aspect-ratio:7/5;background:var(--card-placeholder);border-radius:20px;width:100%;transition:transform .25s;position:relative;overflow:hidden}.work-item:hover .work-item-image{transform:translateY(-4px)}.work-item-body{flex-direction:column;gap:8px;padding-top:20px;display:flex}.work-item-head{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.work-item-head h3{margin:0;font-size:20px;font-weight:600}.work-item-head .tag{color:var(--ink-45);white-space:nowrap;font-size:13px;font-weight:400}.work-item-body p{color:var(--ink-55);margin:0;font-size:14px;font-weight:400;line-height:1.5}.work-item--coming-soon{text-align:left;cursor:pointer;background:0 0;border:0;padding:0}@media (max-width:640px){.work-grid{grid-template-columns:1fr}.work-filter{scrollbar-width:none;-webkit-overflow-scrolling:touch;flex-wrap:nowrap;justify-content:flex-start;width:100%;overflow-x:auto}.work-filter::-webkit-scrollbar{display:none}.work-filter button{flex-shrink:0}.site-nav,.top-nav{width:calc(100% - 32px);padding:6px 6px 6px 20px}.nav-links,.site-nav-links{scrollbar-width:none;-webkit-overflow-scrolling:touch;flex-shrink:1;gap:22px;min-width:0;overflow-x:auto}.nav-links::-webkit-scrollbar{display:none}.site-nav-links::-webkit-scrollbar{display:none}.nav-links a,.site-nav-links a{flex-shrink:0;font-size:14px}.nav-cta,.site-nav-cta{flex-shrink:0;padding:0 16px;font-size:13px}.site-main{padding-top:110px}}@media (max-width:1080px){.expertise-grid,.best-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:640px){.about-hero{flex-direction:column}.about-hero-photo{flex:none;width:100%;max-width:320px}.about-hero-copy,.about-hero-list{text-align:center;max-width:none}.about-hero-list{align-items:center}.job-list{align-items:stretch}.job-item{flex-direction:column;justify-content:flex-start;gap:12px;width:100%}.job-company{white-space:normal;flex:none;margin:0}.job-body{flex:none;width:100%;margin:0}.job-year{text-align:left;flex:none}.job-desc{max-width:none}.expertise-grid{grid-template-columns:1fr}.best-grid{grid-template-columns:1fr;gap:32px;padding:0 16px}.best-card{width:100%;margin:0}.best-card[data-tilt=a]{transform:rotate(-4deg)translate(-10px)}.best-card[data-tilt=b]{transform:rotate(4deg)translate(10px)}.best-card-panel{padding:18px 14px}.awards-item{gap:10px;padding:14px 16px}.awards-item-left{gap:10px}.awards-title{font-size:15px}.awards-detail{font-size:12px}}.project-detail{text-align:left;align-items:stretch;max-width:1140px}.project-title-block{margin:0 0 32px}.project-tag{color:var(--ink-40);margin-bottom:10px;font-size:13px;font-weight:600;display:block}.project-title-block h1{margin:0;font-size:clamp(28px,4.5vw,44px);font-weight:600;line-height:1.15}.project-hero{aspect-ratio:16/9;border-radius:24px;width:100%;margin-bottom:56px;position:relative;overflow:hidden}.project-overview{grid-template-columns:1fr 2fr;gap:56px;margin-bottom:64px;display:grid}.project-meta-sidebar{flex-direction:column;gap:28px;display:flex}.project-meta-item{flex-direction:column;gap:6px;display:flex}.project-meta-item .label{text-transform:uppercase;letter-spacing:.08em;color:var(--ink-40);font-size:12px}.project-meta-item .value{color:var(--ink);font-size:15px;font-weight:500;line-height:1.5}a.project-meta-item .value:hover{opacity:.7}.project-narrative{flex-direction:column;gap:20px;display:flex}.project-narrative p{color:var(--ink-80);margin:0;font-size:16px;font-weight:400;line-height:1.8}.project-gallery{flex-direction:column;gap:20px;margin-bottom:64px;display:flex}.project-gallery-item{background:var(--card-placeholder);border-radius:16px;width:100%;overflow:hidden}.project-gallery-item img{width:100%;height:auto;display:block}.project-gallery--two{grid-template-columns:1fr 1fr;align-items:start;display:grid}.project-related{margin-bottom:40px}.project-related-head{justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;display:flex}.project-related-head h2{margin:0;font-size:clamp(20px,2.5vw,26px);font-weight:600}.project-related-arrows{gap:8px;display:flex}.project-related-arrows button{border:1px solid var(--ink-10);background:var(--surface);width:40px;height:40px;color:var(--ink);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;transition:background-color .2s,opacity .2s;display:flex}.project-related-arrows button svg{width:18px;height:18px}.project-related-arrows button:hover:not(:disabled){background:var(--ink-06)}.project-related-arrows button:disabled{opacity:.35;cursor:default}.project-related-track{scroll-snap-type:x mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch;gap:24px;display:flex;overflow-x:auto}.project-related-track::-webkit-scrollbar{display:none}.project-related-item{scroll-snap-align:start;flex-direction:column;flex:0 0 280px;gap:10px;display:flex}.project-related-image{aspect-ratio:7/5;border-radius:16px;width:100%;transition:transform .25s;position:relative;overflow:hidden}.project-related-item:hover .project-related-image{transform:translateY(-4px)}.project-related-tag{color:var(--ink-45);font-size:12px;font-weight:500}.project-related-title{color:var(--ink);font-size:16px;font-weight:600}@media (max-width:640px){.project-overview{grid-template-columns:1fr;gap:32px}.project-related-item{flex-basis:62vw}.project-gallery--two{grid-template-columns:1fr}.about-title-sub{white-space:normal}}.sketchbook-main{max-width:1400px}.sketchbook-title-block{text-align:center;flex-direction:column;align-items:center;max-width:640px;margin:12px 0 64px;display:flex}.sketchbook-title-block h1{margin:0;font-size:clamp(34px,5vw,52px);font-weight:600;line-height:1.35}.sketchbook-subtitle{max-width:none;color:var(--ink-60);margin:18px 0 0;font-size:clamp(15px,1.6vw,17px);font-weight:400;line-height:1.75}.sketchbook-masonry{column-count:4;column-gap:34px;width:100%}.sketchbook-item{break-inside:avoid;background:var(--card-placeholder);opacity:0;border-radius:16px;margin-bottom:34px;overflow:hidden;transform:translateY(64px)scale(1.06)}.sketchbook-item.is-in{animation:sketchbook-fly-in 1s cubic-bezier(.16, 1, .3, 1) var(--stagger,0s) both}@keyframes sketchbook-fly-in{0%{opacity:0;transform:translateY(64px)scale(1.06)}to{opacity:1;transform:translateY(0)scale(1)}}@media (prefers-reduced-motion:reduce){.sketchbook-item{opacity:1;animation:none;transform:none}}.sketchbook-item img,.sketchbook-item video{object-fit:cover;width:100%;height:100%;transition:transform .35s;display:block}.sketchbook-item:hover img,.sketchbook-item:hover video{transform:scale(1.06)}@media (max-width:1080px){.sketchbook-masonry{column-count:3}}@media (max-width:720px){.sketchbook-masonry{column-count:2;column-gap:20px}.sketchbook-item{border-radius:12px;margin-bottom:20px}html:has(.portfolio-shell){height:auto}.portfolio-shell{height:auto;min-height:100svh;display:block;overflow:visible}.stage{aspect-ratio:auto;width:100%;max-width:100%;height:auto;padding:110px 24px 48px;overflow:visible;container-type:normal}.dot-field{z-index:0;width:100vw;height:100svh;position:fixed;inset:0}.hero{height:auto}.hero-intro{text-align:center;margin:0 0 32px;display:block}.hero-intro-eyebrow{letter-spacing:.04em;color:var(--ink-50);margin:0 0 12px;font-size:13px;font-weight:600}.hero-intro-title{letter-spacing:-.01em;color:var(--ink);margin:0;font-size:clamp(28px,8vw,36px);font-weight:700;line-height:1.18}.top-nav{position:fixed}.works{flex-direction:column;gap:20px;display:flex;position:static;inset:auto}.card-brand{order:1}.card-culture{order:2}.card-sketchbook{order:3}.card-about{order:4}.card-contact{order:5}.work-card{aspect-ratio:3/2;border-radius:20px;width:100%;height:auto;animation:none;position:static;top:auto;left:auto;translate:none}.work-card:hover{transform:none}.card-sketchbook,.card-brand,.card-about,.card-contact,.card-culture{width:100%;height:auto;top:auto;left:auto}.card-shade{height:55%}.card-copy{padding:0 22px 20px}.card-copy h2{font-size:22px}.card-copy p{max-width:34ch;margin-top:6px;font-size:14px}.card-sketchbook .card-copy h2,.card-contact .card-copy h2,.card-culture .card-copy h2,.card-brand .card-copy h2,.card-about .card-copy h2{font-size:22px}.card-brand .card-copy p,.card-about .card-copy p{max-width:34ch;font-size:14px}.card-sketchbook .card-copy p,.card-culture .card-copy p{max-width:34ch;font-size:14px;display:block}.card-sketchbook .card-arrow,.card-contact .card-arrow,.card-culture .card-arrow,.card-brand .card-arrow,.card-about .card-arrow{width:40px;height:40px;top:16px;left:auto;right:16px}.mandy-badge,.badge-card-awards{display:none}.contact-dock{width:100%;height:100px;margin-top:20px;position:relative;top:auto;left:auto;transform:none}.contact-dock.is-open{height:192px}.contact-pill{width:115px;height:50px}.contact-dock.is-open .contact-pill{border-radius:999px;width:336px;height:180px}.contact-dots{gap:6px}.contact-dots span{width:5px;height:5px}.contact-content{gap:12px}.contact-items{gap:26px}.contact-item-icon{width:53px;height:53px}.contact-item-icon svg{width:24px;height:24px}.contact-item-label{font-size:18px}.contact-copyright{font-size:13px}}
