.portfolio-preview{--paper:#f0eddb;--ease-out:cubic-bezier(.23,1,.32,1);background:#293524;color:var(--paper);padding:20px;font-family:Manrope,Microsoft YaHei,sans-serif;min-height:100svh}.portfolio-preview *{box-sizing:border-box}.portfolio-preview button{font:inherit;cursor:pointer;touch-action:manipulation}.portfolio-preview button:focus-visible,.portfolio-preview a:focus-visible{outline:3px solid #ffbc65;outline-offset:5px}.portfolio-stage{position:relative;isolation:isolate;min-height:740px;height:calc(100svh - 40px);overflow:hidden;border-radius:5px;background:radial-gradient(ellipse at 69% 40%,#7c816c,#747965 39%,#707360 77%,#6b705b)}.portfolio-stage:after,.portfolio-dialog:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:15;opacity:.11;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.86' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23fff' filter='url(%23n)' d='M0 0h180v180H0z'/%3E%3C/svg%3E")}.portfolio-light{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse at 15% 12%,#d5d1a420,transparent 65%);pointer-events:none}.portfolio-nav{position:relative;z-index:5;display:flex;align-items:center;justify-content:space-between;margin:0 5%;height:108px;border-bottom:1px solid #e5e8d426}.portfolio-brand{font-size:28px;font-weight:800;letter-spacing:-1.5px;color:var(--paper);text-decoration:none}.portfolio-brand span{color:#ffab43}.portfolio-nav nav{display:flex;gap:32px;font-size:13px}.portfolio-nav nav a{color:var(--paper);text-decoration:none;padding:12px 0;position:relative}.portfolio-nav nav a[aria-current]:after{content:"";position:absolute;bottom:4px;left:0;width:100%;height:1px;background:#edb369}.portfolio-nav>span{font-size:10px;line-height:1.8;text-align:right;letter-spacing:.08em}.portfolio-nav small{font-size:9px;letter-spacing:0}.portfolio-heading{position:absolute;z-index:4;top:20%;left:6%;max-width:56%;opacity:0;transform:translateY(12px);transition:opacity .5s var(--ease-out),transform .5s var(--ease-out)}.portfolio-chapter{font-size:10px;letter-spacing:.14em;margin:0 0 15px}.portfolio-heading h1{font-family:Impact,Arial Narrow,sans-serif;font-weight:400;font-size:clamp(64px,6.6vw,116px);line-height:.96;letter-spacing:-.025em;margin:0;white-space:nowrap}.portfolio-intro{font-size:14px;line-height:1.95;margin:22px 0 0;letter-spacing:.04em;color:#e7e8d7}.portfolio-person{position:absolute;z-index:1;width:84%;max-width:1480px;right:0;bottom:22px;pointer-events:none;opacity:0;transition:opacity .65s var(--ease-out) .15s}.portfolio-seated{position:relative!important;margin:0!important;max-width:none!important;width:100%}.portfolio-seated .character-video-frame{border:0!important;border-radius:0!important;background:transparent!important;overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 36%),linear-gradient(180deg,transparent,#000 9%,#000 96%,transparent);mask-composite:intersect;-webkit-mask-image:linear-gradient(90deg,transparent,#000 36%),linear-gradient(180deg,transparent,#000 9%,#000 96%,transparent);-webkit-mask-composite:source-in}.portfolio-seated .character-video-frame:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(#7b856d,transparent 12%);-webkit-mask-image:linear-gradient(#000,transparent 10%);mask-image:linear-gradient(#000,transparent 10%)}.portfolio-seated img,.portfolio-seated video{object-fit:contain!important;filter:saturate(.86)}.portfolio-seated figcaption{position:absolute;bottom:60px;right:5.8%;z-index:3;pointer-events:auto;font-size:10px;color:var(--paper);background:none;border:0;padding:0}.portfolio-seated figcaption button{color:var(--paper);border:1px solid #f0eddb70;border-radius:100px;padding:10px 16px;background:#3c4d3570;font-size:10px;min-height:40px}.portfolio-bag-stage{position:absolute;left:5%;bottom:14%;width:48%;height:39%;min-height:280px;z-index:3;display:flex;align-items:center;justify-content:center;opacity:0;transform:translateY(14px);transition:opacity .5s var(--ease-out) .1s,transform .5s var(--ease-out) .1s}.portfolio-pack-trigger{display:flex;flex-direction:column;align-items:center;gap:34px;border:0;padding:20px;background:transparent;color:var(--paper);transition:transform .3s var(--ease-out)}.portfolio-click-cue{display:flex;align-items:center;gap:10px;font-size:11px;letter-spacing:.04em}.portfolio-click-cue>span{font-size:18px}.portfolio-bag-index{position:absolute;left:1%;bottom:10%;font-size:8px;line-height:1.7;letter-spacing:.12em;color:#dce0cd}.portfolio-bag-floor{position:absolute;width:70%;height:20%;bottom:18%;border-radius:50%;background:radial-gradient(ellipse,#26362142,transparent 70%);pointer-events:none}.portfolio-preview[data-entered=true] .portfolio-heading,.portfolio-preview[data-entered=true] .portfolio-person,.portfolio-preview[data-entered=true] .portfolio-bag-stage{opacity:1;transform:none}.bag-model{--bag-width:clamp(300px,29vw,460px);position:relative;display:block;width:var(--bag-width);height:calc(var(--bag-width)*.62);perspective:1100px}.bag-model span{display:block}.bag-geometry{position:absolute;top:0;right:0;bottom:0;left:0;transform:rotateX(7deg) rotateY(-11deg) rotate(-4deg);transform-style:preserve-3d}.bag-shadow{position:absolute;top:82%;right:1%;bottom:-5%;left:1%;background:radial-gradient(ellipse,#25331bc0,transparent 72%);transform:translateY(20px);opacity:.65;transition:opacity .3s var(--ease-out)}.bag-back{position:absolute;top:6%;right:0;bottom:2%;left:0;border-radius:15px 20px 21px 21px;background:linear-gradient(130deg,#d7771c,#ffa638 50%,#b35b0e);box-shadow:inset 0 2px 2px #ffd177aa,5px 6px #a65c16,8px 10px #985011}.bag-tab{position:absolute;left:7%;top:-7%;width:29%;height:15%;border-radius:9px 9px 0 0;background:linear-gradient(#ffd382,#ed962c);box-shadow:inset 0 1px #ffdda9}.bag-lining{position:absolute;top:6%;right:3%;bottom:4%;left:3%;border-radius:12px;background:linear-gradient(160deg,#9a4a13,#cf7426);box-shadow:inset 0 5px 12px #61320e60}.bag-gusset{position:absolute;top:17%;right:-2%;bottom:0;left:1%;background:linear-gradient(90deg,#b86414,#d77519);border-radius:15px 19px 22px 20px;transform:translateZ(3px);box-shadow:4px 7px #a15816}.bag-tabs{position:absolute;left:10%;right:5%;top:4%;height:20%;display:flex!important;gap:4px;transform:translateZ(4px)}.bag-tabs>span{flex:1;border-radius:6px 6px 0 0;background:#e5dec7;color:#655b3d;font-size:7px;font-weight:700;letter-spacing:.06em;padding:9px 0 0;text-align:center;box-shadow:inset 0 2px #fffae9}.bag-tabs>span:nth-child(2){background:#d5d8c2}.bag-tabs>span:nth-child(3){background:#e2c292}.bag-lid{position:absolute;top:15%;right:0;bottom:0;left:0;border-radius:16px 21px 22px 22px;background:linear-gradient(135deg,#ffaf48,#f09329 37%,#df7d1e 77%,#cd6914);box-shadow:inset 1px 2px 2px #ffd291,inset -2px -3px 4px #ae551a,0 -2px 2px #aa5b18;transform-origin:50% 100%;transform:translateZ(14px);transition:transform .42s var(--ease-out);transform-style:preserve-3d;backface-visibility:hidden}.bag-model[data-expanded=true] .bag-lid{transform:translateZ(14px) rotateX(-57deg)}.bag-seam{position:absolute;top:7px;right:7px;bottom:7px;left:7px;border:1px solid #ffd48a48;border-radius:11px 16px 16px;box-shadow:0 1px 1px #b35e1740}.bag-wordmark{position:absolute;left:8%;top:21%;font-family:Impact,Arial Narrow,sans-serif;font-size:calc(var(--bag-width)*.155);letter-spacing:-.025em;line-height:1;color:#fff1d2;text-shadow:0 1px #fff6de,1px 2px #bd6d24,2px 3px 1px #a4592470;transform:translateZ(3px)}.bag-wordmark>span{display:inline}.bag-lock{position:absolute;right:8%;bottom:24%;width:14%;aspect-ratio:1;border-radius:50%;border:3px solid #fae1b0;background:linear-gradient(135deg,#677146,#3a492c);box-shadow:0 4px 5px #934c1d80,inset 0 1px 2px #ffffff60;display:grid!important;place-items:center;color:#fff0ce;font-size:calc(var(--bag-width)*.065);transform:translateZ(6px)}.bag-signature{position:absolute;left:9%;bottom:10%;font-size:calc(var(--bag-width)*.017);letter-spacing:.13em;color:#68380e}.portfolio-footer{position:absolute;left:5%;right:5%;bottom:0;height:75px;display:flex;align-items:center;gap:24px;z-index:4;font-size:9px;letter-spacing:.1em;color:#e1e4d0}.portfolio-footer-line{flex:1;height:1px;background:#e5e8d431}.portfolio-footer>span:last-child{margin-left:auto}.portfolio-dialog{--paper:#f0eddb;--ease-out:cubic-bezier(.23,1,.32,1);position:fixed;top:0;right:0;bottom:0;left:0;margin:auto;padding:0;width:min(1080px,calc(100vw - 48px));height:min(770px,calc(100dvh - 40px));max-width:none;max-height:none;border:1px solid #d9dfbd45;border-radius:22px;color:var(--paper);background:radial-gradient(ellipse at 50% 35%,#768067,#56644a 75%);overflow:hidden;box-shadow:0 30px 100px #13200b80;font-family:Manrope,Microsoft YaHei,sans-serif;opacity:1;transition:opacity .25s ease-out,transform .3s var(--ease-out)}.portfolio-dialog[open]{display:flex;flex-direction:column}.portfolio-dialog[data-phase=closing]{opacity:0;transform:translateY(8px)}.portfolio-dialog::backdrop{background:#15200ebd;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.portfolio-dialog button{cursor:pointer;font:inherit}.portfolio-dialog button:focus-visible{outline:3px solid #ffc167;outline-offset:5px}.portfolio-dialog-header{padding:29px 34px 22px;display:flex;align-items:center;justify-content:space-between;gap:24px;z-index:5;flex-shrink:0}.portfolio-dialog-header p{font-size:9px;letter-spacing:.13em;margin:0 0 10px;color:#e2e5d2}.portfolio-dialog-header h2{font-family:Impact,Arial Narrow,sans-serif;font-size:38px;line-height:1.05;font-weight:400;letter-spacing:-.02em;margin:0;outline:none}.portfolio-dialog-header>div:last-child{display:flex;gap:12px;align-items:center}.portfolio-dialog-header button{color:var(--paper);border:1px solid #e1e4ce70;background:transparent;padding:10px 13px;border-radius:50px;font-size:11px;min-height:44px;white-space:nowrap}.portfolio-close span{font-size:20px;line-height:1;vertical-align:middle;margin-left:5px}.portfolio-drawer-stage{position:relative;flex:1;min-height:0}.portfolio-dialog:not([data-view=fan]) .portfolio-drawer-stage{display:none}.portfolio-category-view{overflow:auto;padding:0 34px 35px;flex:1;min-height:0}.portfolio-category-note{font-size:12px;line-height:1.7;color:#e7ead7;margin:5px 0 26px}.portfolio-existing-projects{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.portfolio-existing-projects article{min-width:0}.portfolio-existing-projects article>button{position:relative;padding:0;border:1px solid #e1e4ce70;overflow:hidden;background:#e1e2d4;width:100%;aspect-ratio:1.12;display:block}.portfolio-existing-projects img{display:block;width:100%;height:100%;object-fit:cover}.portfolio-existing-projects button>span{position:absolute;bottom:10px;right:10px;background:#efeddc;color:#26351f;font-size:10px;padding:8px 11px;border-radius:30px}.portfolio-existing-projects article>div{padding:17px 0}.portfolio-existing-projects article>div>span{font-size:9px;letter-spacing:.05em;color:#e0e5ce}.portfolio-existing-projects h3{font-size:21px;margin:9px 0;font-weight:500}.portfolio-existing-projects p{font-size:12px;line-height:1.75;color:#e0e5ce;margin:0}.portfolio-artwork{padding:0 34px 30px;overflow:auto;flex:1;min-height:0;background:#35482c30}.portfolio-artwork img{display:block;width:100%;height:auto;background:#e4e2d5}@media(hover:hover)and (pointer:fine){.portfolio-pack-trigger:hover{transform:translateY(-6px) rotate(1deg)}.portfolio-pack-trigger:hover .bag-shadow{opacity:.9}.portfolio-nav nav a:hover{color:#ffd192}.portfolio-dialog-header button:hover,.portfolio-seated figcaption button:hover{background:#e9ecd018}.portfolio-existing-projects button:hover>span{background:#ffd28d}}@media(min-width:1700px){.portfolio-heading{top:21%}.portfolio-intro{font-size:16px}.portfolio-bag-stage{bottom:16%}.portfolio-nav{height:125px}.portfolio-nav nav{font-size:14px}}@media(max-width:1100px){.portfolio-preview{padding:14px}.portfolio-stage{height:calc(100svh - 28px);min-height:680px}.portfolio-nav{height:92px}.portfolio-nav nav{gap:22px}.portfolio-nav>span small{display:none}.portfolio-heading{top:21%;left:5%;max-width:62%}.portfolio-heading h1{font-size:clamp(58px,7.1vw,78px)}.portfolio-intro{font-size:12px;margin-top:17px}.portfolio-person{width:95%;bottom:35px;right:-2%}.portfolio-bag-stage{left:1%;bottom:14%;width:55%;height:37%}.portfolio-pack-trigger .bag-model{--bag-width:310px}.portfolio-bag-index{left:4%;bottom:4%;font-size:7px}.portfolio-footer{gap:18px;font-size:8px;height:65px}.portfolio-dialog-header h2{font-size:33px}}@media(max-width:760px){.portfolio-preview{padding:10px}.portfolio-stage{height:auto;min-height:990px}.portfolio-nav{height:85px;margin:0 6%;gap:15px}.portfolio-brand{font-size:25px}.portfolio-nav nav{gap:18px;font-size:10px}.portfolio-nav>span{display:none}.portfolio-heading{top:140px;left:7%;max-width:86%}.portfolio-heading h1{font-size:clamp(51px,10.4vw,75px);letter-spacing:-.02em}.portfolio-chapter{font-size:9px;margin-bottom:13px}.portfolio-intro{font-size:12px;line-height:1.9;margin-top:18px}.portfolio-bag-stage{left:0;top:330px;bottom:auto;width:100%;height:270px;min-height:0}.portfolio-pack-trigger{gap:25px;padding:10px}.portfolio-pack-trigger .bag-model{--bag-width:280px}.portfolio-bag-index{display:none}.portfolio-bag-floor{bottom:16%;width:80%}.portfolio-person{width:580px;max-width:none;right:0;bottom:58px}.portfolio-seated figcaption{bottom:15px;right:7%}.portfolio-footer{height:62px;left:7%;right:7%;gap:14px;font-size:7px;letter-spacing:.05em}.portfolio-footer>span:nth-last-child(2){display:none}.portfolio-dialog{width:calc(100vw - 20px);height:calc(100dvh - 24px);border-radius:15px}.portfolio-dialog-header{padding:25px 20px 20px;gap:12px}.portfolio-dialog-header h2{font-size:27px;max-width:260px}.portfolio-dialog-header p{font-size:8px;letter-spacing:.05em;max-width:210px}.portfolio-dialog-header>div:last-child{gap:5px}.portfolio-dialog-header button{font-size:9px;padding:9px;min-height:44px}.portfolio-close span{font-size:18px;margin-left:2px}.portfolio-category-view{padding:0 20px 24px}.portfolio-existing-projects{grid-template-columns:1fr;gap:18px}.portfolio-existing-projects article>button{aspect-ratio:1.4}.portfolio-artwork{padding:0 10px 20px}.portfolio-category-note{font-size:11px}.portfolio-dialog[data-view=category] h2,.portfolio-dialog[data-view=artwork] h2{font-size:23px;max-width:190px}}@media(max-width:430px){.portfolio-dialog-header h2{font-size:25px}.portfolio-dialog-header{padding:23px 17px 18px}.portfolio-heading h1{font-size:51px}}@media(max-height:700px)and (min-width:761px){.portfolio-dialog{height:calc(100dvh - 20px)}.portfolio-dialog-header{padding:20px 30px 15px}.portfolio-dialog-header h2{font-size:28px}}@media(prefers-reduced-motion:reduce){.portfolio-preview *,.portfolio-dialog *{transition:none!important;animation:none!important}.portfolio-heading,.portfolio-bag-stage,.portfolio-person{opacity:1!important;transform:none!important}.portfolio-dialog{transition:none!important}.portfolio-pack-trigger:hover{transform:none}}.bag-back{border-radius:23px 28px 26px 26px;box-shadow:inset 1px 3px 4px #ffd791,5px 7px #b26c1e,9px 12px 1px #95521c}.bag-lid{border-radius:23px 28px 26px 26px;background:linear-gradient(135deg,#ffbb57,#f4a238 34%,#e98a22 76%,#d77c20);box-shadow:inset 2px 4px 5px #ffdb91,inset -3px -5px 6px #ba6d23,0 -3px 3px #c07b28}.bag-lid:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;pointer-events:none;opacity:.075;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cfilter id='g'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath d='M0 0h100v100H0z' filter='url(%23g)' opacity='.8'/%3E%3C/svg%3E")}.bag-seam{border-radius:18px 23px 21px 21px;border-color:#ffd89555}.bag-gusset{border-radius:22px 28px 27px 25px}.bag-lock{border:3px solid #ecdda9;box-shadow:0 5px 8px #9f5a2560,inset 0 2px 3px #b2b97e90}.bag-tab{display:none!important}.bag-face{position:absolute;left:37%;top:-25%;width:26%;height:42%;transform:translateZ(9px)}.bag-eye{position:absolute;bottom:0;width:48%;height:83%;border-radius:48% 48% 45% 45%;background:radial-gradient(ellipse at 36% 28%,#fffbea,#f8edc9 57%,#d7c290);box-shadow:inset -3px -4px 5px #b89d6c55,1px 4px 5px #764e2440}.eye-left{left:0;transform:rotate(-7deg)}.eye-right{right:0;transform:rotate(6deg)}.bag-eye>span{position:absolute;left:29%;top:35%;width:48%;height:49%;border-radius:50%;background:radial-gradient(circle at 35% 23%,#fffbea 0,#fffbea 11%,#3f301f 14%,#3f301f 40%,#201b12 70%);box-shadow:0 1px 2px #6b5037}.eye-right>span{left:19%}.bag-brow{position:absolute;top:-12%;width:44%;height:15%;border-radius:70% 70% 40% 40%;background:linear-gradient(#55452b,#302719);box-shadow:0 2px 2px #4d3d2950}.brow-left{left:-4%;transform:rotate(-16deg)}.brow-right{right:-4%;transform:rotate(15deg)}.bag-tabs{left:3%;right:3%;top:1%;height:19%;display:block!important;transform:translateZ(5px)}.bag-tabs>span{position:absolute;top:4%;width:19%;height:100%;font-size:calc(var(--bag-width)*.022);padding-top:calc(var(--bag-width)*.018);border-radius:8px 8px 0 0;box-shadow:inset 0 2px 2px #fff6d970,1px 2px 3px #8a612940}.bag-tabs>span:nth-child(1){left:0;background:#6c794b;color:#fff2cf;transform:rotate(-3deg)}.bag-tabs>span:nth-child(2){left:21%;top:9%;width:18%;background:#f3dfb7;color:#665235}.bag-tabs>span:nth-child(3){left:64%;top:-3%;width:17%;background:#9caeaf;color:#273d3e;transform:rotate(2deg)}.bag-tabs>span:nth-child(4){left:83%;top:5%;width:18%;background:#e9b06b;color:#66431c;transform:rotate(4deg)}.bag-hand{position:absolute;top:11%;width:9%;height:16%;border-radius:45% 48% 44% 44%;background:linear-gradient(120deg,#fff0cb,#efcc95 70%,#d8b17a);box-shadow:0 4px 4px #945a2540;transform:translateZ(24px) rotate(-8deg);display:flex!important;gap:1px;padding:0;overflow:hidden}.hand-left{left:16%}.hand-right{right:17%;transform:translateZ(24px) rotate(8deg)}.bag-hand>span{position:absolute;top:12%;height:85%;width:29%;border-radius:48%;background:linear-gradient(90deg,#ffe9bd,#f2d29f);box-shadow:inset -1px -2px 2px #c49c6c55}.bag-hand>span:nth-child(1){left:5%;top:22%}.bag-hand>span:nth-child(2){left:35%}.bag-hand>span:nth-child(3){left:65%;top:19%}.portfolio-dialog{--card-width:190px;--card-step:220px}.portfolio-category-fan{position:absolute;top:0;right:0;bottom:0;left:0;z-index:3;pointer-events:none}.portfolio-category-card{--fan-x:calc(var(--card-step)*-1.5);--fan-y:12px;--fan-angle:-6deg;--lift:0px;position:absolute;top:22px;left:50%;width:var(--card-width);height:286px;padding:9px;border:1px solid #fff6da99;border-radius:10px;text-align:left;color:#253321;background:#f1e6cb;box-shadow:0 3px 3px #28371e20,0 15px 25px #27351c35;transform-origin:50% 100%;transform:translate(-50%,230px) rotate(-1deg) scale(.96);opacity:0;pointer-events:none;transition:transform .45s var(--ease-out),opacity .18s ease-out;transition-delay:calc(var(--card-order)*50ms)}.portfolio-category-card:nth-child(2){--fan-x:calc(var(--card-step)*-.5);--fan-y:0px;--fan-angle:-2deg;background:#c9d8d5}.portfolio-category-card:nth-child(3){--fan-x:calc(var(--card-step)*.5);--fan-y:0px;--fan-angle:2deg;background:#dfe3cd}.portfolio-category-card:nth-child(4){--fan-x:calc(var(--card-step)*1.5);--fan-y:12px;--fan-angle:6deg;background:#e9c996}.portfolio-dialog[data-phase=open] .portfolio-category-card{transform:translate(calc(-50% + var(--fan-x)),calc(var(--fan-y) + var(--lift))) rotate(var(--fan-angle));opacity:1;pointer-events:auto}.portfolio-dialog[data-phase=closing] .portfolio-category-card{transition-delay:0s;transform:translate(-50%,230px) scale(.96);opacity:0}.portfolio-category-card[aria-pressed=true]{outline:2px solid #ed9b37;outline-offset:3px}.portfolio-card-image{height:115px;overflow:hidden;border-radius:5px;background:#b7c2ac;position:relative}.portfolio-card-image img{width:100%;height:100%;object-fit:cover}.portfolio-card-image>span{position:absolute;top:6px;left:6px;font-size:9px;padding:4px 6px;background:#f2edda;color:#26351f;border-radius:3px}.portfolio-card-copy{padding:12px 5px 3px}.portfolio-card-copy h3{font-family:Impact,Arial Narrow,sans-serif;font-weight:400;font-size:35px;line-height:1;margin:0 0 5px;letter-spacing:.01em}.portfolio-card-copy h3 span{display:block}.portfolio-card-copy p{font-size:11px;line-height:1.6;margin:0;min-height:34px}.portfolio-card-copy .portfolio-card-subtitle{font-size:13px;min-height:0;margin-bottom:9px}.portfolio-card-tag{display:flex;align-items:center;justify-content:space-between;font-size:7px;letter-spacing:.03em;margin-top:9px;padding-top:8px;border-top:1px solid #26351f30}.portfolio-card-tag>span{font-size:16px}.portfolio-dialog-pack{position:absolute;z-index:2;left:50%;bottom:65px;transform:translate(-50%) scale(1);border:0;padding:0;background:transparent;color:inherit;transition:transform .42s var(--ease-out)}.portfolio-dialog[data-phase=open] .portfolio-dialog-pack{transform:translate(-50%,12px) scale(.94)}.portfolio-dialog-pack .bag-model{--bag-width:320px}.portfolio-dialog-pack .bag-geometry{transform:rotateX(5deg) rotateY(-7deg) rotate(-2deg)}.portfolio-dialog-pack .bag-model[data-expanded=true] .bag-lid{transform:translateZ(14px) rotateX(-38deg)}.portfolio-drawer-hint{position:absolute;bottom:6px;left:0;right:0;text-align:center;font-size:10px;line-height:1.3;margin:0;color:#f0eddb}.portfolio-drawer-hint span{display:block;font-size:9px;color:#d1d9bd;margin-top:2px}.portfolio-existing-projects{grid-template-columns:repeat(2,minmax(0,1fr));max-width:880px}.portfolio-category-view[data-category=app] .portfolio-existing-projects,.portfolio-category-view[data-category=hmi] .portfolio-existing-projects{grid-template-columns:minmax(0,540px)}.portfolio-project-steps{margin-top:8px!important;color:#f0eddb!important}.portfolio-existing-projects article>button{aspect-ratio:1.65;border-radius:10px}.portfolio-existing-projects h3{font-size:20px}.portfolio-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:25px}.portfolio-gallery figure{margin:0;min-width:0}.portfolio-gallery button{display:block;width:100%;padding:0;border:1px solid #dde3ca80;border-radius:9px;overflow:hidden;background:#ebe5d7}.portfolio-gallery img{width:100%;height:auto;display:block}.portfolio-gallery figcaption{font-size:12px;padding-top:10px}.portfolio-gallery-pending{font-size:11px;color:#dce2c9;line-height:1.8;margin-top:26px}@media(hover:hover)and (pointer:fine){.portfolio-dialog[data-phase=open] .portfolio-category-card:hover{--lift:-10px;z-index:4;transition-delay:0s}.portfolio-gallery button:hover{outline:2px solid #efc084;outline-offset:3px}}@media(max-width:1100px){.portfolio-dialog{--card-width:172px;--card-step:195px}.portfolio-category-card{height:266px;top:16px}.portfolio-card-image{height:100px}.portfolio-card-copy h3{font-size:32px}.portfolio-dialog-pack .bag-model{--bag-width:250px}.portfolio-dialog-pack{bottom:59px}}@media(max-width:760px){.portfolio-drawer-stage{overflow-y:auto;overscroll-behavior:contain}.portfolio-category-fan{position:relative;inset:auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 14px;padding:22px 20px 26px}.portfolio-category-card,.portfolio-category-card:nth-child(n){position:relative;left:auto;top:auto;width:100%;height:236px;max-width:none;padding:8px;--fan-angle:0deg;--fan-y:0px;--fan-x:0px;transform:translateY(28px) scale(.97)}.portfolio-dialog[data-phase=open] .portfolio-category-card{transform:translateY(var(--lift));opacity:1}.portfolio-dialog[data-phase=closing] .portfolio-category-card{transform:translateY(28px);opacity:0}.portfolio-card-image{height:86px}.portfolio-card-copy{padding:10px 3px 2px}.portfolio-card-copy h3{font-size:31px}.portfolio-card-copy p{font-size:11px;min-height:34px}.portfolio-card-copy .portfolio-card-subtitle{font-size:12px;margin-bottom:7px}.portfolio-card-tag{font-size:6px;margin-top:6px;padding-top:5px}.portfolio-dialog-pack{position:relative;bottom:auto;left:50%;display:block;margin:28px 0 18px;transform:translate(-50%) scale(.96)}.portfolio-dialog[data-phase=open] .portfolio-dialog-pack{transform:translate(-50%) scale(.92)}.portfolio-dialog-pack .bag-model{--bag-width:240px}.portfolio-drawer-hint{position:relative;bottom:auto;left:auto;right:auto;margin:0 10px 25px;font-size:10px}.portfolio-drawer-hint span{font-size:9px}.portfolio-existing-projects{grid-template-columns:1fr}.portfolio-gallery{grid-template-columns:1fr;gap:23px}.portfolio-dialog[data-view=category] .portfolio-dialog-header h2{font-size:28px}.portfolio-existing-projects h3{font-size:19px}}@media(max-height:700px)and (min-width:761px){.portfolio-category-card{height:245px;top:10px}.portfolio-card-image{height:85px}.portfolio-card-copy h3{font-size:30px}.portfolio-card-copy p{font-size:10px}.portfolio-dialog-pack .bag-model{--bag-width:250px}.portfolio-dialog-pack{bottom:35px}.portfolio-drawer-hint{bottom:6px}}@media(prefers-reduced-motion:reduce){.portfolio-dialog[data-phase=open] .portfolio-category-card{--fan-angle:0deg}.portfolio-dialog-pack{transition:none!important}}.portfolio-existing-projects button[data-project=mubai]{background:#08121a}.portfolio-existing-projects button[data-project=mubai] img{object-fit:contain;transform:scale(1.15) translate(-17%)}.portfolio-category-card{display:flex;flex-direction:column;height:320px}.portfolio-card-image{flex-shrink:0}.portfolio-card-copy{display:flex;flex-direction:column;flex:1;min-height:0}.portfolio-card-copy>p:not(.portfolio-card-subtitle){font-size:10px;line-height:1.55;min-height:0;margin-bottom:10px;overflow-wrap:anywhere}.portfolio-card-tag{margin-top:auto;flex-shrink:0;min-height:27px;gap:10px;line-height:1.3}.portfolio-card-tag>span{flex-shrink:0}@media(max-width:1100px){.portfolio-category-card{height:310px}}@media(max-width:760px){.portfolio-category-card{height:330px!important}.portfolio-card-copy>p:not(.portfolio-card-subtitle){font-size:11px}}@media(max-height:700px)and (min-width:761px){.portfolio-category-card{height:285px}.portfolio-card-image{height:78px}}
