[data-portfolio]{--bg: #0a121e;--ink: #E8EEFE;--ink-dim: #8A9BC4;--line: rgba(232, 238, 254, .12);--line-strong: rgba(232, 238, 254, .22);--blue: #95B8F8;--blue-deep: #5B7BD6;--display: "Cormorant", serif;--mono: "Geist Mono", ui-monospace, monospace;--sans: "Inter", system-ui, sans-serif;--fs-xs: clamp(.5rem, .48rem + .11vw, .75rem);--fs-sm: clamp(.625rem, .59rem + .19vw, 1rem);--fs-base: clamp(.75rem, .71rem + .23vw, 1.125rem);--fs-md: clamp(.875rem, .82rem + .31vw, 1.375rem);--fs-lg: clamp(1.125rem, 1.01rem + .65vw, 2rem);--fs-xl: clamp(2rem, 1.51rem + 3.2vw, 6.5rem);--fs-2xl: clamp(2.5rem, 1.73rem + 4.34vw, 8rem);--fs-3xl: clamp(3.5rem, 2.07rem + 8.05vw, 14rem)}[data-portfolio][data-theme=paper]{--bg: #EEE9DF;--ink: #0F0F12;--ink-dim: #5A5850;--line: rgba(15, 15, 18, .14);--line-strong: rgba(15, 15, 18, .25)}[data-portfolio][data-theme=ink]{--bg: #0c1426;--ink: #F2F1EC;--ink-dim: #A8A69E;--line: rgba(242, 241, 236, .12);--line-strong: rgba(242, 241, 236, .22)}[data-portfolio][data-theme=cobalt]{--bg: #0a121e;--ink: #E8EEFE;--ink-dim: #8A9BC4;--line: rgba(149, 184, 248, .15);--line-strong: rgba(149, 184, 248, .3)}[data-portfolio][data-display=fraunces]{--display: "Fraunces", serif}[data-portfolio][data-display=instrument]{--display: "Instrument Serif", serif}@keyframes grain{0%{transform:translate(0)}25%{transform:translate(-3%,2%)}50%{transform:translate(2%,-2%)}75%{transform:translate(-1%,1%)}to{transform:translate(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.3}}@keyframes up{0%{opacity:0;transform:translateY(22px);filter:blur(6px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}[data-portfolio] *,[data-portfolio] *:before,[data-portfolio] *:after{box-sizing:border-box;margin:0;padding:0}[data-portfolio]{position:fixed;inset:0;background:var(--bg);color:var(--ink);font-family:var(--sans);font-weight:400;overflow:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;-webkit-text-size-adjust:100%;text-size-adjust:100%}[data-portfolio]:before{content:"";position:fixed;inset:-50%;pointer-events:none;z-index:120;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='220' height='220'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0  0 0 0 0 0  0 0 0 0 0  0 0 0 0.55 0'/></filter><rect width='100%' height='100%' filter='url(%23n)' opacity='0.5'/></svg>");opacity:.12;mix-blend-mode:overlay;animation:grain 1.2s steps(4) infinite}[data-portfolio] .chrome{position:fixed;inset:0;pointer-events:none;z-index:80}[data-portfolio] .chrome>*{pointer-events:auto}[data-portfolio] .logo{position:fixed;top:8px;left:36px;display:flex;align-items:center;z-index:90}[data-portfolio] .logo img{height:100px;width:auto;display:block}[data-portfolio] .topmeta{position:fixed;top:28px;right:36px;display:flex;gap:28px;align-items:center;font-family:var(--mono);font-size:var(--fs-sm);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-dim);mix-blend-mode:difference}[data-portfolio] .topmeta a{color:inherit;text-decoration:none}[data-portfolio] .topmeta a.cta{background:var(--blue);color:#06080f;padding:10px 18px;border-radius:999px;mix-blend-mode:normal;letter-spacing:.08em;font-size:var(--fs-xs);transition:transform .3s ease,background .3s}[data-portfolio] .topmeta a.cta:hover{transform:translateY(-1px);background:#b8cefb}[data-portfolio] .lang-toggle{display:flex;gap:0;border:1px solid rgba(255,255,255,.25);border-radius:6px;overflow:hidden;mix-blend-mode:normal;background:#06080f8c;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}[data-portfolio] .lang-toggle button{background:transparent;border:none;color:#ffffff8c;font-family:var(--mono);font-size:var(--fs-xs);letter-spacing:.12em;text-transform:uppercase;padding:5px 10px;cursor:pointer;transition:background .2s,color .2s}[data-portfolio] .lang-toggle button.active{background:var(--blue);color:#06080f}[data-portfolio] .lang-toggle button:not(.active):hover{background:#ffffff1a;color:#fff}[data-portfolio] .dot{width:6px;height:6px;border-radius:50%;background:var(--blue);display:inline-block;margin-right:8px;animation:pulse 2s ease-in-out infinite}[data-portfolio] .year-nav{position:fixed;top:50%;right:32px;transform:translateY(-50%);z-index:85;display:flex;flex-direction:column;align-items:flex-end;gap:0;max-height:calc(100vh - 200px)}[data-portfolio] .year-tabs{display:flex;flex-direction:column;gap:2px;margin-bottom:18px}[data-portfolio] .year-tab{font-family:var(--mono);font-size:var(--fs-xs);letter-spacing:.2em;text-transform:uppercase;color:#ffffff59;cursor:pointer;padding:5px 10px 5px 14px;border-right:1px solid rgba(255,255,255,.12);transition:all .25s;background:transparent;border-top:none;border-bottom:none;border-left:none;text-align:right;mix-blend-mode:difference}[data-portfolio] .year-tab:hover{color:#ffffffb3}[data-portfolio] .year-tab.active{color:#fff;border-right:2px solid var(--blue)}[data-portfolio] .year-tab.active:after{content:"";display:inline-block;width:4px;height:4px;border-radius:50%;background:var(--blue);margin-left:8px;vertical-align:middle}[data-portfolio] .proj-dots{display:flex;flex-direction:column;gap:8px;align-items:flex-end}[data-portfolio] .proj-dot{display:flex;align-items:center;gap:8px;cursor:pointer;color:#ffffff4d;transition:all .3s;mix-blend-mode:difference}[data-portfolio] .proj-dot:hover,[data-portfolio] .proj-dot.active{color:#fff}[data-portfolio] .proj-dot .dot-mark{width:5px;height:5px;border-radius:50%;border:1px solid currentColor;flex-shrink:0;transition:all .3s}[data-portfolio] .proj-dot.active .dot-mark{background:var(--blue);border-color:var(--blue);box-shadow:0 0 6px #95b8f880}[data-portfolio] .proj-dot .dot-label{font-family:var(--mono);font-size:var(--fs-xs);letter-spacing:.12em;text-transform:uppercase;opacity:0;transform:translate(4px);transition:all .3s;white-space:nowrap}[data-portfolio] .proj-dot:hover .dot-label,[data-portfolio] .proj-dot.active .dot-label{opacity:.8;transform:translate(0)}[data-portfolio] .bottom{position:fixed;left:36px;right:160px;bottom:20px;display:flex;align-items:center;justify-content:space-between;font-family:var(--mono);font-size:var(--fs-xs);letter-spacing:.18em;text-transform:uppercase;color:var(--ink-dim);mix-blend-mode:difference;z-index:85}[data-portfolio] .bottom .counter{color:#fff;white-space:nowrap}[data-portfolio] .bottom .slide-title{display:none}[data-portfolio] .bottom .counter .big{font-family:var(--display);font-size:var(--fs-lg);font-style:italic;letter-spacing:-.02em;color:var(--blue)}[data-portfolio] .bottom .progress{flex:1;margin:0 32px;height:1px;background:#ffffff1f;position:relative}[data-portfolio] .bottom .progress .fill{position:absolute;inset:0 auto 0 0;background:#fff;transition:width .8s cubic-bezier(.7,0,.3,1)}[data-portfolio] .bottom .progress .ticks{position:absolute;inset:0;display:flex}[data-portfolio] .bottom .progress .tick{flex:1;border-right:1px solid rgba(255,255,255,.12)}[data-portfolio] .bottom .progress .tick:last-child{border:0}[data-portfolio] .bottom-filters-btn{display:inline-flex;align-items:center;gap:6px;background:transparent;border:1px solid rgba(255,255,255,.18);color:var(--ink-dim);border-radius:22px;padding:0 14px;height:44px;font-family:var(--mono);font-size:var(--fs-xs);letter-spacing:.14em;text-transform:uppercase;cursor:pointer;white-space:nowrap;flex-shrink:0;transition:border-color .2s,color .2s}[data-portfolio] .bottom-filters-btn:hover{border-color:var(--blue);color:var(--blue)}[data-portfolio] .nav{position:fixed;bottom:20px;right:36px;display:flex;gap:10px;z-index:90}[data-portfolio] .nav button{width:44px;height:44px;border-radius:50%;background:#0a121ebf;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.2);color:#fff;cursor:pointer;font-size:var(--fs-sm);transition:all .3s;display:inline-flex;align-items:center;justify-content:center}[data-portfolio] .nav button:hover,[data-portfolio] .nav button.next{background:var(--blue);color:#06080f;border-color:var(--blue)}[data-portfolio] .nav button.next:hover{transform:translate(2px)}[data-portfolio] .stage{position:relative;width:100vw;height:100vh;overflow:hidden}[data-portfolio] .slide{position:absolute;inset:0;opacity:0;pointer-events:none;transition:opacity .9s cubic-bezier(.7,0,.3,1)}[data-portfolio] .slide.active{opacity:1;pointer-events:auto}[data-portfolio] .portfolio-slide{opacity:0;pointer-events:none}[data-portfolio] .kicker{font-family:var(--mono);font-size:var(--fs-xs);letter-spacing:.24em;text-transform:uppercase;color:var(--ink-dim)}[data-portfolio] .kicker.blue{color:var(--blue)}[data-portfolio] .tag{display:inline-flex;align-items:center;padding:6px 12px;border:1px solid var(--line-strong);border-radius:999px;font-family:var(--mono);font-size:var(--fs-xs);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-dim)}[data-portfolio] .tag.blue{color:var(--blue);border-color:#95b8f866}[data-portfolio] .btn-ghost{display:inline-flex;align-items:center;gap:12px;padding:14px 22px;border:1px solid var(--line-strong);border-radius:999px;font-family:var(--mono);font-size:var(--fs-xs);letter-spacing:.16em;text-transform:uppercase;color:var(--ink);text-decoration:none;cursor:pointer;background:transparent;transition:all .3s}[data-portfolio] .btn-ghost:hover{background:var(--blue);color:#06080f;border-color:var(--blue)}[data-portfolio] .btn-ghost .arrow{transition:transform .3s}[data-portfolio] .btn-ghost:hover .arrow{transform:translate(4px)}[data-portfolio] .slide.active .stagger>*{animation:up .9s cubic-bezier(.2,.7,.2,1) both}[data-portfolio] .slide.active .stagger>*:nth-child(1){animation-delay:.05s}[data-portfolio] .slide.active .stagger>*:nth-child(2){animation-delay:.12s}[data-portfolio] .slide.active .stagger>*:nth-child(3){animation-delay:.19s}[data-portfolio] .slide.active .stagger>*:nth-child(4){animation-delay:.26s}[data-portfolio] .slide.active .stagger>*:nth-child(5){animation-delay:.33s}[data-portfolio] .slide.active .stagger>*:nth-child(6){animation-delay:.4s}[data-portfolio] .slide.active .stagger>*:nth-child(7){animation-delay:.47s}[data-portfolio] .cover{position:absolute;inset:0;padding:110px 0 90px 60px;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr auto;overflow:hidden}[data-portfolio] .cover .cover-left{display:flex;flex-direction:column;justify-content:center;padding-right:60px;overflow:hidden}[data-portfolio] .cover .cover-globe{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center}[data-portfolio] .cover .cover-globe canvas{width:min(80vmin,600px)!important;height:min(80vmin,600px)!important;pointer-events:none;position:relative;z-index:1}[data-portfolio] .cover .cover-globe:before{content:"";position:absolute;width:min(70vmin,520px);height:min(70vmin,520px);border-radius:50%;background:radial-gradient(circle at center,color-mix(in oklab,var(--blue) 40%,transparent) 0%,color-mix(in oklab,var(--blue) 12%,transparent) 38%,transparent 72%);filter:blur(44px);pointer-events:none;z-index:0}[data-portfolio] .cover .cover-globe:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(to right,var(--bg) 0%,transparent 18%),linear-gradient(to bottom,var(--bg) 0%,transparent 15%),linear-gradient(to top,var(--bg) 0%,transparent 15%)}[data-portfolio] .cover .cover-marquee{grid-column:1 / 3}[data-portfolio] .cover .cover-main{flex:1;min-height:0;display:flex;flex-direction:column;justify-content:center;gap:0}[data-portfolio] .cover .eyebrow{display:flex;align-items:center;gap:16px;margin-bottom:16px;flex-shrink:0}[data-portfolio] .cover h1{font-family:var(--display);font-weight:400;font-size:var(--fs-2xl);line-height:.93;letter-spacing:-.035em;flex-shrink:0}[data-portfolio] .cover h1 em{font-style:italic;color:var(--blue);font-weight:400}[data-portfolio] .cover h1 .thin{font-weight:400}[data-portfolio] .cover .lede{max-width:520px;font-size:var(--fs-md);line-height:1.55;color:var(--ink-dim);margin-top:16px;flex-shrink:0}[data-portfolio] .cover .cover-actions{display:flex;align-items:center;gap:40px;flex-wrap:wrap;margin-top:24px;flex-shrink:0}[data-portfolio] .cover .stats{display:flex;gap:32px;flex-wrap:wrap;align-items:flex-start}[data-portfolio] .cover .stat{display:flex;flex-direction:column}[data-portfolio] .cover .stat .n{font-family:var(--display);font-size:var(--fs-lg);line-height:1;font-weight:400;letter-spacing:-.02em}[data-portfolio] .cover .stat .n em{font-style:italic;color:var(--blue)}[data-portfolio] .cover .stat .l{font-family:var(--mono);font-size:var(--fs-xs);letter-spacing:.2em;text-transform:uppercase;color:var(--ink-dim);margin-top:4px}[data-portfolio] .marquee{flex-shrink:0;overflow:hidden;padding:12px 0;margin-top:20px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-family:var(--display);font-style:italic;font-size:var(--fs-lg);font-weight:400;-webkit-mask-image:linear-gradient(to right,transparent 0%,black 8%,black 92%,transparent 100%);mask-image:linear-gradient(to right,transparent 0%,black 8%,black 92%,transparent 100%);color:var(--ink-dim);white-space:nowrap;display:flex;contain:layout style}[data-portfolio] .marquee-track{display:flex;gap:60px;flex-shrink:0;padding-right:60px;will-change:transform;transform:translateZ(0);backface-visibility:hidden}[data-portfolio] .marquee-track span.star{color:var(--blue);font-size:18px;align-self:center;margin-left:60px}[data-portfolio] .project{position:absolute;inset:0;display:grid;grid-template-columns:minmax(400px,1fr) 1.25fr;overflow:hidden}[data-portfolio] .project .left{font-size:var(--fs-base);padding:120px 60px 80px;display:flex;flex-direction:column;justify-content:center;position:relative;overflow-y:auto;overflow-x:hidden;scrollbar-width:none}[data-portfolio] .project .left::-webkit-scrollbar{display:none}[data-portfolio] .project .project-num{font-family:var(--mono);font-size:var(--fs-xs);letter-spacing:.22em;text-transform:uppercase;color:var(--blue);margin-bottom:6px}[data-portfolio] .project h2{font-family:var(--display);font-weight:400;font-size:var(--fs-xl);line-height:.92;letter-spacing:-.03em;margin:0 0 .3em}[data-portfolio] .project h2 em{font-style:italic;color:var(--blue);font-weight:400}[data-portfolio] .project .tagline{font-family:var(--display);font-style:italic;font-size:clamp(.95rem,.82rem + .46vw,1.3rem);color:var(--ink-dim);margin-bottom:32px;max-width:460px}[data-portfolio] .project .sections{display:grid;gap:1.4em;max-width:480px;margin-bottom:2em}[data-portfolio] .project .sections h4{font-family:var(--mono);font-size:var(--fs-xs);letter-spacing:.22em;text-transform:uppercase;color:var(--ink-dim);margin:0;font-weight:400;min-width:90px;padding-top:3px}[data-portfolio] .project .sections p{font-size:clamp(.8rem,.62rem + .22vw,.875rem);line-height:1.55;color:var(--ink)}[data-portfolio] .project .sections .row{display:flex;gap:24px;align-items:baseline}[data-portfolio] .project .tags-row{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:1.5em}[data-portfolio] .project .actions{display:flex;gap:10px;flex-wrap:wrap}[data-portfolio] .project .right{position:relative;overflow:hidden;background:var(--bg)}[data-portfolio] .project .right .img-wrap{position:absolute;inset:clamp(16px,2vw,40px) clamp(16px,2vw,40px) clamp(16px,2vw,40px) 0;overflow:visible;border-radius:4px}[data-portfolio] .project .img-clip{position:absolute;inset:0;overflow:hidden;border-radius:4px}[data-portfolio] .project .img-clip:after{content:"";position:absolute;inset:0;background:radial-gradient(70% 50% at 30% 60%,transparent,rgba(8,16,30,.35));pointer-events:none}[data-portfolio] .project .metric-chips{position:absolute;left:clamp(0px,1vw,16px);top:60px;display:flex;flex-direction:column;gap:10px;z-index:3}[data-portfolio] .chip{background:#08101eb3;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.1);padding:14px 18px;border-radius:14px;display:flex;align-items:center;gap:14px;color:#fff;animation:up .9s cubic-bezier(.2,.7,.2,1) both}[data-portfolio] .chip .cn{font-family:var(--display);font-size:clamp(1.125rem,.95rem + .99vw,2.5rem);line-height:1;font-weight:400}[data-portfolio] .chip .cn em{color:var(--blue);font-style:italic}[data-portfolio] .chip .cl{font-family:var(--mono);font-size:var(--fs-xs);letter-spacing:.18em;text-transform:uppercase;color:#ffffffb3;max-width:120px;line-height:1.4}[data-portfolio] .img-caption{position:absolute;left:30px;bottom:24px;right:150px;display:flex;justify-content:space-between;align-items:flex-end;font-family:var(--mono);font-size:var(--fs-xs);letter-spacing:.16em;text-transform:uppercase;color:#fffc;mix-blend-mode:difference;z-index:3}[data-portfolio] .hero-phone-frame{display:none}[data-portfolio] .mock{position:relative;width:100%;height:100%;display:flex;align-items:center;justify-content:center;padding:20px}[data-portfolio] .mock-browser{width:100%;max-width:clamp(1000px,90vw,2150px);aspect-ratio:16 / 10;background:var(--bg);border:1px solid rgba(149,184,248,.2);border-radius:10px;overflow:hidden;box-shadow:0 4px 16px #0000002e,0 0 0 1px #ffffff05;display:flex;flex-direction:column}[data-portfolio] .mock-browser .mb-head{display:flex;align-items:center;gap:8px;padding:10px 14px;border-bottom:1px solid rgba(255,255,255,.06);font-family:var(--mono);font-size:10px;color:#ffffff80}[data-portfolio] .mock-browser .mb-head .dots{display:flex;gap:5px}[data-portfolio] .mock-browser .mb-head .dots span{width:8px;height:8px;border-radius:50%;background:#ffffff26}[data-portfolio] .mock-browser .mb-head .url{flex:1;text-align:center;background:#ffffff0d;border-radius:5px;padding:4px 10px;letter-spacing:.08em}[data-portfolio] .mock-browser .mb-body{flex:1;position:relative;overflow:hidden;background:var(--bg)}@media(min-width:1024px){[data-portfolio] .project .right .mock{padding:30px 60px 30px 0;justify-content:flex-start}}[data-portfolio] .scene{position:absolute;inset:0;width:100%;height:100%}[data-portfolio] .outro{position:absolute;inset:0;padding:110px 160px 90px 60px;display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:end;overflow:hidden}[data-portfolio] .outro:before{content:"";position:absolute;inset:0;background:radial-gradient(60% 50% at 30% 100%,rgba(149,184,248,.12),transparent);pointer-events:none}[data-portfolio] .outro h2{font-family:var(--display);font-weight:400;font-size:var(--fs-3xl);line-height:.86;letter-spacing:-.035em;position:relative;z-index:1}[data-portfolio] .outro h2 em{font-style:italic;color:var(--blue)}[data-portfolio] .outro h2 .outline{-webkit-text-stroke:1.2px var(--blue);color:transparent;font-style:italic}[data-portfolio] .outro .right-col{display:flex;flex-direction:column;gap:36px;align-items:flex-end;text-align:right}[data-portfolio] .outro .right-col .contact{display:grid;grid-template-columns:auto 1fr;gap:20px 28px;text-align:left;min-width:280px;font-family:var(--mono);font-size:var(--fs-base);letter-spacing:.08em}[data-portfolio] .outro .right-col .contact dt{color:var(--ink-dim);text-transform:uppercase;font-size:var(--fs-xs);letter-spacing:.2em;align-self:start;padding-top:3px}[data-portfolio] .outro .right-col .contact dd{line-height:1.9}[data-portfolio] .outro .right-col .contact dd a{color:var(--blue);text-decoration:none;border-bottom:1px solid var(--line-strong);padding-bottom:2px}[data-portfolio] .outro .socials{display:flex;gap:20px;align-items:center}[data-portfolio] .outro .socials a{color:var(--ink-dim);text-decoration:none;display:flex;align-items:center;transition:color .2s}[data-portfolio] .outro .socials a:hover{color:var(--blue)}[data-portfolio] .outro .socials a svg{width:18px;height:18px;fill:currentColor;display:block}[data-portfolio] .tweaks,[data-portfolio] .tweaks-toggle{display:none!important}[data-portfolio] .tweaks h5{letter-spacing:.22em;text-transform:uppercase;font-weight:400;color:#95b8f8;margin-bottom:14px;font-size:10px}[data-portfolio] .tweaks .grp{margin-bottom:14px}[data-portfolio] .tweaks .grp label{display:block;color:#a8a69e;font-size:10px;letter-spacing:.18em;text-transform:uppercase;margin-bottom:8px}[data-portfolio] .tweaks .seg{display:flex;gap:4px;background:#ffffff0d;border-radius:8px;padding:3px}[data-portfolio] .tweaks .seg button{flex:1;padding:8px 6px;font-family:var(--mono);font-size:10px;letter-spacing:.08em;background:transparent;color:#a8a69e;border:0;border-radius:6px;cursor:pointer;text-transform:uppercase}[data-portfolio] .tweaks .seg button.active{background:#95b8f8;color:#06080f}[data-portfolio] .dot-nav{display:none;position:fixed;bottom:48px;left:0;right:0;justify-content:center;gap:6px;z-index:86;pointer-events:none}[data-portfolio] .dot-nav-btn{pointer-events:auto;width:5px;height:5px;border-radius:50%;border:1px solid rgba(255,255,255,.3);background:transparent;cursor:pointer;padding:6px 4px;box-sizing:content-box;transition:background .25s,border-color .25s,box-shadow .25s}[data-portfolio] .dot-nav-btn.active{background:#95b8f8;border-color:#95b8f8;box-shadow:0 0 6px #95b8f880}[data-portfolio] .swipe-hint{display:none;position:fixed;bottom:120px;left:50%;transform:translate(-50%);font-family:var(--mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-dim);z-index:95;pointer-events:none;opacity:0}[data-portfolio] .quick-nav-fab{display:none;position:fixed;bottom:10px;left:16px;width:auto;height:30px;padding:0 14px;gap:6px;border-radius:8px;background:var(--blue);color:#06080f;border:none;cursor:pointer;align-items:center;justify-content:center;z-index:92;font-family:var(--mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;font-weight:500}[data-portfolio] .quick-nav-backdrop{display:block;position:fixed;inset:0;background:#00000080;z-index:100;opacity:0}[data-portfolio] .quick-nav-sheet{display:flex;position:fixed;bottom:0;left:0;right:0;height:70vh;background:var(--bg);border-top:1px solid var(--line-strong);border-radius:16px 16px 0 0;z-index:101;flex-direction:column;overflow:hidden;touch-action:none;transform:translateY(100%)}[data-portfolio] .quick-nav-handle{width:36px;height:4px;background:var(--line-strong);border-radius:2px;margin:10px auto 0;flex-shrink:0}[data-portfolio] .quick-nav-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px 8px;flex-shrink:0}[data-portfolio] .quick-nav-title{font-family:var(--display);font-size:var(--fs-lg);font-style:italic;color:var(--ink)}[data-portfolio] .quick-nav-close{background:transparent;border:none;color:var(--ink-dim);font-size:16px;cursor:pointer;padding:4px 8px;line-height:1}[data-portfolio] .quick-nav-chips-section{padding:0 16px 6px;flex-shrink:0}[data-portfolio] .quick-nav-chips-label{display:block;font-family:var(--mono);font-size:var(--fs-xs);letter-spacing:.16em;text-transform:uppercase;color:var(--ink-dim);margin-bottom:6px}[data-portfolio] .quick-nav-chips{display:flex;flex-direction:row;gap:6px;overflow-x:auto;white-space:nowrap;scrollbar-width:none;padding-bottom:2px}[data-portfolio] .quick-nav-chips::-webkit-scrollbar{display:none}[data-portfolio] .quick-nav-chip{flex-shrink:0;padding:6px 16px;border:1px solid var(--line-strong);border-radius:999px;background:transparent;color:var(--ink-dim);font-family:var(--mono);font-size:var(--fs-sm);letter-spacing:.1em;text-transform:uppercase;cursor:pointer}[data-portfolio] .quick-nav-chip.active{background:var(--blue);border-color:var(--blue);color:#06080f}[data-portfolio] .quick-nav-list{flex:1;overflow-y:auto;overscroll-behavior:contain;padding:8px 16px 24px;display:flex;flex-direction:column;gap:2px}[data-portfolio] .quick-nav-card{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:10px 12px;border:none;border-left:3px solid transparent;background:transparent;cursor:pointer;text-align:left;border-radius:0 4px 4px 0}[data-portfolio] .quick-nav-card.active{border-left-color:var(--blue);background:#95b8f80f}[data-portfolio] .quick-nav-card-name{font-family:var(--display);font-size:var(--fs-md);font-style:italic;color:var(--ink);line-height:1.1}[data-portfolio] .quick-nav-card.active .quick-nav-card-name{color:var(--blue)}[data-portfolio] .quick-nav-card-meta{font-family:var(--mono);font-size:var(--fs-xs);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-dim)}[data-portfolio] .quick-nav-empty{font-family:var(--mono);font-size:11px;color:var(--ink-dim);text-align:center;padding:24px 0;letter-spacing:.08em}@media(max-width:767px){[data-portfolio] .logo{left:16px;top:8px}[data-portfolio] .logo img{height:48px}[data-portfolio] .topmeta{top:16px;right:16px;gap:8px}[data-portfolio] .topmeta a.cta{padding:7px 12px}[data-portfolio] .bottom{left:136px;right:132px;bottom:27px;height:auto;z-index:91}[data-portfolio] .bottom .counter,[data-portfolio] .bottom .slide-title{display:none}[data-portfolio] .bottom .progress{margin:0;flex:1}[data-portfolio] .nav{bottom:10px;right:16px;gap:8px}[data-portfolio] .nav button{width:34px;height:34px;font-size:1.2rem}[data-portfolio] .year-nav{display:none}[data-portfolio] .project{grid-template-columns:1fr;grid-template-rows:clamp(215px,54vw,265px) 1fr;overflow:hidden}[data-portfolio] .project .right{order:1;position:relative;overflow:hidden;border-radius:0;display:flex;flex-direction:column}[data-portfolio] .project .right .img-wrap{position:absolute;inset:0;border-radius:0;overflow:hidden}[data-portfolio] .project .metric-chips{position:absolute;inset:auto 0 0;flex-direction:row;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;padding:8px 12px;gap:8px;background:linear-gradient(to top,rgba(6,8,15,.7) 0%,transparent 100%);z-index:4}[data-portfolio] .project .metric-chips::-webkit-scrollbar{display:none}[data-portfolio] .chip{flex-shrink:0;min-width:90px;padding:6px 10px;background:#08101e99;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}[data-portfolio] .chip .cn{font-size:var(--fs-lg);font-weight:400}[data-portfolio] .img-caption{display:none}[data-portfolio] .project .left{order:2;padding:16px 16px 160px;overflow-y:auto;overflow-x:hidden;justify-content:flex-start;touch-action:pan-y}[data-portfolio] .project .project-num{margin-bottom:2px}[data-portfolio] .project h2{margin:8px 0}[data-portfolio] .project .tagline{margin-bottom:12px;max-width:100%}[data-portfolio] .project .sections{gap:8px;margin-bottom:10px;max-width:100%}[data-portfolio] .project .sections .row{flex-direction:column;gap:1px}[data-portfolio] .project .sections p{line-height:1.45}[data-portfolio] .project .tags-row{gap:6px;margin-bottom:10px}[data-portfolio] .project .actions{flex-direction:row;flex-wrap:nowrap;gap:8px;margin-bottom:0}[data-portfolio] .project .actions .btn-ghost{flex:1 1 0;min-width:0;max-width:160px;padding:10px 12px;justify-content:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}[data-portfolio] .cover{display:flex;flex-direction:column;padding:50px 0 56px;overflow-y:auto;overflow-x:hidden}[data-portfolio] .cover .cover-left{padding:0 16px;flex:0 0 auto;justify-content:flex-start}[data-portfolio] .cover .cover-globe{display:flex;align-items:center;justify-content:center;flex:1 1 auto;min-height:210px;overflow:hidden;position:relative;margin:8px 0}[data-portfolio] .cover .cover-globe canvas{width:min(58vw,230px)!important;height:min(58vw,230px)!important}[data-portfolio] .cover .cover-globe:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(to bottom,var(--bg) 0%,transparent 35%),linear-gradient(to top,var(--bg) 0%,transparent 35%)}[data-portfolio] .cover .cover-marquee{flex:0 0 auto;margin-bottom:80px;font-size:11px}[data-portfolio] .cover .cover-marquee .marquee{padding:6px 0}[data-portfolio] .cover h1{margin-bottom:12px}[data-portfolio] .cover .lede{margin-top:8px;margin-bottom:4px;line-height:1.5}[data-portfolio] .cover .cover-actions{flex-direction:column;align-items:flex-start;gap:16px;margin-top:20px}[data-portfolio] .cover .cover-actions .btn-ghost{order:2;width:100%;justify-content:center}[data-portfolio] .cover .stats{order:1;flex-direction:row;flex-wrap:nowrap;gap:0;width:100%;justify-content:space-between}[data-portfolio] .cover .stat{flex:1;align-items:center;text-align:center}[data-portfolio] .cover .stat .n{font-size:var(--fs-lg)}[data-portfolio] .outro{grid-template-columns:1fr;padding:80px 16px 100px;gap:20px;align-items:start}[data-portfolio] .outro h2{line-height:.86}[data-portfolio] .outro .right-col{align-items:flex-start;text-align:left}[data-portfolio] .outro .contact{min-width:0;width:100%}[data-portfolio] .outro .socials{gap:16px;justify-content:flex-start}[data-portfolio] .outro .btn-ghost{width:100%;justify-content:center}[data-portfolio] .dot-nav{display:none}[data-portfolio] .swipe-hint{display:block}[data-portfolio] .quick-nav-fab{display:flex}[data-portfolio] .bottom-filters-btn{display:none}[data-portfolio] .hero-phone-frame{display:block;flex-shrink:0}[data-portfolio] .hero-img-mock{padding:0;background:none;width:100%;height:100%}[data-portfolio] .hero-img-mock .mock-browser{width:100%;height:100%;max-width:100%;aspect-ratio:unset;border-radius:0;box-shadow:none;border:none}[data-portfolio] .hero-img-mock .mb-head{display:none}[data-portfolio] .hero-img-mock .mb-body{flex:1;min-height:0;border-radius:0}[data-portfolio] .hero-img-mock .mb-body img{width:100%;height:100%;object-fit:cover;object-position:top;display:block}}@media(min-width:768px)and (max-width:1023px){[data-portfolio] .logo{left:24px}[data-portfolio] .logo img{height:56px}[data-portfolio] .topmeta{right:24px;font-size:11px}[data-portfolio] .year-nav{display:none}[data-portfolio] .project{grid-template-columns:1fr 1fr}[data-portfolio] .project .left{padding:100px 32px 80px}[data-portfolio] .project .project-num{left:32px}[data-portfolio] .cover{display:flex;flex-direction:column;padding:100px 32px 80px;overflow-y:auto}[data-portfolio] .cover .cover-globe{flex:0 0 auto;height:420px}[data-portfolio] .cover .cover-globe canvas{width:min(80vw,420px)!important;height:min(80vw,420px)!important}[data-portfolio] .cover .cover-marquee{grid-column:unset}[data-portfolio] .outro{padding:100px 48px 80px 32px}[data-portfolio] .bottom{left:24px}[data-portfolio] .nav{right:24px}[data-portfolio] .dot-nav{display:none}}[data-case-study],[data-portfolio][data-case-study]{position:fixed;inset:0;overflow-y:auto;overflow-x:hidden;background:var(--bg);color:var(--ink);font-family:var(--sans);font-weight:400;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}.cs-topbar{position:fixed;top:0;left:0;right:0;z-index:90;padding:14px 36px;display:flex;justify-content:space-between;align-items:center;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:linear-gradient(180deg,#060914d9,#06091433);border-bottom:1px solid var(--line)}.cs-logo{display:flex;align-items:center;text-decoration:none}.cs-logo img{height:80px;width:auto;display:block}.cs-topbar nav{display:flex;gap:24px;align-items:center;font-family:var(--mono);font-size:var(--fs-xs);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-dim)}.cs-topbar nav a{color:inherit;text-decoration:none}.cs-topbar nav a.cta{background:var(--blue);color:#06080f;padding:10px 18px;border-radius:999px;letter-spacing:.08em;transition:transform .3s,background .3s}.cs-topbar nav a.cta:hover{transform:translateY(-1px);background:#b8cefb}.cs-topbar .lang-toggle{display:flex;gap:0;border:1px solid rgba(255,255,255,.25);border-radius:6px;overflow:hidden;background:#06080f8c;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.cs-topbar .lang-toggle button{background:transparent;border:none;color:#ffffff8c;font-family:var(--mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;padding:5px 10px;cursor:pointer;transition:background .2s,color .2s}.cs-topbar .lang-toggle button.active{background:var(--blue);color:#06080f}.cs-topbar .lang-toggle button:not(.active):hover{background:#ffffff1a;color:#fff}.crumbs{padding:124px 60px 20px;max-width:1440px;margin:0 auto;font-family:var(--mono);font-size:var(--fs-xs);letter-spacing:.22em;text-transform:uppercase;color:var(--ink-dim);display:flex;gap:14px;align-items:center}.crumbs a{color:inherit;text-decoration:none}.crumbs a:hover{color:var(--blue)}.crumbs .sep{opacity:.4}.crumbs .cur{color:var(--blue)}.hero{max-width:1440px;margin:0 auto;padding:20px 60px 40px;display:grid;grid-template-columns:1.4fr 1fr;gap:60px;align-items:end}.hero .num{font-family:var(--mono);font-size:var(--fs-xs);letter-spacing:.22em;text-transform:uppercase;color:var(--blue);margin-bottom:16px}.hero h1{font-family:var(--display);font-weight:400;font-size:var(--fs-3xl);line-height:.88;letter-spacing:-.035em;margin-bottom:22px}.hero h1 em{font-style:italic;color:var(--blue);font-weight:400}.hero .tagline{font-family:var(--display);font-style:italic;font-size:var(--fs-lg);color:var(--ink-dim);max-width:620px}.hero .meta{display:grid;grid-template-columns:1fr 1fr;gap:20px 32px;font-family:var(--mono);font-size:var(--fs-xs);letter-spacing:.18em;text-transform:uppercase;color:var(--ink-dim);padding-top:24px;border-top:1px solid var(--line)}.hero .meta .k{color:var(--ink-dim);margin-bottom:8px}.cs-visit-site{grid-column:1 / -1;display:inline-flex;align-items:center;gap:6px;font-family:var(--mono);font-size:var(--fs-xs);letter-spacing:.18em;text-transform:uppercase;color:var(--blue);text-decoration:none;padding-top:16px;border-top:1px solid var(--line);transition:opacity .25s}.cs-visit-site:hover{opacity:.65}.hero .meta .v{color:var(--ink);font-family:var(--display);font-style:italic;font-size:var(--fs-lg);text-transform:none;letter-spacing:-.01em;font-weight:400}.cs-services{display:flex;flex-wrap:wrap;gap:8px;margin-top:28px}.cs-service-tag{font-family:var(--mono);font-size:var(--fs-xs);letter-spacing:.18em;text-transform:uppercase;color:var(--ink-dim);border:1px solid var(--line);border-radius:999px;padding:5px 14px;transition:border-color .25s,color .25s}.cs-service-tag:hover{border-color:var(--blue);color:var(--blue)}.deliverables-sec{max-width:1440px;margin:80px auto 0;padding:0 60px}.deliverables-sec h3{font-family:var(--mono);font-size:var(--fs-xs);letter-spacing:.26em;text-transform:uppercase;color:var(--blue);margin-bottom:30px;font-weight:400}.deliverables-list{list-style:none;padding:0;margin:0;border-top:1px solid var(--line)}.deliverables-list li{display:flex;align-items:baseline;gap:24px;padding:18px 0;border-bottom:1px solid var(--line);font-size:var(--fs-md);line-height:1.5;color:var(--ink)}.dl-num{font-family:var(--mono);font-size:var(--fs-xs);letter-spacing:.18em;color:var(--blue);flex-shrink:0;width:24px}.hero-phone-frame{display:none}[data-case-study] .hero-img-mock{width:100%;display:flex;justify-content:center;align-items:center;padding:40px 0}[data-case-study] .hero-img-mock .mock-browser{max-width:760px!important;width:100%;aspect-ratio:16 / 10}.hero-phone-mockup{width:100%;height:auto;display:block}.feature{max-width:1440px;margin:40px auto 0;padding:0 60px}.feature .frame{position:relative;border-radius:8px;overflow:hidden;border:1px solid var(--line-strong);background:#0b0e19;aspect-ratio:16/8}.feature .frame .scene{position:absolute;inset:0}.feature .frame .caption{position:absolute;left:20px;bottom:16px;right:20px;display:flex;justify-content:space-between;font-family:var(--mono);font-size:var(--fs-xs);letter-spacing:.16em;text-transform:uppercase;color:#fffc;mix-blend-mode:difference;z-index:5}.metrics-band{max-width:1440px;margin:80px auto 0;padding:0 60px}.metrics-band h3{font-family:var(--mono);font-size:var(--fs-xs);letter-spacing:.26em;text-transform:uppercase;color:var(--blue);margin-bottom:24px;font-weight:400}.metrics-band .grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-top:1px solid var(--line-strong);border-bottom:1px solid var(--line-strong)}.metrics-band .cell{padding:32px 28px;border-right:1px solid var(--line);display:flex;flex-direction:column;justify-content:space-between;min-height:200px}.metrics-band .cell:last-child{border-right:0}.metrics-band .n{font-family:var(--display);font-size:var(--fs-2xl);font-weight:400;line-height:.95;letter-spacing:-.03em;overflow-wrap:break-word}.metrics-band .n em{font-style:italic;color:var(--blue)}.metrics-band .l{font-family:var(--mono);font-size:var(--fs-xs);letter-spacing:.18em;text-transform:uppercase;color:var(--ink-dim);margin-top:16px}.metrics-band .s{font-size:var(--fs-base);line-height:1.5;color:var(--ink-dim);margin-top:10px;max-width:220px}.narrative{max-width:1440px;margin:100px auto 0;padding:0 60px;display:grid;grid-template-columns:120px 1fr;gap:40px}.narrative aside{font-family:var(--mono);font-size:var(--fs-xs);letter-spacing:.26em;text-transform:uppercase;color:var(--blue)}.narrative .body .chap{margin-bottom:80px}.narrative .body h2{font-family:var(--display);font-weight:400;font-size:var(--fs-xl);letter-spacing:-.025em;line-height:.95;margin-bottom:28px}.narrative .body h2 em{font-style:italic;color:var(--blue)}.narrative .body p{font-size:var(--fs-md);line-height:1.65;margin-bottom:20px;color:var(--ink)}.narrative .body p.lede{font-family:var(--display);font-style:italic;font-size:var(--fs-lg);line-height:1.4;color:var(--ink-dim);margin-bottom:36px}.narrative .body p .drop{font-family:var(--display);font-size:var(--fs-3xl);font-weight:400;line-height:.75;float:left;color:var(--blue);margin:4px 12px 0 0}.narrative .pull{font-family:var(--display);font-style:italic;font-weight:400;font-size:clamp(1.25rem,1rem + 1.5vw,2.5rem);line-height:1.3;color:var(--blue);padding:36px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:32px 0;letter-spacing:-.01em}.stack-sec{max-width:1440px;margin:80px auto 0;padding:0 60px}.stack-sec h3{font-family:var(--mono);font-size:var(--fs-xs);letter-spacing:.26em;text-transform:uppercase;color:var(--blue);margin-bottom:30px;font-weight:400}.stack-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-top:1px solid var(--line)}.stack-item{padding:24px 22px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.stack-item:nth-child(4n){border-right:0}.stack-item .t{font-family:var(--mono);font-size:var(--fs-xs);letter-spacing:.2em;text-transform:uppercase;color:var(--ink-dim);margin-bottom:6px}.stack-item .n{font-family:var(--display);font-style:italic;font-size:var(--fs-lg);font-weight:400;letter-spacing:-.015em;color:var(--ink)}.gallery{max-width:1440px;margin:80px auto 0;padding:0 60px;display:grid;grid-template-columns:1fr 1fr;gap:16px}.gallery .frame{aspect-ratio:4/3;border-radius:6px;overflow:hidden;border:1px solid var(--line);background:#0b0e19;position:relative}.gallery .frame .scene{position:absolute;inset:0}.gallery .frame .cap{position:absolute;left:16px;bottom:12px;font-family:var(--mono);font-size:var(--fs-xs);letter-spacing:.16em;text-transform:uppercase;color:#fff;mix-blend-mode:difference}.timeline{max-width:1440px;margin:100px auto 0;padding:0 60px}.timeline h3{font-family:var(--mono);font-size:var(--fs-xs);letter-spacing:.26em;text-transform:uppercase;color:var(--blue);margin-bottom:30px;font-weight:400}.tl-row{display:grid;grid-template-columns:140px 1fr 200px;gap:40px;padding:28px 0;border-top:1px solid var(--line);align-items:baseline}.tl-row:last-child{border-bottom:1px solid var(--line)}.tl-row .week{font-family:var(--display);font-style:italic;font-size:var(--fs-lg);color:var(--blue);font-weight:400;letter-spacing:-.01em}.tl-row .what{font-family:var(--display);font-size:var(--fs-md);line-height:1.3;color:var(--ink);font-weight:400;max-width:640px}.tl-row .out{font-family:var(--mono);font-size:var(--fs-xs);letter-spacing:.2em;text-transform:uppercase;color:var(--ink-dim);text-align:right}.testimonial{max-width:1440px;margin:100px auto 0;padding:0 60px;text-align:center}.testimonial blockquote{font-family:var(--display);font-style:italic;font-weight:400;font-size:var(--fs-xl);line-height:1.15;letter-spacing:-.02em;max-width:1100px;margin:0 auto;color:var(--ink)}.testimonial blockquote em{color:var(--blue)}.testimonial .sig{margin-top:36px;font-family:var(--mono);font-size:var(--fs-xs);letter-spacing:.22em;text-transform:uppercase;color:var(--ink-dim)}.cs-next{max-width:1440px;margin:140px auto 0;padding:60px;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr auto;gap:40px;align-items:end}.cs-next .k{font-family:var(--mono);font-size:var(--fs-xs);letter-spacing:.26em;text-transform:uppercase;color:var(--ink-dim);margin-bottom:10px}.cs-next h2{font-family:var(--display);font-weight:400;font-size:var(--fs-2xl);line-height:.9;letter-spacing:-.03em}.cs-next h2 em{font-style:italic;color:var(--blue)}.cs-next a.btn{font-family:var(--mono);font-size:var(--fs-xs);letter-spacing:.18em;text-transform:uppercase;color:var(--blue);text-decoration:none;padding:16px 24px;border:1px solid var(--blue);border-radius:999px;transition:all .3s;white-space:nowrap}.cs-next a.btn:hover{background:var(--blue);color:#06080f}.cs-footer{max-width:1440px;margin:80px auto 0;padding:60px;display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);font-family:var(--mono);font-size:var(--fs-xs);letter-spacing:.18em;text-transform:uppercase;color:var(--ink-dim)}.cs-footer a{color:inherit;text-decoration:none}.cs-footer a:hover{color:var(--blue)}.cs-footer-address{white-space:nowrap}.dot{width:6px;height:6px;border-radius:50%;background:var(--blue);display:inline-block;margin-right:8px;animation:cs-pulse 2s ease-in-out infinite}@keyframes cs-pulse{0%,to{opacity:1}50%{opacity:.3}}.reveal{opacity:0;transform:translateY(20px);transition:opacity .9s,transform .9s}.reveal.in{opacity:1;transform:translateY(0)}@media(max-width:900px){.hero,.narrative,.cs-next{grid-template-columns:1fr!important;gap:30px!important;padding:20px 24px}.metrics-band .grid,.stack-grid{grid-template-columns:1fr 1fr}.metrics-band .cell{padding:24px 16px;min-height:140px}.gallery{grid-template-columns:1fr}.tl-row{grid-template-columns:1fr;gap:6px}.tl-row .out{text-align:left}.feature,.metrics-band,.stack-sec,.gallery,.timeline,.testimonial,.deliverables-sec{padding-left:24px;padding-right:24px}.stack-sec{margin-top:0}.hero-desktop-frame{display:none}.hero-phone-frame{display:block;width:100%;margin:0 auto;flex-shrink:0}.feature .frame{aspect-ratio:unset;overflow:visible;display:flex;flex-direction:column;background:none;border:none}.feature .frame .scene{position:static;width:100%;border-radius:8px;overflow:hidden;flex-shrink:0}.feature .frame .caption{position:static;display:flex;justify-content:space-between;gap:16px;padding:10px 0 0}.hero-img-mock{width:100%;height:auto;background:none;padding:20px 0;display:flex;justify-content:center}.hero-img-mock .mock-browser{width:100%;height:100%;aspect-ratio:unset;border-radius:8px;box-shadow:none;border:none}.hero-img-mock .mb-head{display:none}.hero-img-mock .mb-body{padding:0!important;border-radius:8px;overflow:hidden}.hero-img-mock .mb-body img{width:100%;height:auto;display:block;border-radius:8px}.crumbs{padding:100px 24px 20px}.cs-topbar nav a:not(.cta){display:none}.cs-logo img{height:48px}.cs-footer{flex-direction:column;align-items:center;text-align:center;gap:16px;padding:40px 24px 48px;margin-top:48px}.cs-footer-address{white-space:normal;line-height:1.8}}.gs-root{max-width:1440px;margin:80px auto 0;padding:0 60px}.gs-viewport{overflow:hidden;border-radius:8px;border:1px solid var(--line-strong);background:#0b0e19}.gs-container{display:flex;touch-action:pan-y}.gs-slide{flex:0 0 100%;min-width:0;display:flex;align-items:center;justify-content:center;aspect-ratio:16 / 9;background:#0b0e19}.gs-slide img{width:100%;height:100%;object-fit:contain;object-position:center;display:block}.gs-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 4px 0}.gs-caption{font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-dim);flex:1;opacity:0;transform:translateY(4px);transition:opacity .4s ease,transform .4s ease}.gs-caption--in{opacity:1;transform:translateY(0)}.gs-controls{display:flex;align-items:center;gap:14px}.gs-counter{font-family:var(--mono);font-size:10px;letter-spacing:.18em;color:var(--ink-dim);min-width:48px;text-align:center}.gs-btn{background:none;border:1px solid var(--line);color:var(--ink-dim);width:32px;height:32px;border-radius:50%;cursor:pointer;font-size:13px;display:flex;align-items:center;justify-content:center;transition:border-color .25s,color .25s}.gs-btn:hover{border-color:var(--blue);color:var(--blue)}.gs-dots{display:flex;gap:6px;align-items:center}.gs-dot{width:5px;height:5px;border-radius:50%;background:var(--line-strong);border:none;cursor:pointer;padding:0;transition:background .25s,transform .25s}.gs-dot--active{background:var(--blue);transform:scale(1.4)}@media(max-width:900px){.gs-root{padding:0 24px}.gs-slide{aspect-ratio:4 / 3}.gs-bar{flex-wrap:wrap;gap:10px}.gs-caption{flex:1 1 100%}.gs-controls{order:2}.gs-dots{order:3;flex:1;justify-content:flex-end}}
