@font-face{font-family:Portfolio Serif;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/noto-serif-normal.woff2)format("woff2")}.portfolio{--background:#0e0b14;--surface:#191420;--ink:#f3eef7;--muted:#aca4b8;--iris:#c8b5f5;--line:#ffffff15;color:var(--ink);background:radial-gradient(ellipse at 83% 10%, #39264e42, transparent 29%), var(--background);min-height:100vh;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:15px;font-weight:400;line-height:1.65;overflow:clip visible}.portfolio *,.portfolio :before,.portfolio :after{box-sizing:border-box;color:inherit;font-family:inherit;font-size:inherit;font-weight:inherit}.portfolio h1,.portfolio h2,.portfolio h3,.portfolio p{margin:0}.portfolio a{text-decoration:none}.portfolio button{cursor:pointer}.portfolio a,.portfolio button{-webkit-tap-highlight-color:transparent}.portfolio a:focus-visible,.portfolio button:focus-visible{outline:2px solid var(--iris);outline-offset:6px}.portfolio section[id],.portfolio article[id]{scroll-margin-top:35px}.portfolio .page-width{width:min(1200px,100% - 96px);margin-inline:auto}.portfolio .section-space{padding-block:100px}.portfolio .skip-link{z-index:100;background:var(--iris);color:var(--background);padding:12px 20px;position:absolute;top:-100px}.portfolio .skip-link:focus{top:8px;left:8px}.portfolio-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:24px;height:108px;display:flex}.wordmark{align-items:center;gap:16px;font-size:14px;font-weight:500;display:flex}.portfolio .monogram{letter-spacing:-3px;font-family:Portfolio Serif,Georgia,serif;font-size:34px;line-height:1}.portfolio-header .wordmark>span{letter-spacing:-.5px;font-size:18px;font-weight:750}.portfolio .monogram span{color:var(--iris)}.portfolio-header nav{color:var(--muted);gap:34px;font-size:13px;display:flex}.portfolio-header a:hover,.portfolio-footer a:hover{color:var(--iris)}.header-contact{border:1px solid #ffffff24;border-radius:24px;align-items:center;gap:18px;padding:9px 18px;font-size:13px;display:flex}.hero-section{grid-template-columns:1.05fr 1fr;align-items:center;gap:18px;min-height:700px;padding-block:70px 76px;display:grid}.hero-copy{z-index:2;position:relative}.intro-line{align-items:center;gap:9px;display:flex;color:var(--iris)!important;font-size:12px!important}.intro-line>span{background:var(--iris);border-radius:50%;flex-shrink:0;width:6px;height:6px;box-shadow:0 0 12px #bdaaff44}.portfolio h1,.portfolio h2{letter-spacing:-.055em;font-family:Portfolio Serif,Georgia,serif;font-weight:400}.portfolio h1{margin-block:25px;font-size:clamp(54px,5.7vw,79px);line-height:1.12}.hero-description{max-width:435px;line-height:1.85;color:var(--muted)!important;font-size:16px!important}.hero-actions{align-items:center;gap:25px;margin-top:31px;display:flex}.portfolio .primary-button{background:var(--iris);color:#20152f;border:1px solid #e7dbff75;border-radius:10px;justify-content:center;align-items:center;gap:17px;min-height:49px;padding:13px 20px;font-size:12px;font-weight:600;transition:background .2s;display:inline-flex;box-shadow:0 7px 30px #b59ae00c}.portfolio .primary-button:hover{background:#deceff}.quiet-link{align-items:center;gap:12px;font-size:12px;display:inline-flex}.portfolio .quiet-link:hover{color:var(--iris)}.hero-location{align-items:center;gap:12px;display:flex;color:#9d94aa!important;margin-top:29px!important;font-size:11px!important}.hero-showcase{min-width:0;height:515px;position:relative}.showcase-orbit{background:radial-gradient(#8154ab15,#0000 65%);border:1px solid #bdaaff13;border-radius:50%;width:520px;height:520px;position:absolute;top:0;left:2%}.showcase-orbit:after{content:"";border:1px dashed #bdaaff17;border-radius:50%;position:absolute;inset:58px}.hero-window{border:1px solid #ffffff28;border-radius:12px;width:100%;max-width:470px;transition:transform .3s;display:block;position:absolute;overflow:hidden;box-shadow:0 25px 70px #0006}.hero-window-arcana{z-index:1;top:26px;left:3%;transform:rotate(-6deg)}.hero-window-fitarchive{z-index:2;width:86%;top:232px;left:15%;transform:rotate(5deg)}.fitarchive-hero-image{object-fit:cover;object-position:center top;width:100%;height:235px;display:block}.hero-window:hover{transform:translateY(-5px)rotate(0)}.window-bar{background:#24202b;justify-content:space-between;align-items:center;height:29px;padding:0 12px;display:flex;color:#aaa0b9!important;font-size:8px!important}.window-bar>svg{width:11px;height:11px}.window-dots{gap:4px;display:flex}.window-dots i{background:#817687;border-radius:50%;width:5px;height:5px}.window-dots i:first-child{background:#c58388}.window-dots i:nth-child(2){background:#c7b37e}.window-dots i:nth-child(3){background:#82ae9a}.showcase-note{align-items:center;gap:11px;display:flex;position:absolute;bottom:-9px;left:16%;color:#b3a6c2!important;font-size:11px!important}.showcase-note>span{color:var(--iris);font-size:22px}.arcana-preview{color:#f3edf7;background:radial-gradient(at 75%,#57396550,#0000 55%),#100c18;height:330px;overflow:hidden}.preview-top{border-bottom:1px solid #ffffff0a;justify-content:space-between;align-items:center;padding:16px 22px;display:flex;font-size:8px!important}.preview-top>span:first-child{align-items:center;gap:5px;font-weight:600;display:flex}.preview-top>span:nth-child(2){opacity:.6;font-size:7px}.preview-top img{object-fit:contain;display:inline-block}.arcana-preview-body{justify-content:space-between;align-items:center;gap:10px;padding:25px 30px;display:flex}.portfolio .preview-caption{color:#bdaaff;font-size:8px}.portfolio .arcana-preview-body p{letter-spacing:-1.5px;margin-block:14px 20px;font-family:Portfolio Serif,Georgia,serif;font-size:30px;line-height:1.18}.preview-pill{background:#c8b5f5;border-radius:5px;align-items:center;gap:13px;padding:7px 10px;display:inline-flex;color:#261636!important;font-size:7px!important}.preview-pill>span{font-size:12px}.card-orbit{flex-shrink:0;place-items:center;width:43%;height:205px;display:grid;position:relative}.orbit-ring{border:1px solid #bdaaff20;border-radius:50%;width:210px;height:210px;position:absolute}.card-orbit img{object-fit:cover;border-radius:7px;width:105px;height:177px;position:absolute;box-shadow:0 9px 30px #0008}.card-orbit .tarot-back{transform:rotate(-13deg)translate(-26px,-4px)}.card-orbit .tarot-front{transform:rotate(10deg)translate(21px,1px)}.preview-bottom{justify-content:space-between;padding:0 23px;display:flex;color:#9586a6!important;font-size:7px!important}.preview-compact.arcana-preview{height:260px}.preview-compact .preview-top{padding:11px 17px}.preview-compact .arcana-preview-body{padding:18px 24px}.preview-compact .arcana-preview-body p{font-size:25px}.preview-compact .card-orbit{height:155px}.preview-compact .card-orbit img{width:83px;height:140px}.preview-compact .orbit-ring{width:165px;height:165px}.preview-compact .preview-caption{font-size:7px}.smalltool-preview{color:#25272d;background:#f5f5f7;height:330px}.smalltool-preview .preview-top{color:#55535d;background:#fff;border-color:#1717230d}.smalltool-preview .preview-top>span:first-child{color:#25272d;font-size:12px}.smalltool-preview-body{text-align:center;padding:24px 36px}.portfolio .smalltool-badge{color:#187c72;background:#e8f3f0;border-radius:12px;padding:4px 8px;font-size:7px}.portfolio .smalltool-preview-body p{letter-spacing:-.8px;color:#292832;margin:10px 0 14px;font-size:26px;font-weight:650;line-height:1.18}.mock-search{text-align:left;background:#fff;border:1px solid #dedee5;border-radius:7px;align-items:center;gap:8px;max-width:320px;margin:auto;padding:10px 13px;display:flex;color:#7a7782!important;font-size:8px!important}.tool-tiles{text-align:left;grid-template-columns:repeat(3,1fr);gap:8px;max-width:360px;margin:12px auto 0;display:grid}.tool-tiles>div{background:#fff;border:1px solid #e5e5eb;border-radius:7px;min-width:0;padding:10px 8px 9px 34px;position:relative}.tool-tiles strong{white-space:nowrap;font-size:8px;font-weight:600;display:block}.tool-tiles small{color:#74717c;white-space:nowrap;font-size:6px;display:block}.tile-icon{position:absolute;top:9px;left:10px;color:#7351a5!important;font-size:15px!important}.tool-tiles>div:nth-child(2) .tile-icon{color:#087b72!important;font-size:12px!important}.tool-tiles>div:nth-child(3) .tile-icon{color:#0065d9!important}.preview-compact.smalltool-preview{height:235px}.preview-compact .smalltool-preview-body{padding:13px 23px}.preview-compact .smalltool-preview-body p{margin:7px 0 10px;font-size:22px}.preview-compact .mock-search{padding:7px 10px}.preview-compact .tool-tiles{margin-top:9px}.preview-compact .tool-tiles>div{padding:8px 5px 7px 29px}.preview-compact .tile-icon{left:7px}.preview-compact .smalltool-badge{font-size:6px}.experience-strip{border-block:1px solid var(--line);justify-content:space-between;align-items:center;gap:25px;padding-block:28px;display:flex}.experience-strip p{line-height:1.5;color:var(--muted)!important;font-size:11px!important}.experience-strip p span{color:#8f859e}.experience-strip>span{letter-spacing:-.6px;color:#c4bdce;font-size:20px;font-weight:550}.experience-strip>a{color:var(--muted);align-items:center;gap:12px;font-size:11px;display:flex}.section-heading{justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:42px;display:flex}.portfolio .section-kicker{color:var(--iris);margin-bottom:18px;font-size:12px}.portfolio h2{font-size:clamp(35px,4vw,51px);line-height:1.2}.section-heading>p{color:var(--muted);max-width:330px;font-size:14px}.projects-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px;display:grid}.project-visual{border:1px solid #ffffff20;border-radius:16px;padding:28px 25px;transition:border-color .2s;display:block;position:relative;overflow:hidden}.project-visual:hover{border-color:#c8b5f577}.project-visual>.arcana-preview,.project-visual>.smalltool-preview{border:1px solid #ffffff20;border-radius:8px;height:310px;box-shadow:0 18px 30px #0002}.arcana-visual{background:radial-gradient(at 40% 30%,#523660,#251a33)}.smalltool-visual{background:#c1cbd0}.fitarchive-visual{background:radial-gradient(at 75% 24%,#50416d,#191524 72%)}.lunglinh-visual{background:#d6c3a6}.simplify-visual{background:#d6ded4}.project-visual .arcana-preview-body{padding-inline:20px}.project-visual .arcana-preview-body p{font-size:26px}.project-visual .card-orbit img{width:91px;height:154px}.project-visual .orbit-ring{width:176px;height:176px}.project-visual .smalltool-preview-body{padding:20px 18px}.visit-bubble{background:#1a1425;border:1px solid #ffffff35;border-radius:50%;place-items:center;width:34px;height:34px;display:grid;position:absolute;bottom:14px;right:14px;color:#e9e0f9!important}.project-heading{justify-content:space-between;align-items:center;gap:12px;margin-block:24px 11px;display:flex}.portfolio .project-heading h3{letter-spacing:-.7px;font-family:Portfolio Serif,Georgia,serif;font-size:27px}.project-heading>span{color:var(--muted);font-size:10px}.project>p{color:var(--muted);max-width:490px;font-size:14px;line-height:1.8}.project-tags{flex-wrap:wrap;gap:7px;margin-block:18px;display:flex}.project-tags span{border:1px solid var(--line);color:#b7afc3;border-radius:5px;padding:4px 9px;font-size:9px}.project-link{align-items:center;gap:13px;font-size:12px;font-weight:500;display:inline-flex;color:var(--iris)!important}.project-link:hover{text-decoration:underline}.services-section,.about-section,.process-section{border-top:1px solid var(--line)}.services-grid{grid-template-columns:repeat(3,1fr);gap:38px;display:grid}.services-grid article{padding-top:10px}.service-symbol{background:#c8b5f508;border:1px solid #c8b5f524;border-radius:10px;justify-content:center;align-items:center;width:40px;height:40px;margin-bottom:21px;display:flex;color:var(--iris)!important;font-size:23px!important}.portfolio .services-grid h3{letter-spacing:-.4px;margin-bottom:13px;font-size:19px;font-weight:500;line-height:1.4}.services-grid p{color:var(--muted);max-width:335px;font-size:14px;line-height:1.8}.service-detail{margin-top:24px;display:block;color:#9f91af!important;font-size:10px!important}.about-section{grid-template-columns:1fr 1fr;align-items:center;gap:110px;display:grid}.about-copy>p:not(.section-kicker){color:var(--muted);margin-top:22px;font-size:14px;line-height:1.9}.about-links{color:var(--iris);gap:26px;margin-top:25px;display:flex}.experience-panel{border:1px solid var(--line);background:linear-gradient(140deg,#22192c88,#16121c44);border-radius:18px;padding:32px}.portfolio .panel-heading{color:var(--muted);margin-bottom:30px;font-size:11px}.experience-panel article{gap:20px;padding-bottom:30px;display:flex;position:relative}.experience-panel article:last-child{padding-bottom:0}.experience-marker{background:var(--iris);border-radius:50%;flex-shrink:0;width:7px;height:7px;margin-top:8px}.experience-panel article:not(:last-child):after{content:"";background:var(--line);width:1px;position:absolute;top:24px;bottom:8px;left:3px}.portfolio .experience-panel h3{font-size:17px;font-weight:500;line-height:1.5}.experience-panel article span:not(.experience-marker){color:var(--iris);font-size:11px}.experience-panel article p{color:var(--muted);margin-top:9px;font-size:12px;line-height:1.8}.process-grid{grid-template-columns:repeat(3,1fr);gap:48px;margin:0;padding:0;list-style:none;display:grid}.process-grid li>span{color:#a78dbf;font-family:Portfolio Serif,Georgia,serif;font-size:23px}.portfolio .process-grid h3{margin:12px 0 10px;font-size:17px;font-weight:500}.process-grid p{color:var(--muted);font-size:13px;line-height:1.85}.contact-section{text-align:center;background:radial-gradient(at 50% 100%,#63477c29,#0000 75%),#18121f44;border:1px solid #c8b5f51e;border-radius:24px;padding:62px 30px 48px;position:relative;margin-block:10px 75px!important}.contact-star{margin-bottom:16px;line-height:1;color:var(--iris)!important;font-size:34px!important}.portfolio .contact-section .section-kicker{margin-bottom:13px}.portfolio .contact-section h2{font-size:clamp(42px,5vw,64px)}.contact-section>p:not(.section-kicker){color:var(--muted);margin-top:20px;font-size:14px;line-height:1.8}.contact-section>.primary-button{margin-top:25px}.email-row{justify-content:center;align-items:center;gap:9px;margin-top:17px;font-size:12px;display:flex}.email-row>a{color:var(--muted)}.contact-whatsapp{color:var(--iris);text-underline-offset:4px;margin-top:6px;font-size:13px;text-decoration:underline;display:inline-flex}.contact-whatsapp:hover{color:#fff}.email-row button{min-width:36px;min-height:36px;color:var(--muted);background:0 0;border:0;place-items:center;display:grid}.email-row button:hover{color:var(--iris)}.portfolio .contact-section .copy-status{min-height:22px;color:var(--iris);margin:0;font-size:11px}.portfolio .contact-section .platform-note{margin-top:13px;font-size:11px}.portfolio-footer{justify-content:space-between;align-items:center;gap:25px;padding-block:0 36px;display:flex}.portfolio-footer .wordmark{color:var(--muted);gap:14px;font-size:11px}.portfolio-footer .monogram{color:var(--ink)}.portfolio-footer>div{flex-wrap:wrap;justify-content:center;gap:10px 25px;display:flex}.portfolio-footer>div a{color:var(--muted);align-items:center;gap:6px;font-size:11px;display:flex}.portfolio-footer>div svg{width:12px;height:12px}.portfolio-footer>span{color:#95899f;font-size:10px}@media (width>=1500px){.hero-section{min-height:740px}.hero-showcase{height:535px}.hero-window-arcana{top:35px}.hero-window-fitarchive{top:250px}}@media (width<=1100px){.portfolio .page-width{width:calc(100% - 64px)}.hero-section{gap:0;min-height:660px}.portfolio h1{font-size:66px}.hero-description{max-width:370px;font-size:14px!important}.hero-actions{flex-wrap:wrap;gap:18px}.hero-showcase{height:465px}.hero-window-arcana{width:108%;top:45px;left:2%}.hero-window-fitarchive{width:92%;top:232px;left:10%}.hero-window .preview-top>span:nth-child(2){display:none}.hero-window .arcana-preview-body p{font-size:23px}.hero-window .smalltool-preview-body{padding-inline:12px}.hero-window .tool-tiles small{display:none}.hero-window .smalltool-preview{height:222px}.showcase-note{bottom:-18px;left:10%}.experience-strip>a{display:none}.project-visual{padding:20px 17px}.project-visual>.arcana-preview,.project-visual>.smalltool-preview{height:280px}.project-visual .preview-top>span:nth-child(2){display:none}.project-visual .arcana-preview-body{padding:23px 17px}.project-visual .arcana-preview-body p{font-size:22px}.project-visual .card-orbit{height:165px}.project-visual .card-orbit img{width:77px;height:130px}.project-visual .orbit-ring{width:145px;height:145px}.project-heading{flex-direction:column;align-items:flex-start;gap:3px}.about-section{gap:50px}.services-grid{gap:25px}.service-detail{line-height:1.7}.portfolio-footer{flex-wrap:wrap}}@media (width<=760px){.portfolio .page-width{width:calc(100% - 40px)}.portfolio-header{gap:15px;height:85px}.portfolio-header .wordmark>span:last-child{display:none}.portfolio-header nav{gap:21px;font-size:12px}.header-contact{gap:7px;padding:8px 12px;font-size:11px}.hero-section{grid-template-columns:1fr;gap:25px;padding-block:49px 32px}.portfolio h1{letter-spacing:-.055em;font-size:clamp(51px,10vw,73px);line-height:1.1}.hero-description{max-width:475px}.hero-location{font-size:10px!important}.hero-showcase{justify-self:center;width:min(460px,90%);height:470px;margin-top:5px}.hero-window-arcana{width:100%;top:32px;left:-3%}.hero-window-fitarchive{width:90%;top:225px;left:13%}.showcase-note{bottom:0;left:12%}.experience-strip{flex-wrap:wrap;justify-content:flex-start;gap:20px 30px;padding-block:24px}.experience-strip>p{width:100%}.experience-strip>p br{display:none}.experience-strip>p span{margin-left:4px}.experience-strip>span{font-size:18px}.portfolio .section-space{padding-block:64px}.section-heading{flex-direction:column;align-items:flex-start;gap:22px;margin-bottom:31px}.section-heading>p{max-width:450px}.portfolio h2{font-size:39px}.projects-grid{grid-template-columns:1fr;gap:45px}.project-visual{padding:26px}.project-visual>.arcana-preview,.project-visual>.smalltool-preview{height:310px}.project-visual .arcana-preview-body{padding:28px 20px}.project-visual .arcana-preview-body p{font-size:27px}.project-visual .card-orbit{height:180px}.project-visual .card-orbit img{width:90px;height:150px}.project-heading{flex-direction:row;align-items:center}.services-grid{grid-template-columns:1fr;gap:29px}.services-grid article{border-bottom:1px solid var(--line);padding:0 0 26px 60px;position:relative}.services-grid article:last-child{border-bottom:0;padding-bottom:0}.service-symbol{position:absolute;top:0;left:0}.services-grid p{max-width:100%}.service-detail{margin-top:14px}.about-section{grid-template-columns:1fr;gap:35px}.experience-panel{padding:27px}.process-grid{grid-template-columns:1fr;gap:28px}.process-grid li{padding-left:48px;position:relative}.process-grid li>span{position:absolute;top:0;left:0}.portfolio .process-grid h3{margin-top:3px}.contact-section{padding:40px 22px 32px;margin-bottom:45px!important}.desktop-break{display:none}.portfolio-footer{flex-direction:column;gap:22px;padding-bottom:30px}}@media (width<=390px){.portfolio-header nav{gap:14px}.hero-showcase{height:430px}.hero-window-arcana{top:20px}.hero-window-fitarchive{top:205px}.hero-window .arcana-preview-body{padding-inline:17px}.hero-window .arcana-preview-body p{font-size:20px}.hero-window .card-orbit img{width:68px;height:115px}.hero-window .preview-caption{font-size:6px}.hero-window .smalltool-preview-body p{font-size:20px}.hero-window .tool-tiles>div{text-align:center;padding:7px 4px}.hero-window .tile-icon{display:none}.showcase-note{font-size:10px!important}.project-visual{padding:18px 12px}.project-visual .arcana-preview-body{padding-inline:16px}.project-visual .arcana-preview-body p{font-size:23px}.project-visual .card-orbit img{width:75px;height:127px}.project-heading{flex-direction:column;align-items:flex-start}.experience-strip{gap:15px 24px}.experience-strip>span{font-size:16px}}@media (prefers-reduced-motion:reduce){.portfolio *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}html{margin:0;scroll-padding-top:24px}body{margin:0}button{font:inherit}img{max-width:100%;height:auto;display:block}svg{flex-shrink:0}a,button,summary{touch-action:manipulation}.portfolio ul,.portfolio ol{padding-left:20px}.portfolio .process-grid{padding-left:0}.availability-banner{background:#bdaaff0b;border-bottom:1px solid #c8b5f522;font-size:11px}.availability-banner>.page-width{justify-content:space-between;align-items:center;gap:24px;min-height:42px;display:flex}.availability-banner p{color:#d6c6f0;align-items:center;gap:9px;display:flex}.status-dot{background:#b5d2bb;border-radius:50%;flex-shrink:0;width:6px;height:6px;display:inline-block;box-shadow:0 0 9px #b5d2bb28}.banner-detail{color:var(--muted)}.availability-banner a{color:#d6c6f0;align-items:center;gap:9px;display:flex}.availability-banner svg{width:13px;height:13px}.portfolio-header nav [aria-current=page]{color:var(--iris)}.project-visual>.product-screenshot{aspect-ratio:1.5;object-fit:cover;border:1px solid #ffffff20;border-radius:8px;width:100%;height:auto;box-shadow:0 18px 30px #0002}.hero-location{flex-wrap:wrap}.portfolio .faq-section{border-top:1px solid var(--line);grid-template-columns:1fr 1.3fr;gap:80px;display:grid}.faq-list details{border-bottom:1px solid var(--line)}.faq-list details:first-child{border-top:1px solid var(--line)}.faq-list summary{cursor:pointer;padding:22px 35px 22px 0;font-size:15px;list-style:none;position:relative}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:"+";color:var(--iris);font-size:24px;font-weight:300;position:absolute;top:18px;right:5px}.faq-list details[open] summary:after{content:"−"}.faq-list summary:focus-visible{outline:2px solid var(--iris);outline-offset:5px}.faq-list details>p{color:var(--muted);padding:0 26px 25px 0;font-size:14px;line-height:1.8}.contact-section .status-dot{margin-right:6px}.case-page{padding-bottom:65px}.back-link{color:var(--muted);margin-top:38px}.case-header{max-width:760px;padding-block:55px 50px}.portfolio .case-header h1{overflow-wrap:break-word;margin:15px 0 24px;font-size:clamp(48px,6vw,80px)}.portfolio .case-headline{letter-spacing:-1px;font-family:Portfolio Serif,Georgia,serif;font-size:30px;line-height:1.35}.case-description{color:var(--muted);max-width:650px;font-size:16px;margin-top:20px!important}.case-header .primary-button{margin-top:28px}.case-image{border:1px solid #ffffff20;border-radius:20px;margin:0;padding:35px}.case-image img{border-radius:10px;width:100%;height:auto}.case-image figcaption{text-align:center;color:var(--ink);margin-top:17px;font-size:11px}.case-image.smalltool-visual figcaption,.case-image.lunglinh-visual figcaption,.case-image.simplify-visual figcaption{color:#323844}.case-overview{grid-template-columns:1fr 1fr;gap:85px;padding-block:65px;display:grid}.portfolio .case-overview h2{margin-bottom:20px;font-size:30px}.case-overview p,.case-engineering p{color:var(--muted);font-size:15px;line-height:1.85}.case-features{border-block:1px solid var(--line);padding-block:55px 65px}.case-features .services-grid{margin-top:38px}.case-engineering{grid-template-columns:1fr 1.3fr;gap:65px;padding-block:65px;display:grid}.case-engineering p+p{margin-top:20px}.case-cta,.resume-contact{border:1px solid var(--line);background:#bdaaff06;border-radius:16px;justify-content:space-between;align-items:center;gap:30px;padding:40px;display:flex}.portfolio .case-cta h2,.portfolio .resume-contact h2{font-size:32px}.next-project{border-top:1px solid var(--line);grid-template-columns:1fr auto;gap:8px;margin-top:45px;padding-top:28px;display:grid}.next-project>span{color:var(--muted);font-size:12px}.next-project>strong{grid-column:1;font-family:Portfolio Serif,Georgia,serif;font-size:28px}.next-project svg{width:30px;height:30px;color:var(--iris);grid-area:1/2/3;align-self:center}.resume-page{padding-block:35px 65px}.resume-toolbar{justify-content:space-between;align-items:center;gap:20px;margin-bottom:32px;display:flex}.resume-sheet{color:#292532;background:#f8f7fa;border-radius:16px;padding:clamp(25px,5vw,70px);font-size:14px;line-height:1.8}.resume-heading{border-bottom:1px solid #29253226;justify-content:space-between;gap:30px;padding-bottom:28px;display:flex}.portfolio .resume-sheet .section-kicker{color:#715597;font-size:11px}.portfolio .resume-heading h1{margin:5px 0 12px;font-size:53px;line-height:1.1}.portfolio .resume-role{color:#5b4573;font-size:18px;font-weight:500}.portfolio .resume-location{color:#675f71;margin-top:7px;font-size:12px}.resume-heading address{flex-direction:column;justify-content:center;gap:7px;font-size:12px;font-style:normal;display:flex}.resume-heading address a{text-underline-offset:3px;color:#5e447e;text-decoration:underline}.resume-sheet>section{margin-top:32px}.portfolio .resume-sheet h2{letter-spacing:-.2px;color:#573d77;border-bottom:1px solid #29253220;margin-bottom:17px;padding-bottom:9px;font-family:inherit;font-size:17px;font-weight:650}.portfolio .resume-sheet h3{margin:0;font-size:16px;font-weight:600}.resume-summary p+p{margin-top:12px}.resume-job{margin-bottom:27px}.resume-job:last-child{margin-bottom:0}.job-heading{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:8px;display:flex}.job-heading>span{color:#675f71;white-space:nowrap;font-size:11px}.job-heading>div p{color:#635372;font-size:13px}.resume-job>p{font-size:13px}.resume-job ul{margin:9px 0;padding-left:18px}.resume-job li{margin-bottom:5px;padding-left:2px;font-size:13px;line-height:1.8}.portfolio .resume-tech{color:#6d6279;font-size:11px}.resume-product-grid{grid-template-columns:1fr 1fr;gap:30px;display:grid}.resume-product-grid h3 a{color:#5e447e;align-items:center;gap:6px;display:flex}.resume-product-grid p,.client-work-note{font-size:13px}.client-work-note{margin-top:17px!important}.resume-skills dl{margin:0}.resume-skills dl>div{grid-template-columns:165px 1fr;gap:15px;margin-bottom:10px;font-size:13px;display:grid}.resume-skills dt{font-weight:600}.resume-skills dd{margin:0}.resume-education p{font-size:13px}.resume-contact{margin-top:36px}.not-found{min-height:65vh;padding-block:90px}.portfolio .not-found h1{font-size:60px}.not-found>p:not(.section-kicker){max-width:540px;color:var(--muted);margin:25px 0}.not-found .primary-button{margin-top:15px}@media (width<=1000px){.banner-detail{display:none}.portfolio .faq-section{gap:40px}.resume-heading{flex-direction:column}.case-overview{gap:45px}.case-engineering{gap:35px}}@media (width<=760px){.availability-banner>.page-width{gap:12px;min-height:40px;font-size:10px}.availability-banner a{font-size:10px}.portfolio-header .wordmark>span:last-child{font-size:12px;display:block}.portfolio-header .header-contact{display:none}.portfolio-header nav{gap:18px;font-size:11px}.portfolio .faq-section{grid-template-columns:1fr;gap:30px}.case-header{padding-block:35px}.portfolio .case-header h1{font-size:59px}.portfolio .case-headline{font-size:27px}.case-image{border-radius:13px;padding:14px}.case-overview,.case-engineering{grid-template-columns:1fr;gap:30px;padding-block:42px}.case-features{padding-block:42px}.case-features .services-grid article{padding-left:0}.case-cta,.resume-contact{flex-direction:column;align-items:flex-start;padding:27px}.case-page{padding-bottom:40px}.resume-sheet{padding:27px 24px}.portfolio .resume-heading h1{font-size:42px}.portfolio .resume-role{font-size:16px}.job-heading{flex-direction:column;gap:3px}.resume-product-grid{grid-template-columns:1fr;gap:18px}.resume-skills dl>div{grid-template-columns:1fr;gap:3px}.resume-heading address a{overflow-wrap:anywhere}.resume-toolbar .primary-button{gap:9px;padding:10px 12px;font-size:11px}.resume-toolbar .quiet-link{font-size:11px}.portfolio .not-found h1{font-size:43px}}@media (width<=390px){.portfolio-header nav{gap:12px}.portfolio-header .wordmark{gap:9px}.portfolio-header .monogram{font-size:29px}.portfolio-header .wordmark>span:last-child{font-size:11px}.availability-banner a{gap:5px;font-size:9px}.availability-banner p{gap:6px;font-size:9px}.intro-line{font-size:11px!important}.hero-location{gap:8px;font-size:9px!important}}@media print{@page{size:A4;margin:14mm 16mm}.portfolio{color:#222;background:#fff;font-size:10pt;overflow:visible}.availability-banner,.portfolio-header,.portfolio-footer,.resume-toolbar,.resume-contact,.skip-link{display:none!important}.portfolio .resume-page{width:100%;margin:0;padding:0}.resume-sheet{color:#222;background:#fff;border-radius:0;padding:0;font-size:9pt;line-height:1.5}.resume-heading{flex-direction:row;gap:20px;padding-bottom:15px}.portfolio .resume-heading h1{font-size:30pt}.portfolio .resume-role{font-size:12pt}.resume-heading address{font-size:8pt}.resume-sheet>section{margin-top:18px}.portfolio .resume-sheet h2{break-after:avoid;margin-bottom:10px;padding-bottom:5px;font-size:12pt}.portfolio .resume-sheet h3{break-after:avoid;font-size:10pt}.resume-job{margin-bottom:17px}.resume-job>p,.resume-job li,.resume-product-grid p,.client-work-note,.resume-skills dl>div,.resume-education p{font-size:9pt;line-height:1.55}.job-heading{break-after:avoid;flex-direction:row}.job-heading>span{font-size:8pt}.resume-job ul{margin:6px 0}.resume-job li{margin-bottom:3px}.resume-sheet p,.resume-sheet li{orphans:3;widows:3}.resume-job,.resume-products,.resume-skills,.resume-education{break-inside:avoid}.resume-skills dl>div{grid-template-columns:135px 1fr;gap:12px;margin-bottom:5px}.resume-product-grid{grid-template-columns:1fr 1fr;gap:24px}.resume-sheet a{color:inherit;text-decoration:none}.resume-summary p+p{margin-top:8px}.resume-sheet svg{display:none}}.showcase-orbit{aspect-ratio:1;width:min(520px,100%);height:auto}.smalltool-preview .preview-top>span:nth-child(2){opacity:1;color:#55535d}.portfolio .smalltool-badge{color:#125d55}.mock-search{color:#5d5966!important}@media (width>=761px) and (width<=900px){.hero-section{grid-template-columns:1fr;gap:25px;padding-top:55px}.hero-description{max-width:500px}.hero-showcase{justify-self:center;width:min(460px,90%);height:470px}.hero-window-arcana{width:100%;top:25px;left:-3%}.hero-window-fitarchive{width:90%;top:225px;left:13%}.showcase-note{bottom:0}.hero-location{margin-top:20px!important}}.portfolio .brand-mark{flex-shrink:0;width:40px;height:40px}.portfolio .wordmark{gap:12px}.portfolio .about-section{align-items:start}.portfolio .about-copy>p:first-child{margin-top:0}.portfolio .work-section{border-top:1px solid var(--line)}@media (width<=390px){.portfolio .brand-mark{width:32px;height:32px}.portfolio .wordmark{gap:8px}}#services .services-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:45px 65px}#services .services-grid p{max-width:490px}.seo-section{border-top:1px solid var(--line);grid-template-columns:1fr 1.08fr;align-items:center;gap:70px;display:grid}.seo-copy>p:not(.section-kicker){color:var(--muted);margin-top:22px;font-size:14px;line-height:1.9}.portfolio .seo-deliverables{margin:24px 0;padding:0;list-style:none}.seo-deliverables li{color:#cec2dc;margin-block:10px;padding-left:21px;font-size:12px;position:relative}.seo-deliverables li:before{content:"";background:var(--iris);border-radius:50%;width:5px;height:5px;position:absolute;top:8px;left:0}.seo-copy .quiet-link{color:var(--iris)}.seo-proof{background:linear-gradient(150deg,#241c31,#15111d);border:1px solid #c8b5f52c;border-radius:18px;margin:0;padding:28px}.seo-proof>header{justify-content:space-between;align-items:flex-start;gap:15px;display:flex}.report-label{font-size:13px;font-weight:500}.seo-proof header p{color:var(--muted);margin-top:5px;font-size:11px}.private-label{color:#cab8e0;border:1px solid #c8b5f52c;border-radius:20px;padding:4px 8px;font-size:9px}.seo-metrics{grid-template-columns:repeat(2,minmax(0,1fr));margin:25px 0 0;display:grid}.seo-metrics>div{border-top:1px solid var(--line);flex-direction:column;padding:25px 0;display:flex}.seo-metrics>div:nth-child(2n){border-left:1px solid var(--line);padding-left:28px}.seo-metrics dt{color:var(--muted);margin-top:10px;font-size:11px}.seo-metrics dd{letter-spacing:-2px;order:-1;margin:0;font-size:clamp(32px,3.4vw,48px);font-weight:450;line-height:1.1}.seo-metrics>div:nth-child(-n+2) dd{color:#dccbff}.seo-proof figcaption{border-top:1px solid var(--line);color:var(--muted);padding-top:20px;font-size:10px}.seo-proof figcaption>span{color:#cfc2dd;margin-bottom:3px;display:block}.seo-proof figcaption p{margin-top:12px;font-size:10px;line-height:1.7}.resume-sheet .studio-tenure{margin-bottom:22px}.studio-tenure>p{color:#635372;font-size:13px}@media (width<=900px){.seo-section{gap:35px}.seo-proof{padding:22px}.seo-proof>header{flex-direction:column;gap:10px}}@media (width<=760px){#services .services-grid{grid-template-columns:1fr;gap:29px}.seo-section{grid-template-columns:1fr}.seo-proof>header{flex-direction:row}.seo-metrics dd{font-size:41px}}@media print{.resume-sheet .studio-tenure{margin-bottom:12px}.studio-tenure>p{font-size:9pt}}.hero-showcase{height:885px}.hero-window-dashboard{z-index:3;width:94%;top:455px;left:3%;transform:rotate(-3deg)}.hero-window-dashboard:hover{transform:rotate(-3deg)}.work-demo-contact{background:#191420;border:1px solid #c8b5f530;border-radius:16px;justify-content:space-between;align-items:center;gap:32px;margin-top:56px;padding:32px;display:flex}.portfolio .work-demo-contact h3{margin:0 0 10px;font-family:Portfolio Serif,Georgia,serif;font-size:25px;font-weight:400}.portfolio .work-demo-contact p{max-width:550px;color:var(--muted);margin:0;font-size:14px;line-height:1.8}.work-demo-contact .primary-button{flex-shrink:0}@media (width<=1100px){.hero-showcase{height:870px}.hero-window-dashboard{top:440px}}@media (width<=900px){.hero-showcase{height:875px}.hero-window-dashboard{width:96%;top:440px;left:0}.work-demo-contact{flex-direction:column;align-items:flex-start}}@media (width<=390px){.hero-showcase{height:830px}.hero-window-dashboard{top:410px}.work-demo-contact{padding:24px 20px}.work-demo-contact .primary-button{justify-content:space-between;width:100%;font-size:13px}}.header-controls{align-items:center;gap:20px;display:flex}.language-switch{flex-shrink:0;align-items:center;gap:8px;font-size:12px;display:flex}.language-switch a{color:var(--muted);padding:8px 2px}.language-switch a[aria-current=true]{color:var(--iris);text-underline-offset:5px;font-weight:700;text-decoration:underline}.language-switch>span{color:#726781}html[lang=vi] .hero-location{flex-wrap:wrap}html[lang=vi] .hero-copy h1{letter-spacing:-.045em;font-size:clamp(44px,5.5vw,76px);line-height:1.22}html[lang=vi] .hero-actions{flex-wrap:wrap}html[lang=vi] .showcase-note{left:5%;font-size:10px!important}@media (width<=1100px){.header-controls .header-contact{display:none}.portfolio-header nav{gap:20px}}@media (width<=760px){.portfolio-header{grid-template-columns:1fr auto;row-gap:12px;height:auto;padding-block:18px;display:grid}.portfolio-header .wordmark{grid-area:1/1}.header-controls{grid-area:1/2}.portfolio-header nav{grid-area:2/1/auto/-1;justify-content:space-between;gap:12px}.language-switch{font-size:11px}html[lang=vi] .hero-copy h1{font-size:clamp(39px,8vw,62px)}html[lang=vi] .availability-banner a{text-align:right}}@media print{.header-controls{display:none}}.portfolio .service-web-link{color:var(--iris);align-items:center;gap:10px;margin-top:20px;font-size:12px;display:inline-flex}.portfolio .service-web-link:hover{text-underline-offset:4px;text-decoration:underline}
