/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,::backdrop,:after,:before{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-ease:initial}}}@layer theme{:host,:root{--ease-in:cubic-bezier(.4,0,1,1);--ease-out:cubic-bezier(0,0,.2,1);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1)}}@layer base,components;@layer utilities{.\!visible{visibility:visible!important}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden}.absolute,.sr-only{position:absolute}.fixed{position:fixed}.static{position:static}.sticky{position:sticky}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.block{display:block}.contents{display:contents}.grid{display:grid}.hidden{display:none}.table{display:table}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.rounded{border-radius:.25rem}.italic{font-style:italic}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px)}.blur,.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.ease-in{--tw-ease:var(--ease-in);transition-timing-function:var(--ease-in)}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}}@font-face{font-family:Manrope;src:url(/fonts/manrope-latin-wght-normal.woff2)format("woff2");font-weight:200 800;font-display:swap}:root{color-scheme:light;--font:"Manrope",Arial,sans-serif;--surface:#eeeee8;--surface-alt:#e3e9e5;--text:#101514;--muted:#52605a;--line:#ced6cf;--accent:#0677ba;--nav-surface:#eeeee8;--scene-sky:url(/images/scene-sky.webp);--scene-sky-filter:none;--section-space:clamp(84px,8vw,142px);font-family:var(--font);background:var(--surface);color:var(--text);text-rendering:optimizelegibility}:root[data-theme=night]{color-scheme:dark;--surface:#080a0a;--surface-alt:#101718;--text:#f6faf9;--muted:#a4b2af;--line:#293735;--accent:#28afff;--nav-surface:#171d1d;--scene-sky-filter:brightness(.3) saturate(.85)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;overflow-x:clip}button,input,select,textarea{font:inherit}a,button{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{text-decoration:none}a,button{color:inherit}img{max-width:100%}::selection{background:var(--accent);color:var(--surface)}:focus-visible{outline:2px solid var(--accent);outline-offset:6px}[hidden]{display:none!important}.page-width{width:min(100% - 112px,1400px);margin-inline:auto}.section{padding-block:var(--section-space)}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:100;background:var(--text);color:var(--surface);border-radius:30px;padding:14px 22px;position:fixed;top:12px;left:16px;transform:translateY(-150%)}.skip-link:focus{transform:none}.button{background:var(--text);min-height:54px;color:var(--surface);white-space:nowrap;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:20px;padding:15px 26px;font-size:14px;font-weight:600;transition:transform .25s,background-color .25s,color .25s;display:inline-flex}.button:hover{transform:translateY(-3px)}.button:active{transform:translateY(0)}.button-secondary{color:inherit;background:0 0;border-color:currentColor}.text-link{gap:12px;padding-bottom:5px}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-weight:500}h2{letter-spacing:-.045em;font-size:clamp(32px,3.2vw,54px);line-height:1.16}p{line-height:1.7}.navigation,.section,.site-footer,body,dialog{transition:background-color .65s,color .65s,border-color .65s}.hero-copy{z-index:5;color:#fff;text-shadow:0 2px 20px #0000004d;width:min(37vw,560px);position:absolute;top:clamp(132px,16vh,180px);left:max(5vw,50vw - 700px)}.hero-eyebrow{letter-spacing:.13em;margin-bottom:30px;font-size:10px;font-weight:650}.hero-copy h1{letter-spacing:-.06em;margin-bottom:26px;font-size:clamp(38px,3.9vw,65px);font-weight:550;line-height:1.07}.hero-copy>p:not(.hero-eyebrow){max-width:370px;margin-bottom:32px;font-size:14px;line-height:1.7}.hero-actions{flex-wrap:wrap;align-items:center;gap:20px;display:flex}.hero-actions .button{color:#25262b;text-shadow:none;background:#f7f7f3;min-height:51px;padding-inline:22px;font-size:12px}.hero-actions .text-link{color:#fff;border-color:#ffffffa6;font-size:12px}.hero:after{content:"";z-index:4;pointer-events:none;background:linear-gradient(90deg,#090b0e78,#090b0e2e 36%,#0000 57%);position:absolute;inset:0}html.js [data-reveal]{opacity:0;transition:opacity .8s,transform .8s cubic-bezier(.2,.65,.3,1);transform:translateY(28px)}html.js [data-reveal].is-visible{opacity:1;transform:none}.contact-dialog,.project-dialog{border:1px solid var(--line);background:var(--surface);width:min(690px,100% - 32px);max-height:calc(100svh - 60px);color:var(--text);border-radius:18px;padding:clamp(26px,4vw,65px)}dialog::backdrop{background:#090a0c99}.dialog-close{background:var(--surface-alt);border:0;border-radius:50%;width:40px;height:40px;font-size:25px;position:absolute;top:16px;right:18px}.dialog-eyebrow{color:var(--accent);font-size:12px}dialog h2{margin-top:18px;font-size:38px}dialog .dialog-details{color:var(--muted)}.dialog-tech{flex-wrap:wrap;gap:8px;margin-bottom:30px;display:flex}.dialog-tech span{border:1px solid var(--line);border-radius:30px;padding:8px 14px;font-size:12px}@media (max-width:1100px){.page-width{width:calc(100% - 72px)}.hero-copy{width:41vw;left:5vw}.hero-copy h1{font-size:44px}}@media (max-width:760px){html{scroll-padding-top:90px}.page-width{width:calc(100% - 40px)}.hero-copy{width:auto;inset:105px 22px 28px}.hero-copy h1{max-width:410px;margin-bottom:18px;font-size:clamp(27px,7.4vw,42px)}.hero-eyebrow{letter-spacing:.1em;margin-bottom:18px;font-size:8px}.hero-copy>p:not(.hero-eyebrow){max-width:290px;margin-bottom:0;font-size:12px;position:absolute;bottom:65px}.hero-copy>.hero-actions{position:absolute;bottom:0}.hero-actions{gap:14px}.hero-actions .button{min-height:44px;padding:12px 18px;font-size:11px}.hero-actions .text-link{font-size:11px}.hero:after{background:linear-gradient(#090b0ea6,#0000 39% 62%,#090b0ebf)}h2{font-size:clamp(30px,7vw,44px)}}@media (max-width:760px) and (max-height:620px) and (orientation:landscape){.hero-copy{width:43%;top:94px;bottom:18px;right:auto}.hero-copy h1{font-size:23px}.hero-eyebrow{margin-bottom:10px}.hero-copy>p:not(.hero-eyebrow){margin-bottom:14px;font-size:10px;position:static}.hero-copy>.hero-actions{gap:10px;position:static}.hero-actions .button{min-height:38px;padding:10px 15px}}@media (max-height:680px) and (min-width:761px){.hero-copy{top:112px}.hero-copy h1{margin-bottom:16px;font-size:36px}.hero-eyebrow{margin-bottom:18px}.hero-copy>p:not(.hero-eyebrow){margin-bottom:20px;font-size:12px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:after,:before{transition-duration:0s!important;animation:none!important}html.js [data-reveal]{opacity:1;transform:none}}.button:is(:hover,:focus-visible){color:#fff;background:#000}.button>:is(svg,span[aria-hidden=true]){transform-origin:50%;display:inline-block}@media (prefers-reduced-motion:no-preference){.button:is(:hover,:focus-visible)>:is(svg,span[aria-hidden=true]){animation:button-arrow-spin .9s cubic-bezier(.16,1,.3,1) both}}@keyframes button-arrow-spin{0%{transform:rotate(0)}to{transform:rotate(2turn)}}.navigation{--nav-glass:#fafdfec2;--nav-glass-border:#ffffffa3;--nav-menu-surface:#fbfdfbf7;--nav-menu-border:#91aeb94d;z-index:30;background:var(--nav-glass);border:1px solid var(--nav-glass-border);-webkit-backdrop-filter:blur(16px)saturate(1.2);white-space:nowrap;border-radius:999px;justify-content:space-between;align-items:center;gap:14px;width:600px;max-width:calc(100% - 32px);height:58px;padding:6px 12px;transition:width .42s cubic-bezier(.2,.65,.3,1),background-color .65s,color .65s,border-color .65s;display:flex;position:fixed;top:22px;left:50%;transform:translate(-50%);box-shadow:0 6px 20px #092a3a17}[data-theme=night] .navigation{--nav-glass:#171d1fcc;--nav-glass-border:#cee5ed29;--nav-menu-surface:#171d1ffa;--nav-menu-border:#a1c0ce33;box-shadow:0 6px 20px #0000002e}.nav-brand{flex:none;align-items:center;min-height:44px;display:flex}.brand-logo{aspect-ratio:880/94;width:140px;display:block;position:relative;overflow:hidden}.brand-logo img{mix-blend-mode:multiply;filter:contrast(1.02);pointer-events:none;width:174.546%;max-width:none;height:auto;position:absolute;top:-461.702%;left:-38.4091%}.footer-brand .brand-logo img,[data-theme=night] .nav-logo{mix-blend-mode:screen}.nav-logo-filters{pointer-events:none;position:absolute}.nav-brand .brand-logo .nav-logo{mix-blend-mode:normal;filter:url(#nav-logo-day-cutout)}[data-theme=night] .nav-brand .brand-logo .nav-logo{filter:url(#nav-logo-night-cutout)}.nav-brand .brand-logo{width:108px}.nav-links{align-items:center;gap:18px;display:flex}.nav-link{padding-block:12px;font-size:12px;position:relative}.nav-link:after{content:"";background:var(--accent);transform-origin:0;width:100%;height:1px;transition:transform .25s;position:absolute;bottom:5px;left:0;transform:scaleX(0)}.nav-link:hover:after,.nav-link[aria-current=location]:after{transform:scaleX(1)}.nav-controls{flex:none;align-items:center;gap:6px;display:flex}.language-select{flex:0 0 48px}.language-select,.language-trigger{width:48px;height:44px;position:relative}.language-trigger{color:#18242b;background:0 0;border:0;border-radius:999px;justify-content:center;align-items:center;gap:6px;padding:0;display:flex}.language-trigger:before{content:"";border-radius:inherit;pointer-events:none;background:#eaf3ff;border:1px solid #ffffffdb;transition:background-color .25s,border-color .65s;position:absolute;inset:6px 0;box-shadow:0 1px 3px #1a435c14}.language-trigger:hover:before{background:#f4f8ff}.language-flag{object-fit:cover;border-radius:50%;flex:none;width:24px;height:24px;display:block;box-shadow:0 0 0 1px #00000009}.language-trigger .language-flag{width:19px;height:19px;position:relative}.language-chevron{border:1.25px solid;border-width:0 1.25px 1.25px 0;width:6px;height:6px;transition:transform .2s;display:block;position:relative;transform:translateY(-1.5px)rotate(45deg)}.language-trigger[aria-expanded=true] .language-chevron{transform:translateY(2px)rotate(225deg)}[data-theme=night] .language-trigger{color:#f6fafc}[data-theme=night] .language-trigger:before{background:#233341;border-color:#3c4e5d}[data-theme=night] .language-trigger:hover:before{background:#2b404e}.language-menu{border:1px solid var(--nav-menu-border);background:var(--nav-menu-surface);border-radius:18px;min-width:224px;max-width:calc(100vw - 24px);padding:7px;position:absolute;top:calc(100% + 9px);right:0;box-shadow:0 12px 30px #0000001f}.language-menu button{text-align:left;width:100%;min-height:48px;color:var(--text);background:0 0;border:0;border-radius:12px;align-items:center;gap:12px;padding:10px 12px;font-size:13px;display:flex}.language-menu button:hover,.language-menu button[aria-checked=true]{background:var(--surface-alt)}.language-name{flex:1}.language-code{color:var(--muted);font-size:10px}.nav-theme{flex:0 0 48px;align-items:center;width:48px;height:44px;display:flex}.theme-toggle{--toggle-width:48px;--knob-size:18px;width:var(--toggle-width);background:0 0;border:0;border-radius:999px;height:44px;padding:0;display:block;position:relative}.theme-scene{pointer-events:none;background:#3e82b2;border:1px solid #ffffffd1;border-radius:999px;transition:background-color .65s;display:block;position:absolute;inset:10px 0;overflow:hidden;box-shadow:inset 0 1px 2px #08264129,0 0 0 1px #5b819d2e}.theme-knob{width:var(--knob-size);height:var(--knob-size);background:#f5d337;border:1.25px solid #859d9e;transition:transform .5s cubic-bezier(.2,.7,.3,1),background-color .65s,border-color .65s;top:2px;left:2px;box-shadow:0 1px 2px #0000001f}.theme-knob,.theme-moon,.theme-sun{border-radius:50%;display:block;position:absolute}.theme-moon,.theme-sun{transition:opacity .35s;inset:0}.theme-sun{background:#f5d337}.theme-moon{opacity:0;background:#f6faff}.theme-moon:after{content:"";background:#d6e1eb;border-radius:50%;width:3.5px;height:3.5px;display:block;position:absolute;top:9px;left:4px;box-shadow:7px -5px 0 .5px #d6e1eb,8px 5px 0 -.75px #d6e1eb}.theme-clouds,.theme-stars{transition:opacity .4s,transform .5s;display:block;position:absolute;inset:0}.theme-cloud{background:#fff;border-radius:50%;display:block;position:absolute}.theme-cloud--1{width:19px;height:22px;top:-5px;right:-4px}.theme-cloud--2{width:23px;height:19px;bottom:-6px;right:-4px}.theme-cloud--3{background:#d8efff;width:19px;height:20px;bottom:-9px;right:8px}.theme-stars{opacity:0;transform:translateY(-10px)}.theme-star{background:#fff;border-radius:50%;width:2px;height:2px;display:block;position:absolute}.theme-star--1{top:8px;left:9px}.theme-star--2{width:1.5px;height:1.5px;top:18px;left:21px}.theme-star--3{top:7px;left:28px}.theme-toggle[aria-checked=true] .theme-scene{background:#152c4a}.theme-toggle[aria-checked=true] .theme-knob{transform:translateX(calc(var(--toggle-width) - var(--knob-size) - 6px));background:#f6faff;border-color:#c5d4e0}.theme-toggle[aria-checked=true] .theme-sun{opacity:0}.theme-toggle[aria-checked=true] .theme-moon,.theme-toggle[aria-checked=true] .theme-stars{opacity:1}.theme-toggle[aria-checked=true] .theme-stars{transform:none}.theme-toggle[aria-checked=true] .theme-clouds{opacity:0;transform:translateY(16px)}.nav-theme[aria-busy=true] .theme-toggle{cursor:progress}.menu-trigger{background:0 0;border:0;border-radius:50%;flex:0 0 44px;justify-content:center;align-items:center;gap:3px;width:44px;height:44px;padding:9px;display:none}.menu-trigger span{background:currentColor;border-radius:50%;width:3px;height:3px;display:block}.language-trigger:focus-visible,.menu-trigger:focus-visible,.theme-toggle:focus-visible{outline-offset:3px}.navigation[data-compact=true]{gap:6px;width:290px;padding-inline:9px}.navigation[data-compact=true] .nav-controls{gap:4px}.navigation[data-compact=true] .menu-trigger{display:flex}.navigation[data-compact=true] .nav-links{border:1px solid var(--nav-menu-border);background:var(--nav-menu-surface);border-radius:20px;padding:14px;display:none;position:absolute;top:calc(100% + 10px);left:0;right:0}.navigation[data-compact=true][data-menu-open=true] .nav-links{grid-template-columns:1fr 1fr;gap:10px;display:grid}.navigation[data-compact=true] .nav-link{padding:12px;font-size:13px}@media (max-width:760px){.navigation,.navigation[data-compact=true]{gap:6px;width:290px;max-width:calc(100% - 24px);height:58px;padding:6px 9px;transition:background-color .65s,color .65s,border-color .65s;top:14px}.nav-brand .brand-logo{width:100px}.nav-controls{gap:4px}.menu-trigger{display:flex}.language-menu{right:-52px}.nav-links{border:1px solid var(--nav-menu-border);background:var(--nav-menu-surface);border-radius:20px;padding:15px;display:none;position:absolute;top:calc(100% + 10px);left:0;right:0}.navigation[data-menu-open=true] .nav-links{grid-template-columns:1fr 1fr;gap:10px;display:grid}.nav-link{padding:14px;font-size:14px}}@media (max-width:360px){.nav-brand .brand-logo{width:100px}}@media (prefers-reduced-motion:reduce){.navigation,.navigation *,.navigation :after,.navigation :before{transition:none}}.hero{isolation:isolate;width:100%;height:100vh;min-height:100svh;position:relative;overflow:hidden}.scene{aspect-ratio:16/9;width:max(100vw,177.778vh);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.art,.layer-motion,.parallax{position:absolute;inset:0}.parallax{transform:translate3d(0,var(--scroll-y,0),0)}.art{left:var(--x);top:var(--y);width:var(--width);aspect-ratio:16/9;height:auto;bottom:auto;right:auto}.layer-image{object-fit:contain;pointer-events:none;-webkit-user-select:none;user-select:none;width:100%;height:100%;transition:opacity .85s cubic-bezier(.4,0,.2,1);position:absolute;inset:0}.layer-image[data-light=night],[data-theme=night] .layer-image[data-light=day]{opacity:0}[data-layer=background] .layer-image[data-light=day],[data-theme=night] .layer-image[data-light=night]{opacity:1}.layer-motion{transform:translate3d(var(--mouse-x,0),var(--mouse-y,0),0);isolation:isolate}.contact-shadow{pointer-events:none;opacity:.18;clip-path:inset(89% -2% -4%);position:absolute;inset:0}.contact-shadow-shape{-webkit-mask:var(--hero-character-mask) center /contain no-repeat;mask:var(--hero-character-mask) center /contain no-repeat;filter:blur(4px);background:#111;position:absolute;inset:0;transform:translateY(3px)}.parallax:not([data-layer=background]) .layer-image{mix-blend-mode:plus-lighter;will-change:opacity}[data-layer=books] .art,[data-layer=desk] .art{width:103%;left:-1.5%}[data-layer=books] .layer-motion{clip-path:polygon(74.423% 80.892%,81.827% 78.344%,97.412% 82.059%,97.412% 100%,74.124% 100%,74.124% 87.049%,74.303% 86.306%,74.303% 81.316%)}[data-interaction-zone=character-face]{pointer-events:none;width:31%;height:56%;position:absolute;top:2%;left:43%}.hero[data-moving=true] .layer-motion,.hero[data-moving=true] .parallax{will-change:transform}.hero-copy{opacity:clamp(0,calc(1 - var(--hero-progress,0) * 2.5),1)}@media (max-aspect-ratio:1){.scene{left:50%;transform:translate(-64%,-50%)}}@media (prefers-reduced-motion:reduce){.layer-image{transition:none}.layer-motion,.parallax{will-change:auto;transform:none}.hero-copy{opacity:1}}.section{padding-block:clamp(86px,8vw,138px);position:relative}.section .page-width{max-width:1120px}.section h2{letter-spacing:-.03em;text-wrap:balance;margin:0;font-size:clamp(32px,3vw,52px);font-weight:600;line-height:1.18}.section p{margin:0;line-height:1.65}.section-heading{text-align:center;flex-direction:column;align-items:center;gap:22px;margin-bottom:64px;display:flex}.section-heading h2{max-width:25ch}.section-heading>p{color:var(--muted);max-width:63ch;font-size:16px}.text-link{color:var(--text);cursor:pointer;background:0 0;border:0;border-bottom:1px solid;justify-content:space-between;align-items:center;gap:19px;padding:12px 0;font-size:14px;font-weight:600;text-decoration:none;transition:gap .22s,opacity .22s;display:inline-flex}.footer-social svg,.footer-up svg,.project-link svg,.text-link svg{flex:none;width:20px;height:20px;transition:transform .25s}.text-link:hover{gap:26px}.project-link:hover svg,.text-link:hover svg{transform:translate(3px,-3px)}.intro-section{padding-top:clamp(90px,10vw,170px);padding-bottom:clamp(86px,9vw,145px)}.intro-layout{text-align:center;flex-direction:column;align-items:center;gap:38px;display:flex}.section .intro-title{max-width:25ch;line-height:1.3}[data-intro-word]{display:inline-block}.intro-support{max-width:830px}.intro-support>p{color:var(--muted);font-size:17px}.intro-principles{flex-wrap:wrap;justify-content:center;gap:12px 30px;margin-top:30px;font-size:14px;display:flex}.intro-principles span:first-child{color:var(--accent)}.services-section .page-width{max-width:1024px}.services-layout{grid-template-columns:.98fr 1.02fr;align-items:start;gap:clamp(32px,5vw,78px);display:grid}.service-list{flex-direction:column;display:flex}.service-tab{border:0;border-bottom:1px solid var(--line);text-align:left;min-height:84px;color:var(--muted);cursor:pointer;background:0 0;grid-template-columns:30px minmax(0,1fr) 23px;align-items:center;gap:12px;padding:24px 0;transition:color .25s;display:grid}.service-tab:first-child{border-top:1px solid var(--line)}.service-number{font-variant-numeric:tabular-nums;font-size:11px}.service-title{letter-spacing:-.025em;font-size:clamp(19px,1.6vw,26px);font-weight:600;line-height:1.25;transition:transform .3s}.service-arrow svg{width:21px;height:21px}.service-arrow{opacity:0;transition:transform .25s,opacity .25s;transform:translate(-4px,4px)}.service-tab:hover,.service-tab[aria-selected=true]{color:var(--text)}.service-tab[aria-selected=true] .service-number{color:var(--accent)}.service-tab[aria-selected=true] .service-arrow{opacity:1;transform:none}.service-detail-wrap{min-height:442px}.service-panel[hidden]{display:none}.service-description{max-width:39ch;font-size:18px;line-height:1.6!important}.service-detail{color:var(--muted);max-width:45ch;font-size:14px;margin-top:21px!important}.service-panel>.service-contact-button{white-space:normal;text-align:center;margin-top:12px;font-size:13px}.service-contact-button svg{flex:none;width:20px;height:20px}.service-visual{min-height:205px;color:var(--text);background:var(--surface-alt);border-radius:18px;margin-top:27px;position:relative;overflow:hidden}.service-visual.service-visual--image{min-height:0}.service-visual--image>img{width:100%;height:auto;display:block}.service-visual-caption{z-index:2;color:var(--muted);font-size:11px;position:absolute;top:17px;left:20px}.service-visual-composition{position:absolute;inset:42px 20px 20px}.service-visual-block{background:var(--text);display:block;position:absolute}.service-visual .block-one{background:var(--accent);width:24%;height:65%;top:20%;left:5%}.service-visual .block-two{width:57%;height:12%;top:20%;left:34%}.service-visual .block-three{opacity:.15;width:37%;height:7%;top:43%;left:34%}.service-visual-mark{letter-spacing:-.03em;font-size:68px;line-height:1;position:absolute;bottom:3%;right:9%}.service-visual-mark>svg{width:59px;height:59px;display:block}.service-visual-line{background:var(--text);opacity:.14;height:1px;position:absolute}.service-visual .line-one{top:2%;left:5%;right:9%}.service-visual .line-two{width:23%;top:61%;left:34%}.service-visual .line-three{width:20%;top:74%;left:34%}.service-visual--corporate .block-one{width:36%;height:74%;top:13%;left:14%}.service-visual--corporate .block-two{width:27%;height:7%;top:20%;left:59%}.service-visual--corporate .block-three{width:20%;height:5%;top:40%;left:59%}.service-visual--corporate .service-visual-mark{color:var(--surface);font-size:76px;bottom:14%;left:21%;right:auto}.service-visual--corporate .line-two{width:27%;left:59%}.service-visual--corporate .line-three{width:22%;left:59%}.service-visual--commerce .block-one{border-radius:50% 50% 0 0;width:30%;height:66%;top:15%;left:8%}.service-visual--commerce .block-two{width:41%;height:8%;top:15%;left:50%}.service-visual--commerce .block-three{width:25%;height:6%;top:35%;left:50%}.service-visual--commerce .service-visual-mark{bottom:9%;right:12%}.service-visual--commerce .line-two{width:25%;left:50%}.service-visual--commerce .line-three{width:16%;left:50%}.service-visual--systems .block-one{width:22%;height:29%;top:11%;left:7%}.service-visual--systems .block-two{background:var(--accent);width:22%;height:29%;top:56%;left:39%}.service-visual--systems .block-three{opacity:1;background:var(--text);width:22%;height:29%;top:11%;left:72%}.service-visual--systems .service-visual-mark{font-size:47px;bottom:61%;left:43%}.service-visual--systems .line-one{opacity:.4;top:47%;left:18%;right:17%}.service-visual--systems .line-two{opacity:.4;width:1px;height:8%;top:40%;left:18%}.service-visual--systems .line-three{opacity:.4;width:1px;height:8%;top:40%;left:83%}.service-visual--automation .block-one{border-radius:50%;width:17%;height:37%;top:35%;left:5%}.service-visual--automation .block-two{width:17%;height:37%;top:35%;left:42%}.service-visual--automation .block-three{opacity:.75;border-radius:50%;width:17%;height:37%;top:35%;left:79%}.service-visual--automation .service-visual-mark{top:35%;left:27%}.service-visual--automation .service-visual-mark>svg{width:36px;height:36px}.service-visual--automation .line-one{opacity:.4;width:20%;top:54%;left:22%}.service-visual--automation .line-two{opacity:.4;width:20%;top:54%;left:59%}.service-visual--automation .line-three{display:none}.process-layout{max-width:980px!important}.process-heading{text-align:center;flex-direction:column;align-items:center;display:flex}.process-heading h2{max-width:25ch}.process-heading p{color:var(--muted);max-width:53ch;margin-top:24px;font-size:16px}.process-progress{background:var(--line);width:170px;height:2px;margin-top:34px;overflow:hidden}.process-progress span{background:var(--accent);width:100%;height:100%;transform:scaleX(var(--process-progress,.14));transform-origin:0;transition:transform .45s;display:block}.process-list{max-width:800px;margin:52px auto 0;padding:0;list-style:none}.process-step{border-bottom:1px solid var(--line);grid-template-columns:46px minmax(0,1fr) 10px;gap:20px;padding:27px 0;display:grid}.process-number{color:var(--muted);font-variant-numeric:tabular-nums;padding-top:6px;font-size:12px}.process-step h3{color:var(--muted);letter-spacing:-.025em;margin:0 0 12px;font-size:27px;font-weight:600;transition:color .4s}.process-step p{max-width:64ch;color:var(--muted);font-size:15px}.process-indicator{background:var(--line);border-radius:50%;width:6px;height:6px;margin-top:14px;transition:background .4s,transform .4s}.process-step.is-active h3,.process-step[data-active=true] h3{color:var(--text)}.process-step.is-active .process-number,.process-step[data-active=true] .process-number{color:var(--accent)}.process-step.is-active .process-indicator,.process-step[data-active=true] .process-indicator{background:var(--accent);transform:scale(1.35)}.about-section .page-width{max-width:1280px}.about-heading{margin-bottom:45px}.about-heading h2{max-width:26ch}.about-layout{grid-template-columns:1fr 1.25fr 1fr;align-items:center;gap:28px;display:grid}.about-flank{color:var(--muted);font-size:17px;line-height:1.85;position:relative}.about-flank--left{text-align:right;padding-right:18px}.about-flank--right{padding-left:18px}.about-flank p{line-height:1.85}.about-principles{margin:0;padding:0;list-style:none}.about-principles li{max-width:25ch;padding-block:18px;line-height:1.7}.about-principles li:first-child{padding-top:0}.about-principles li:before{content:"";background:var(--accent);width:19px;height:1px;margin-bottom:14px;display:block}.about-image-slot{min-width:0;height:470px;margin:0;position:relative}.about-portrait-crop{position:absolute;inset:0;overflow:visible}.about-portrait{filter:brightness()saturate();width:118%;max-width:none;height:auto;transition:filter .65s;position:absolute;top:-20px;left:-9%;-webkit-mask-image:linear-gradient(#000 0 56%,#0000 69%);mask-image:linear-gradient(#000 0 56%,#0000 69%)}[data-theme=night] .about-portrait{filter:brightness(.66)saturate(.8)}.about-custom-image{object-fit:contain;width:100%;height:100%;-webkit-mask-image:linear-gradient(#000 0 80%,#0000 100%);mask-image:linear-gradient(#000 0 80%,#0000 100%)}.about-image-slot figcaption{text-align:center;color:var(--muted);flex-direction:column;gap:5px;font-size:10px;line-height:1.5;display:flex;position:absolute;top:calc(100% + 14px);left:-9%;right:-9%}.about-image-slot figcaption span:first-child{font-weight:600}.automation-section .page-width{max-width:1120px}.automation-heading{gap:20px}.automation-heading .automation-eyebrow{color:var(--accent);letter-spacing:.1em;font-size:11px;font-weight:650}.automation-heading h2{max-width:29ch}.automation-heading>p{max-width:62ch}.automation-story{grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;margin:0;padding:0;list-style:none;display:grid}.automation-card{border:1px solid var(--line);background:var(--surface);border-radius:16px;min-width:0;padding:26px 24px 20px;transition:border-color .3s,transform .3s;position:relative}.automation-card:hover{border-color:var(--accent);transform:translateY(-4px)}.automation-step{color:var(--muted);font-variant-numeric:tabular-nums;margin-bottom:22px;font-size:12px;font-weight:600;display:block}.automation-card h3{letter-spacing:-.025em;text-wrap:balance;min-height:54px;margin-bottom:12px;font-size:20px;font-weight:600;line-height:1.35}.automation-card-description{color:var(--muted);min-height:65px;font-size:13px}.automation-card-visual{background:var(--surface-alt);border-radius:12px;flex-direction:column;justify-content:center;min-height:258px;margin-top:24px;padding:18px 14px;display:flex}.automation-card svg{flex-shrink:0;width:20px;height:20px}.automation-field+.automation-field{margin-top:14px}.automation-field>span{color:var(--muted);margin-bottom:6px;font-size:10px;font-weight:600;display:block}.automation-field>div{border:1px solid var(--line);background:var(--surface);border-radius:8px;padding:11px 12px;font-size:12px}.automation-submit{background:var(--text);width:100%;color:var(--surface);border:0;border-radius:8px;justify-content:space-between;align-items:center;gap:8px;margin-top:18px;padding:12px;font-size:11px;font-weight:600;display:flex}.automation-engine{width:100%;max-width:240px;height:200px;margin-inline:auto;position:relative}.automation-card .engine-lines{width:100%;height:100%;stroke:var(--line);stroke-width:1px;position:absolute;inset:0}.engine-pulse{stroke:var(--accent);stroke-dasharray:3 175;stroke-linecap:round;opacity:0}.engine-hub,.engine-node{border:1px solid var(--line);background:var(--surface);width:34px;height:34px;color:var(--muted);border-radius:50%;place-items:center;display:grid;position:absolute;transform:translate(-50%,-50%)}.engine-node--left{top:50%;left:12.5%}.engine-node--right{top:50%;left:87.5%}.engine-node--top{top:11%;left:50%}.engine-node--bottom{top:89%;left:50%}.engine-hub{background:var(--text);width:64px;height:64px;color:var(--surface);border-radius:16px;top:50%;left:50%}.engine-hub svg{width:28px;height:28px}.automation-engine-caption{color:var(--muted);justify-content:center;align-items:center;gap:6px;margin-top:10px;font-size:10px;display:flex}.automation-engine-caption svg{width:14px;height:14px;color:var(--accent)}.automation-received{color:var(--muted);align-items:center;gap:6px;margin-bottom:14px;font-size:10px;display:flex}.automation-received svg{width:16px;height:16px;color:var(--accent)}.automation-notification{background:var(--surface);border-radius:8px;align-items:center;gap:10px;padding:12px 10px;display:flex}.automation-notification+.automation-notification{margin-top:8px}.notification-icon{color:var(--muted);place-items:center;display:grid}.notification-icon svg{width:17px;height:17px}.automation-notification strong{margin-bottom:3px;font-size:10px;font-weight:650;display:block}.automation-notification p{color:var(--muted);font-size:10px}.automation-connector{background:var(--line);pointer-events:none;width:32px;height:1px;position:absolute;top:66%;left:calc(100% + 1px)}.automation-connector:after{content:"";border-top:1px solid var(--muted);border-right:1px solid var(--muted);width:5px;height:5px;position:absolute;top:-2px;right:2px;transform:rotate(45deg)}.automation-connector>span{background:var(--accent);opacity:0;border-radius:50%;width:4px;height:4px;position:absolute;top:-1.5px;left:0}.automation-story[data-running=true] .automation-connector>span{animation:story-transfer 9s ease-in-out infinite}.automation-story[data-running=true] .engine-pulse{opacity:.8;animation:engine-transfer 6s linear infinite}.automation-story[data-running=true] .automation-notification{animation:notification-arrive 9s ease-in-out infinite;animation-delay:calc(5s + var(--arrival) * .45s)}.automation-finish{text-align:center;flex-direction:column;align-items:center;gap:14px;margin-top:52px;display:flex}.automation-finish h3{letter-spacing:-.02em;text-wrap:balance;margin:0;font-size:20px;font-weight:600}.automation-finish p{color:var(--muted);font-size:14px}.automation-finish .button{white-space:normal;margin-top:10px}.automation-finish .button svg{flex-shrink:0;width:20px;height:20px}@keyframes story-transfer{0%,8%{opacity:0;transform:translate(0)}12%{opacity:1}32%{opacity:1;transform:translate(26px)}38%,to{opacity:0;transform:translate(26px)}}@keyframes engine-transfer{to{stroke-dashoffset:-356px}}.automation-typed{vertical-align:middle;display:inline-block}.automation-submit svg{transition:transform .25s}.automation-submit:hover svg{transform:translate(3px)}.automation-field>div{transition:border-color .25s}.automation-card:hover .automation-field>div{border-color:var(--muted)}.engine-hub{transition:border-color .3s}.automation-card:hover .engine-hub{border-color:var(--accent)}.automation-story[data-running=true] .automation-typed{animation:story-type-name 12s steps(10) infinite}.automation-story[data-running=true] .automation-field:nth-child(2) .automation-typed{animation-name:story-type-phone;animation-timing-function:steps(15)}.automation-story[data-running=true] .automation-submit{animation:story-send 12s ease-in-out infinite}.automation-story[data-running=true] .engine-hub svg{animation:story-process 12s ease-in-out infinite}.automation-story[data-running=true] .engine-node{animation:story-node 12s ease-in-out infinite}.automation-story[data-running=true] .automation-step{animation:story-step-input 12s ease-in-out infinite}.automation-story[data-running=true] .automation-card:nth-child(2) .automation-step{animation-name:story-step-process}.automation-story[data-running=true] .automation-card:nth-child(3) .automation-step{animation-name:story-step-receive}.automation-story[data-running=true] .automation-notification{animation:story-notification 12s ease-in-out infinite}.automation-story[data-running=true] .automation-notification:nth-child(3){animation-name:story-notification-second}.automation-story[data-running=true] .automation-notification:nth-child(4){animation-name:story-notification-third}.automation-story[data-running=true] .automation-connector>span{animation-duration:12s}.automation-story[data-running=true] .automation-card:nth-child(2) .automation-connector>span{animation-delay:2.6s}@keyframes story-type-name{0%{clip-path:inset(0 100% 0 0)}12%,96%{clip-path:inset(0)}to{clip-path:inset(0 100% 0 0)}}@keyframes story-type-phone{0%,10%{clip-path:inset(0 100% 0 0)}22%,96%{clip-path:inset(0)}to{clip-path:inset(0 100% 0 0)}}@keyframes story-send{0%,21%,31%,to{transform:none}25%{transform:scale(.97)}28%{transform:none}}@keyframes story-process{0%,28%,55%,to{transform:scale(1)}35%,45%{transform:scale(1.17)}40%,50%{transform:scale(1.04)}}@keyframes story-node{0%,30%,60%,to{border-color:var(--line);color:var(--muted)}38%,50%{border-color:var(--accent);color:var(--accent)}}@keyframes story-step-input{0%,28%{color:var(--accent)}36%,to{color:var(--muted)}}@keyframes story-step-process{0%,28%,60%,to{color:var(--muted)}34%,52%{color:var(--accent)}}@keyframes story-step-receive{0%,52%,90%,to{color:var(--muted)}60%,82%{color:var(--accent)}}@keyframes story-notification{0%,48%{opacity:.55;transform:translateY(5px)}55%,94%,to{opacity:1;transform:none}}@keyframes story-notification-second{0%,53%{opacity:.55;transform:translateY(5px)}60%,94%,to{opacity:1;transform:none}}@keyframes story-notification-third{0%,58%{opacity:.55;transform:translateY(5px)}65%,94%,to{opacity:1;transform:none}}@media (max-width:1000px) and (min-width:761px){.automation-story{gap:22px}.automation-card{padding:22px 16px 16px}.automation-card h3{min-height:73px;font-size:18px}.automation-card-description{min-height:86px}.automation-card-visual{padding-inline:10px}.automation-connector{width:22px}@keyframes story-transfer{0%,8%{opacity:0;transform:translate(0)}12%{opacity:1}32%{opacity:1;transform:translate(16px)}38%,to{opacity:0;transform:translate(16px)}}}@media (max-width:760px){.automation-heading{margin-bottom:36px}.automation-story{grid-template-columns:1fr;gap:36px}.automation-card{padding:24px}.automation-step{margin-bottom:14px}.automation-card h3,.automation-card-description{min-height:0}.automation-card h3{font-size:21px}.automation-card-visual{min-height:244px;margin-top:22px;padding-inline:20px}.automation-connector{width:1px;height:36px;top:calc(100% + 1px);left:50%}.automation-connector:after{top:auto;bottom:3px;right:-2px;transform:rotate(135deg)}.automation-connector>span{top:0;left:-1.5px}.automation-finish{margin-top:42px}@keyframes story-transfer{0%,8%{opacity:0;transform:translateY(0)}12%{opacity:1}32%{opacity:1;transform:translateY(30px)}38%,to{opacity:0;transform:translateY(30px)}}}@media (prefers-reduced-motion:reduce){.automation-story[data-running=true] .automation-step,.automation-story[data-running=true] .automation-submit,.automation-story[data-running=true] .automation-typed,.automation-story[data-running=true] .engine-hub svg,.automation-story[data-running=true] .engine-node{animation:none}.automation-submit:hover svg{transform:none}.automation-story[data-running=true] .automation-connector>span,.automation-story[data-running=true] .automation-notification,.automation-story[data-running=true] .engine-pulse{animation:none}.automation-card,.automation-finish .button{transition:none}.automation-card:hover,.automation-finish .button:hover{transform:none}}.site-footer{color:var(--text);padding:28px 0 26px;position:relative}.site-footer .page-width{max-width:1120px}.footer-top{border-top:1px solid var(--line);grid-template-columns:1fr .65fr .6fr;gap:35px;padding:35px 0;display:grid}.footer-brand{letter-spacing:-.03em;align-self:start;align-items:baseline;gap:7px;font-size:29px;font-weight:750;text-decoration:none;display:inline-flex}.footer-brand .brand-logo{width:220px}.brand-dot{background:var(--text);border-radius:50%;width:5px;height:5px}.footer-navigation,.footer-social{flex-direction:column;align-items:flex-start;gap:2px;font-size:13px;display:flex}.footer-navigation a,.footer-social a,.footer-social button{min-height:44px;color:var(--text);cursor:pointer;background:0 0;border:0;align-items:center;padding:0;font-size:13px;text-decoration:none;display:inline-flex}.footer-social a,.footer-social button{gap:16px}.footer-social svg{width:13px;height:13px}.footer-social a:hover svg,.footer-social button:hover svg{transform:translate(2px,-2px)}.footer-navigation a:hover{text-underline-offset:5px;text-decoration:underline}.footer-bottom{border-top:1px solid var(--line);color:var(--muted);text-align:center;justify-content:center;padding-top:21px;font-size:11px;display:flex}.footer-bottom>p{margin:0;line-height:1.7}.footer-bottom>p span{margin-left:8px}@media (hover:hover) and (prefers-reduced-motion:no-preference){.service-tab:hover .service-title{transform:translate(5px)}.service-panel:not([hidden]) .service-visual-composition{animation:service-enter .6s cubic-bezier(.2,.75,.25,1) both}@keyframes service-enter{0%{clip-path:inset(0 0 12%);transform:translateY(7px)}to{clip-path:inset(0);transform:none}}}@media (max-width:1100px){.about-layout{gap:15px}.about-flank{font-size:15px}.about-flank--left{padding-right:8px}.about-flank--right{padding-left:8px}.about-image-slot{height:430px}}@media (max-width:760px){.section{padding-block:77px}.section h2{font-size:clamp(30px,6.2vw,42px);line-height:1.22}.section-heading{gap:21px;margin-bottom:40px}.section-heading>p{font-size:15px}.intro-section{padding-block:90px 77px}.intro-layout{gap:28px}.section .intro-title{max-width:25ch;font-size:clamp(30px,6.2vw,42px);line-height:1.36}.intro-support>p{font-size:15px}.intro-principles{gap:13px 22px;margin-top:25px;font-size:13px}.services-layout{grid-template-columns:1fr;gap:28px}.service-tab{grid-template-columns:30px minmax(0,1fr) 23px;min-height:68px;padding:19px 0}.service-title{font-size:22px}.service-arrow{opacity:.3;transform:none}.service-detail-wrap{min-height:0}.service-description{max-width:44ch;font-size:17px}.service-visual{min-height:220px;margin-top:23px}.service-detail{font-size:14px;margin-top:20px!important}.process-heading p{margin-top:21px;font-size:15px}.process-progress{width:135px;margin-top:26px}.process-list{margin-top:31px}.process-step{grid-template-columns:31px minmax(0,1fr) 8px;gap:15px;padding:25px 0}.process-step h3{margin-bottom:10px;font-size:25px}.process-step p{font-size:14px}.about-heading{margin-bottom:35px}.about-layout{flex-direction:column;gap:29px;display:flex}.about-flank{text-align:center;max-width:48ch;padding:0;font-size:15px}.about-image-slot{order:-1;width:min(340px,80%);height:400px;margin-bottom:31px}.about-portrait{width:118%;left:-9%}.about-image-slot figcaption{font-size:9px;left:-9%;right:-9%}.about-principles{flex-wrap:wrap;justify-content:center;gap:13px 23px;display:flex}.about-principles li{max-width:25ch;padding:0;font-size:13px}.about-principles li:before{margin:0 auto 10px}.contact-section{padding-top:90px;padding-bottom:45px}.footer-top{grid-template-columns:1fr 1fr;gap:24px;padding:28px 0}.footer-brand{grid-column:1/-1;font-size:28px}.footer-bottom{justify-content:center;padding-top:18px;display:flex}.footer-bottom>p{margin:0;line-height:1.7}.footer-bottom>p span{margin:0;display:block}}@media (max-width:380px){.service-title{font-size:19px}.service-tab{grid-template-columns:26px minmax(0,1fr) 21px;gap:8px}.service-visual{min-height:200px}.about-image-slot{width:84%;height:350px}}@media (prefers-reduced-motion:reduce){.section *,.site-footer *{transition-duration:0s!important;animation:none!important}[data-intro-word]{opacity:1!important;filter:none!important;transform:none!important}.service-visual-composition{clip-path:none!important;transform:none!important}}.service-visual.whatsapp-demo{color:#e9edef;background:#0b141a;border:1px solid #26343d;min-height:0}.wa-header{background:#202c33;align-items:center;gap:10px;padding:15px;display:flex}.wa-avatar{color:#fff;background:#00a884;border-radius:50%;place-items:center;width:37px;height:37px;font-weight:700;display:grid}.wa-header strong{font-size:13px;display:block}.wa-header [data-wa-status]{color:#b5c3cb;margin-top:3px;font-size:11px;display:block}.wa-header>small{color:#b5c3cb;margin-left:auto;font-size:10px}.wa-messages{scrollbar-width:thin;scrollbar-color:#374850 transparent;background:radial-gradient(at top,#162b2b,#0b141a 75%);flex-direction:column;gap:11px;height:330px;padding:17px 14px;display:flex;overflow-y:auto}.wa-message{border-radius:9px;flex:none;max-width:88%;padding:9px 11px 6px;font-size:13px;line-height:1.5}.wa-message--sent{background:#005c4b;align-self:flex-end}.wa-message--reply{background:#202c33;align-self:flex-start}.wa-message small{text-align:right;color:#c0d0d3;margin-top:4px;font-size:9px;display:block}.wa-composer{color:#b5c3cb;background:#202c33;justify-content:space-between;padding:14px 18px;font-size:12px;display:flex}.wa-composer span:last-child{color:#00d5aa}.wa-typing{background:#202c33;border-radius:9px;align-self:flex-start;gap:5px;padding:13px;display:flex}.wa-typing i{background:#b5c3cb;border-radius:50%;width:5px;height:5px;animation:wa-dot .9s ease-in-out infinite alternate}.wa-typing i:nth-child(2){animation-delay:.15s}.wa-typing i:nth-child(3){animation-delay:.3s}@keyframes wa-dot{to{opacity:.3;transform:translateY(-3px)}}@media (prefers-reduced-motion:reduce){.wa-typing i{animation:none}}.closing-scene{background:var(--surface);color:var(--text)}.diagnosis-section{isolation:isolate;border-top:1px solid var(--line);padding-block:clamp(84px,9vw,140px)}.diagnosis-layout{grid-template-columns:1fr 1.1fr;align-items:center;gap:clamp(40px,6vw,90px);display:grid}.diagnosis-copy{max-width:470px}.diagnosis-eyebrow{color:var(--accent);letter-spacing:.1em;margin-bottom:26px;font-size:11px;font-weight:650;display:block}.section .diagnosis-copy h2{letter-spacing:-.03em;text-wrap:balance;font-size:clamp(38px,4vw,60px);font-weight:600;line-height:1.12}.diagnosis-copy h2 em{font-style:italic;font-weight:500;display:block}.diagnosis-copy [data-scramble-word]{display:inline-block}.diagnosis-copy>p{max-width:39ch;color:var(--muted);margin-top:26px;font-size:16px}.diagnosis-time{color:var(--muted);align-items:center;gap:8px;margin-block:24px 28px;font-size:12px;display:flex}.diagnosis-time>span{background:var(--accent);border-radius:50%;width:5px;height:5px}.diagnosis-section .button{white-space:normal;gap:12px}.diagnosis-section svg{flex:none;width:19px;height:19px}.diagnosis-device-area{justify-content:center;padding-inline:18px;display:flex}.diagnosis-phone{border:1px solid var(--muted);background:var(--surface-alt);border-radius:44px;flex-shrink:0;width:364px;height:692px;padding:10px;scroll-margin-top:110px;transition:transform .55s cubic-bezier(.16,1,.3,1),border-color .35s;position:relative;transform:rotate(2deg);box-shadow:0 18px 44px #00000012}.diagnosis-phone[data-active=true]{border-color:var(--accent);transform:rotate(0)}.diagnosis-phone:before{content:"";border:1px solid var(--line);pointer-events:none;border-radius:36px;position:absolute;inset:8px}.diagnosis-notch{background:var(--text);opacity:.65;border-radius:999px;width:52px;height:6px;position:absolute;top:18px;left:50%;transform:translate(-50%)}.diagnosis-phone-top{border-bottom:1px solid var(--line);letter-spacing:.07em;justify-content:space-between;align-items:center;padding:38px 22px 19px;font-size:12px;font-weight:800;display:flex}.diagnosis-phone-status{background:var(--accent);border-radius:50%;width:5px;height:5px}.diagnosis-screen{scrollbar-width:thin;scrollbar-color:var(--line) transparent;overscroll-behavior-y:auto;height:calc(100% - 111px);padding:26px 22px 22px;overflow-y:auto}.diagnosis-home{background:var(--muted);opacity:.45;border-radius:999px;width:76px;height:3px;position:absolute;bottom:17px;left:50%;transform:translate(-50%)}.diagnosis-screen h3{letter-spacing:-.025em;outline:none;margin:0;font-size:25px;font-weight:600;line-height:1.3}.diagnosis-screen p{color:var(--muted);font-size:13px;line-height:1.65}.diagnosis-screen .button{width:100%;min-height:46px;padding:12px 16px;font-size:12px}.diagnosis-screen .button:disabled{opacity:.4;cursor:not-allowed;transform:none}.diagnosis-welcome{flex-direction:column;justify-content:center;align-items:flex-start;min-height:100%;display:flex}.diagnosis-welcome-mark{border:1px solid var(--line);width:56px;height:56px;color:var(--accent);border-radius:16px;place-items:center;margin-bottom:28px;display:grid}.diagnosis-welcome-mark svg{width:25px;height:25px;transform:rotate(-45deg)}.diagnosis-welcome p{margin-top:18px}.diagnosis-duration{color:var(--muted);margin-top:25px;font-size:11px;display:block}.diagnosis-welcome .button{margin-top:28px}.diagnosis-progress-label{color:var(--muted);justify-content:space-between;gap:12px;font-size:10px;font-weight:600;display:flex}.diagnosis-progress-label>span:last-child{color:var(--accent);font-variant-numeric:tabular-nums}.diagnosis-progress{background:var(--line);height:2px;margin:12px 0 25px}.diagnosis-progress>span{transform-origin:0;background:var(--accent);width:100%;height:100%;transition:transform .3s;display:block}.diagnosis-question h3{margin-bottom:22px;font-size:22px}.diagnosis-options{border:0;gap:9px;margin:0;padding:0;display:grid}.diagnosis-option{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:12px;align-items:center;gap:10px;min-height:49px;padding:12px;font-size:11px;line-height:1.45;transition:border-color .2s,transform .2s,background-color .2s;display:flex;position:relative}.diagnosis-option input{opacity:0;width:1px;height:1px;position:absolute}.diagnosis-option:has(input:checked){border-color:var(--accent);background:var(--surface-alt)}.diagnosis-option:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:3px}.diagnosis-option:hover{border-color:var(--muted);transform:translate(2px)}.diagnosis-radio{border:1px solid var(--muted);border-radius:50%;flex:none;place-items:center;width:14px;height:14px;display:grid}.diagnosis-radio:after{content:"";background:var(--accent);border-radius:50%;width:6px;height:6px;transition:transform .2s;transform:scale(0)}.diagnosis-option:has(input:checked) .diagnosis-radio{border-color:var(--accent)}.diagnosis-option:has(input:checked) .diagnosis-radio:after{transform:scale(1)}.diagnosis-actions{grid-template-columns:auto 1fr;align-items:center;gap:16px;margin-top:23px;display:grid}.diagnosis-back,.diagnosis-restart{min-height:44px;color:var(--muted);text-underline-offset:4px;cursor:pointer;background:0 0;border:0;padding:12px 0;font-size:11px;text-decoration:underline}.diagnosis-question,.diagnosis-result{animation:diagnosis-enter .28s cubic-bezier(.16,1,.3,1) both}.diagnosis-complete{color:var(--accent);align-items:center;gap:7px;margin-bottom:20px;font-size:11px;display:flex}.diagnosis-result>p:first-of-type{margin-bottom:9px;font-size:11px}.diagnosis-result h3{font-size:25px}.diagnosis-plus{color:var(--accent);margin-block:4px;font-size:19px;font-weight:400;display:block}.diagnosis-result-description{margin-top:16px!important;font-size:12px!important}.diagnosis-reasons{border-top:1px solid var(--line);margin-top:20px;padding-top:17px}.diagnosis-reasons h4{margin:0 0 9px;font-size:11px;font-weight:650}.diagnosis-reasons ul{gap:7px;margin:0;padding:0;list-style:none;display:grid}.diagnosis-reasons li{color:var(--muted);align-items:center;gap:6px;font-size:11px;line-height:1.45;display:flex}.diagnosis-reasons svg{width:15px;height:15px;color:var(--accent)}.diagnosis-result .button{margin-top:23px}.diagnosis-restart{margin:5px auto 0;display:block}.diagnosis-note{text-align:center;font-size:10px!important}.diagnosis-processing{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:22px;min-height:100%;display:flex}.diagnosis-processing h3{font-size:19px}.diagnosis-loader{border:2px solid var(--line);border-top-color:var(--accent);border-radius:50%;width:28px;height:28px;animation:diagnosis-spin .8s linear infinite}.closing-scene .footer-brand .brand-logo img{content:url(/brand/logo-light.png);mix-blend-mode:multiply}[data-theme=night] .closing-scene .footer-brand .brand-logo img{content:url(/brand/logo-dark.png);mix-blend-mode:screen}@keyframes diagnosis-enter{0%{opacity:0;transform:translateY(7px)}to{opacity:1;transform:none}}@keyframes diagnosis-spin{to{transform:rotate(1turn)}}@media (max-width:1000px){.diagnosis-layout{grid-template-columns:1fr 1fr;gap:30px}.diagnosis-device-area{padding-inline:0}.diagnosis-phone{width:330px;height:665px}.diagnosis-screen{padding-inline:18px}}@media (max-width:760px){.diagnosis-layout{grid-template-columns:1fr;gap:45px}.diagnosis-copy{max-width:490px}.section .diagnosis-copy h2{font-size:clamp(34px,8vw,46px)}.diagnosis-copy>p{font-size:15px}.diagnosis-phone{width:min(100%,360px);height:680px;transform:none}.diagnosis-device-area{min-width:0}.diagnosis-eyebrow{margin-bottom:20px}}@media (prefers-reduced-motion:reduce){.diagnosis-phone{transition:none;transform:none}.diagnosis-loader,.diagnosis-question,.diagnosis-result{animation:none}.diagnosis-option,.diagnosis-progress>span,.diagnosis-radio:after{transition:none}.diagnosis-option:hover{transform:none}}.about-image-slot{isolation:isolate;z-index:1}.about-custom-image,.about-portrait-crop{z-index:50}.about-custom-image{position:relative}.about-flank{z-index:2}.about-orbit.about-orbit--volume{pointer-events:none;position:absolute;inset:-12% -21% -4%;overflow:visible}.about-orbit--volume .about-float{left:var(--orbit-static-x);top:var(--orbit-static-y);width:46px;height:46px;transform:translate(-50%,-50%) scale(var(--orbit-static-scale,.85));opacity:.82;z-index:65;display:block;position:absolute;bottom:auto;right:auto}.about-orbit--volume[data-orbit-mode=motion] .about-float{top:50%;left:50%}.about-orbit--volume .about-chip{width:100%;height:100%;color:var(--orbit-color,var(--accent));background:var(--surface);border-radius:50%;justify-content:center;align-items:center;display:flex;box-shadow:0 7px 19px #0d2c3c1c;animation:none!important}.about-orbit--volume .about-chip svg{stroke-width:1.7px;width:24px;height:24px}[data-theme=night] .about-orbit--volume .about-chip{color:var(--orbit-color,var(--accent));background:#15191d;box-shadow:0 7px 19px #00000054}#sobre[data-orbit-running=true] .about-orbit--volume .about-float{will-change:transform,opacity}@media (max-width:1100px){.about-orbit--volume .about-float{width:40px;height:40px}.about-orbit--volume .about-chip svg{width:22px;height:22px}}@media (hover:none),(max-width:899px),(pointer:coarse){.about-orbit.about-orbit--volume{inset:-8% -10% 2%}.about-orbit--volume .about-float:nth-child(n+15){display:none}.about-orbit--volume .about-float{opacity:.8;width:37px;height:37px}.about-orbit--volume .about-chip svg{width:21px;height:21px}}@media (max-width:380px){.about-orbit--volume .about-float{width:33px;height:33px}.about-orbit--volume .about-chip svg{width:19px;height:19px}}@media (prefers-reduced-motion:reduce){.about-orbit--volume .about-float:nth-child(n+19){display:none}.about-orbit--volume .about-float{will-change:auto}}.about-image-slot:before{content:"";z-index:0;pointer-events:none;background:radial-gradient(at 50% 43%,#1a8cc51f,#0000 68%);position:absolute;inset:-3% -18% 0}.about-gaze{z-index:50;aspect-ratio:1;filter:brightness()saturate();width:118%;transition:filter .65s;position:absolute;top:-20px;left:-9%;overflow:hidden;-webkit-mask-image:linear-gradient(#000 0 66%,#0000 99%),linear-gradient(90deg,#0000,#000 7% 93%,#0000);mask-image:linear-gradient(#000 0 66%,#0000 99%),linear-gradient(90deg,#0000,#000 7% 93%,#0000);-webkit-mask-composite:source-in;mask-composite:intersect}.about-gaze-view{background-image:var(--about-gaze-image,none);opacity:0;background-position:50%;background-repeat:no-repeat;background-size:300% 300%;transition:opacity .14s ease-out;display:block;position:absolute;inset:0}.about-gaze-view:first-child{opacity:1}[data-theme=night] .about-gaze{filter:brightness(.8)saturate(.85)}[data-theme=night] .about-image-slot:before{background:radial-gradient(at 50% 43%,#2192cf30,#0000 68%)}.about-orbit--volume .about-chip{pointer-events:auto;transition:transform .18s ease-out}@media (hover:hover) and (prefers-reduced-motion:no-preference){.about-orbit--volume .about-chip:hover{transform:scale(1.12)}}@media (prefers-reduced-motion:reduce){.about-gaze-view{transition:none}}.process-section{padding-block:var(--section-space);position:relative}.journey{--journey-progress:0;color:var(--text);position:relative}.journey-pin{background:var(--surface);overflow:hidden}.journey-viewport{width:100%;overflow:hidden}.journey-track{align-items:center;gap:100px;width:max-content;padding-inline:max(40px,50vw - 640px);display:flex}.journey-intro{flex:0 0 340px;width:340px;position:relative}.journey-intro h2{max-width:12ch;font-size:clamp(36px,3.5vw,52px);line-height:1.08}.journey-intro>p{color:var(--muted);margin-top:22px;font-size:15px;line-height:1.7}.journey-brand{background:#061d31;border-radius:16px;justify-content:center;align-items:center;height:190px;margin-top:30px;display:flex;position:relative;overflow:hidden}.journey-brand .brand-logo{z-index:1;width:244px;transition:transform .35s ease-out;position:relative}.journey-brand .brand-logo img{mix-blend-mode:normal;filter:url(#nav-logo-night-cutout)}.journey-circuit{color:#32b3ee;width:100%;height:100%;position:absolute;inset:0}.journey-circuit-rails{stroke:currentColor;stroke-width:1px;opacity:.25}.journey-circuit-signals{stroke:#78d9ff;stroke-width:1.5px;stroke-dasharray:12 150;stroke-linecap:round;animation:journey-signal 4s linear infinite paused}.journey[data-brand-visible=true] .journey-circuit-signals{animation-play-state:running}.journey-circuit-nodes{fill:currentColor}@keyframes journey-signal{to{stroke-dashoffset:-324px}}@media (hover:hover) and (prefers-reduced-motion:no-preference){.journey-brand:hover .brand-logo{transform:scale(1.04)}}@media (prefers-reduced-motion:reduce){.journey-circuit-signals{animation:none}}.journey-list{align-items:stretch;gap:60px;height:480px;margin:0;padding:0;list-style:none;display:flex;position:relative}.journey-list:before{content:"";background:var(--journey-accent);height:1px;position:absolute;top:50%;left:0;right:0}.journey-step{flex-direction:column;flex:0 0 270px;justify-content:flex-start;width:270px;padding-left:26px;display:flex;position:relative}.journey-step--bottom{justify-content:flex-end}.journey-copy{max-width:250px;position:relative}.journey-number{color:var(--journey-accent);font-variant-numeric:tabular-nums;margin-bottom:12px;font-size:13px;display:block}.journey-copy h3{letter-spacing:-.025em;color:var(--text);margin:0 0 16px;font-size:29px;line-height:1.15}.journey-copy p{color:var(--muted);margin:0;font-size:15px;line-height:1.65}.journey-stem{background:var(--journey-accent);transform-origin:bottom;width:1px;position:absolute;top:0;bottom:50%;left:0}.journey-step--bottom .journey-stem{transform-origin:top;top:50%;bottom:0}.journey-dot{background:var(--journey-accent);border-radius:50%;width:11px;height:11px;position:absolute;top:-5px;left:-5px}.journey-step--bottom .journey-dot{top:auto;bottom:-5px}.journey-progress{background:var(--line);width:min(240px,60%);height:2px;margin:36px auto 0}.journey-progress span{transform-origin:0;width:100%;height:100%;transform:scaleX(var(--journey-progress));background:var(--journey-accent);display:block}.journey[data-timeline-enhanced=true] .journey-pin{flex-direction:column;justify-content:center;height:100svh;padding-block:105px 40px;display:flex}.journey:not([data-timeline-enhanced=true]) .journey-track{width:auto;max-width:1000px;margin-inline:auto;padding-inline:24px;display:block}.journey:not([data-timeline-enhanced=true]) .journey-intro{width:100%;margin-bottom:56px}.journey:not([data-timeline-enhanced=true]) .journey-intro h2{max-width:20ch}.journey:not([data-timeline-enhanced=true]) .journey-brand{max-width:340px}.journey:not([data-timeline-enhanced=true]) .journey-list{height:auto;display:block}.journey:not([data-timeline-enhanced=true]) .journey-list:before{width:1px;height:auto;top:0;bottom:0;left:5px}.journey:not([data-timeline-enhanced=true]) .journey-step{width:100%;padding:0 0 40px 36px}.journey:not([data-timeline-enhanced=true]) .journey-copy{max-width:65ch}.journey:not([data-timeline-enhanced=true]) .journey-stem{height:0;top:12px;bottom:auto;left:5px}.journey:not([data-timeline-enhanced=true]) .journey-dot{top:-5px;bottom:auto}.journey:not([data-timeline-enhanced=true]) .journey-progress{display:none}@media (min-width:900px) and (max-height:760px){.journey-list{height:390px}.journey-copy h3{margin-bottom:12px;font-size:25px}.journey-copy p{font-size:14px}.journey-brand{height:130px}}.section .contact-copy h2{max-width:16ch}.contact-title-prompt{font-size:.85em;display:block}.contact-title-tail{display:block}.word-rotator{vertical-align:baseline;font-style:italic;font-weight:500;display:inline-grid}.word-rotator:after{content:attr(data-word-longest);visibility:hidden}.word-rotator:after,[data-rotating-word]{white-space:nowrap;grid-area:1/1}.tech-strip{--tech-strip-gap:clamp(32px,4.1vw,64px);border-block:1px solid var(--line);background:var(--surface);color:var(--muted);position:relative}.tech-strip__inner{align-items:center;gap:clamp(28px,3.5vw,56px);min-height:72px;display:flex}.tech-strip__label{flex:none;max-width:140px;margin:0;font-size:11px;font-weight:500;line-height:1.5}.tech-strip__viewport{flex:1;min-width:0;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000,#000 28px calc(100% - 28px),#0000);mask-image:linear-gradient(90deg,#0000,#000 28px calc(100% - 28px),#0000)}.tech-strip__track{width:max-content;animation:tech-strip-loop var(--tech-strip-duration,48s) linear infinite;animation-play-state:paused;display:flex}.tech-strip[data-tech-running=true] .tech-strip__track{will-change:transform;animation-play-state:running}.tech-strip__group{justify-content:space-around;gap:var(--tech-strip-gap);min-width:var(--tech-strip-span,100vw);padding:0 var(--tech-strip-gap) 0 0;margin:0;list-style:none}.tech-strip__group,.tech-strip__item{align-items:center;flex:none;display:flex}.tech-strip__item{white-space:nowrap;gap:10px;min-height:36px;font-size:11px;line-height:1.4}.tech-strip__icon{object-fit:contain;opacity:.65;filter:grayscale()brightness(0);flex:none;width:24px;height:24px;transition:filter .25s ease-out,opacity .25s ease-out;display:block}.tech-strip__icon--antigravity{width:32px;height:32px;margin:-4px}.tech-strip__icon--openai{width:36px;height:36px;margin:-6px}:root[data-theme=night] .tech-strip__icon{filter:grayscale()brightness(0)invert();opacity:.7}@keyframes tech-strip-loop{to{transform:translate(-50%)}}@media (hover:hover){.tech-strip__viewport:hover .tech-strip__track{animation-play-state:paused}}@media (max-width:760px){.tech-strip__inner{gap:18px;width:100%;min-height:66px}.tech-strip__label{max-width:94px;padding-left:20px;font-size:10px}.tech-strip__viewport{-webkit-mask-image:linear-gradient(90deg,#0000,#000 16px calc(100% - 20px),#0000);mask-image:linear-gradient(90deg,#0000,#000 16px calc(100% - 20px),#0000)}.tech-strip__item{gap:8px;font-size:10px}.tech-strip__icon{width:22px;height:22px}.tech-strip__icon--antigravity{width:30px;height:30px}.tech-strip__icon--openai{width:34px;height:34px}}@media (prefers-reduced-motion:reduce){.tech-strip__inner{padding-block:18px}.tech-strip__viewport{overflow:visible;-webkit-mask-image:none;mask-image:none}.tech-strip__track{width:100%;animation:none;transform:none}.tech-strip__group{flex-wrap:wrap;justify-content:space-between;gap:18px 24px;width:100%;min-width:0;padding:0}.tech-strip__group[aria-hidden=true]{display:none}}@media (prefers-reduced-motion:reduce) and (max-width:760px){.tech-strip__inner{flex-direction:column;gap:16px;padding-inline:20px}.tech-strip__label{text-align:center;max-width:none;padding:0}.tech-strip__viewport{flex:none;width:100%}.tech-strip__group{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px 12px;display:grid}.tech-strip__item{flex-direction:column;justify-content:center;gap:7px}}.tech-strip__item:hover .tech-strip__icon{filter:none;opacity:1}:root[data-theme=night] .tech-strip__item:hover :is(.tech-strip__icon--vercel,.tech-strip__icon--openai,.tech-strip__icon--antigravity){filter:invert()}@media (prefers-reduced-motion:reduce){.tech-strip__icon{transition:none}}[data-intro-word],[data-text-reveal] [data-reveal-word]{opacity:var(--word-opacity,1);filter:blur(var(--word-blur,0));transform:translate3d(0,var(--word-y,0),0);transition:opacity .22s linear,filter .22s linear,transform .22s linear;display:inline-block}#intro-title[data-text-reveal-state=clear] [data-intro-word],[data-text-reveal][data-text-reveal-state=clear] [data-reveal-word]{opacity:1;filter:none;transform:none}[data-text-reveal] [data-reveal-phrase]{transition:opacity .22s linear;display:inline;transform:none}@media (prefers-reduced-motion:reduce){[data-intro-word],[data-text-reveal] [data-reveal-word]{opacity:1!important;filter:none!important;transition:none!important;transform:none!important}}.service-tab:first-child{--label-delay:0s}.service-tab:nth-child(2){--label-delay:80ms}.service-tab:nth-child(3){--label-delay:.16s}.service-tab:nth-child(4){--label-delay:.24s}.service-tab:nth-child(5){--label-delay:.32s}[data-text-reveal-mode=label][data-text-reveal-state=clear] [data-reveal-word]{transition-delay:var(--label-delay,0s)}:is(.service-tab,button,.button,.text-link,.project-link):is(:hover,:focus-visible) [data-reveal-word]{opacity:1;filter:none;transition-delay:0s;transform:none}.hero-copy h1 [data-hero-word]{display:inline-block}:root:not([data-theme=night]) #site-sections{background-color:var(--surface);background-image:radial-gradient(78% 430px at 96% 440px,#00555447,#0000 100%),radial-gradient(68% 400px at 0 1320px,#8a02022b,#0000 100%);background-repeat:repeat-y;background-size:100% 1800px}:root:not([data-theme=night]) :is(.closing-scene,.tech-strip){background-color:#0000}@media (max-width:760px){:root:not([data-theme=night]) #site-sections{background-image:radial-gradient(115% 360px at 100% 370px,#00555438,#0000 100%),radial-gradient(100% 340px at 0 1080px,#8a020221,#0000 100%);background-size:100% 1500px}}.portfolio-section .page-width{max-width:1120px}.portfolio-section{overflow:clip}.portfolio-section .projects-heading{margin-bottom:42px}.portfolio-viewport{scrollbar-width:none;overscroll-behavior-x:contain;cursor:grab;-webkit-overflow-scrolling:touch;width:100%;padding-inline:20px;overflow-x:auto}.portfolio-viewport::-webkit-scrollbar{display:none}.portfolio-viewport[data-dragging=true]{cursor:grabbing;-webkit-user-select:none;user-select:none}.portfolio-track{width:max-content;display:flex}.portfolio-group{gap:16px;padding-right:16px;display:flex}.portfolio-card{flex:none;width:clamp(250px,25vw,400px)}.portfolio-link{display:block}.portfolio-preview{aspect-ratio:3/5;background:var(--surface-alt);border-radius:12px;position:relative;overflow:hidden}.portfolio-preview img{object-fit:cover;object-position:top;width:100%;height:100%;transition:transform .45s cubic-bezier(.16,1,.3,1);display:block}.portfolio-link:hover .portfolio-preview img{transform:scale(1.015)}.portfolio-visit{background:var(--surface);color:var(--text);opacity:0;pointer-events:none;border-radius:999px;align-items:center;gap:12px;padding:11px 15px;font-size:12px;font-weight:600;transition:opacity .2s,transform .2s;display:flex;position:absolute;bottom:14px;right:14px;transform:translateY(5px)}.portfolio-link:is(:hover,:focus-visible) .portfolio-visit{opacity:1;transform:none}.portfolio-visit svg{width:17px;height:17px;transform:rotate(-45deg)}.portfolio-link:focus-visible{outline-offset:-3px;border-radius:12px}@media (max-width:760px){.portfolio-card{width:78vw;max-width:340px}.portfolio-group{gap:12px;padding-right:12px}}@media (prefers-reduced-motion:reduce){.portfolio-preview img,.portfolio-visit{transition:none}.portfolio-link:hover .portfolio-preview img{transform:none}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}