@scope(.MaskedVideo){:scope{block-size:100%;inline-size:100%;position:relative;overflow:hidden}:scope>.MaskedVideo_Mask{block-size:100%;inline-size:100%;mask-image:var(--masked-video-mask-image);mask-size:var(--masked-video-mask-size,100%);mask-repeat:var(--masked-video-mask-repeat,repeat);mask-position:var(--masked-video-mask-position,center);position:relative;overflow:hidden}:scope>.MaskedVideo_Mask>.MaskedVideo_Video{object-fit:var(--masked-video-object-fit,cover);object-position:var(--masked-video-object-position-x,center) var(--masked-video-object-position-y,center);block-size:100%;inline-size:100%;display:block;position:relative}:scope>.MaskedVideo_Mask>.MaskedVideo_Video[data-blur]{--masked-video-scale:calc(1 + var(--masked-video-blur,0) / 100);inline-size:calc(var(--masked-video-scale) * 100%);block-size:calc(var(--masked-video-scale) * 100%);filter:blur(calc(var(--masked-video-blur,0) * 1px));will-change:filter, transform;position:absolute;inset-block-start:50%;inset-inline-start:50%;transform:translate(-50%,-50%)}}
@layer viraui.preflight;@layer viraui.components{@property --vui-title-align{syntax:"*";inherits:false;initial-value:start}@property --vui-title-max-width{syntax:"*";inherits:false;initial-value:none}@property --vui-title-literal-color{syntax:"<color>";inherits:false;initial-value:#0000}@property --vui-title-white-space{syntax:"*";inherits:false;initial-value:normal}@property --vui-title-font-weight{syntax:"<number>";inherits:false;initial-value:500}@property --vui-title-font-width{syntax:"<number>";inherits:false;initial-value:100}@property --vui-title-font-opsz{syntax:"<number>";inherits:false;initial-value:16}@property --vui-title-trim{syntax:"*";inherits:false;initial-value:trim-both}@property --vui-title-trim-type{syntax:"*";inherits:false;initial-value:cap alphabetic}@property --vui-title-padding-inline-start{syntax:"<length>";inherits:false;initial-value:0}@property --vui-title-padding-inline-end{syntax:"<length>";inherits:false;initial-value:0}@property --vui-title-padding-block-start{syntax:"<length>";inherits:false;initial-value:0}@property --vui-title-padding-block-end{syntax:"<length>";inherits:false;initial-value:0}@property --vui-title-font-size{syntax:"<length>";inherits:false;initial-value:1rem}@property --vui-title-line-height{syntax:"normal|<number>|<length-percentage>";inherits:false;initial-value:normal}@property --vui-title-letter-spacing{syntax:"normal|<length>";inherits:false;initial-value:normal}@property --vui-title-font-family{syntax:"*";inherits:false;initial-value:sans-serif}@property --__title-medium{syntax:"*";inherits:false;initial-value:0}.viraui__title-module__Title_CXMUX{--__title-medium:clamp(var(--font-scale-body-medium),calc(var(--font-scale-body-medium) + var(--font-scale-body-x-small) / 12 + .24cqi),calc(var(--font-scale-body-medium) + var(--font-scale-body-x-small) / 3));--vui-title-font-size:clamp(calc(var(--font-scale-body-medium) * pow(var(--font-heading-typescale), 5)),calc(var(--__title-medium) * pow(var(--font-heading-typescale), 5)),calc(var(--font-scale-body-medium) * pow(var(--font-heading-typescale), 6)));--vui-title-font-family:var(--font-family-heading);--vui-title-line-height:var(--font-leading-standard);--vui-title-letter-spacing:-.03em;max-inline-size:var(--vui-title-max-width);font-family:var(--vui-title-font-family);font-size:var(--vui-title-font-size);line-height:var(--vui-title-line-height);letter-spacing:var(--vui-title-letter-spacing);text-align:var(--vui-title-align);white-space:var(--vui-title-white-space);word-break:break-word;font-weight:var(--vui-title-font-weight);font-stretch:calc(var(--vui-title-font-width) * 1%);font-optical-sizing:auto;font-variation-settings:"wght" var(--vui-title-font-weight),"wdth" var(--vui-title-font-width),"opsz" var(--vui-title-font-opsz);text-box:var(--vui-title-trim) var(--vui-title-trim-type);margin:0;display:inline-flex}.viraui__title-module__Title_CXMUX[data-title-balanced=true]{text-wrap:balance}.viraui__title-module__Title_CXMUX[data-title-selection=false]{-webkit-user-select:none;user-select:none}.viraui__title-module__Title_CXMUX[data-title-has-padding=true]{padding:var(--vui-title-padding-block-start) var(--vui-title-padding-inline-end) var(--vui-title-padding-block-end) var(--vui-title-padding-inline-start)}.viraui__title-module__Title_CXMUX[data-title-size=display]{--vui-title-font-size:clamp(calc(var(--font-scale-body-medium) * pow(var(--font-heading-typescale), 6)),calc(var(--font-scale-body-medium) * pow(var(--font-heading-typescale), 6) + 4.643cqi - .9286rem),var(--font-scale-display))}.viraui__title-module__Title_CXMUX[data-title-size="2"]{--vui-title-font-size:clamp(calc(var(--font-scale-body-medium) * pow(var(--font-heading-typescale), 4)),calc(var(--__title-medium) * pow(var(--font-heading-typescale), 4)),calc(var(--font-scale-body-medium) * pow(var(--font-heading-typescale), 5)))}.viraui__title-module__Title_CXMUX[data-title-size="3"]{--vui-title-font-size:clamp(calc(var(--font-scale-body-medium) * pow(var(--font-heading-typescale), 3)),calc(var(--__title-medium) * pow(var(--font-heading-typescale), 3)),calc(var(--font-scale-body-medium) * pow(var(--font-heading-typescale), 4)))}.viraui__title-module__Title_CXMUX[data-title-size="4"]{--vui-title-font-size:clamp(calc(var(--font-scale-body-medium) * pow(var(--font-heading-typescale), 2)),calc(var(--__title-medium) * pow(var(--font-heading-typescale), 2)),calc(var(--font-scale-body-medium) * pow(var(--font-heading-typescale), 3)))}.viraui__title-module__Title_CXMUX[data-title-size="5"]{--vui-title-font-size:clamp(calc(var(--font-scale-body-medium) * pow(var(--font-heading-typescale), 1)),calc(var(--__title-medium) * pow(var(--font-heading-typescale), 1)),calc(var(--font-scale-body-medium) * pow(var(--font-heading-typescale), 2)));--vui-title-letter-spacing:-.02em}.viraui__title-module__Title_CXMUX[data-title-size="6"]{--vui-title-font-size:clamp(var(--font-scale-body-medium),var(--__title-medium),calc(var(--font-scale-body-medium) * pow(var(--font-heading-typescale), 1)));--vui-title-letter-spacing:-.02em}.viraui__title-module__Title_CXMUX[data-title-has-literal-color=true]{color:var(--vui-title-literal-color)}.viraui__title-module__Title_CXMUX[data-title-line-height=none]{--vui-title-line-height:0}.viraui__title-module__Title_CXMUX[data-title-line-height=x-small]{--vui-title-line-height:var(--font-leading-x-small)}.viraui__title-module__Title_CXMUX[data-title-line-height=small]{--vui-title-line-height:var(--font-leading-small)}.viraui__title-module__Title_CXMUX[data-title-line-height=large]{--vui-title-line-height:var(--font-leading-large)}}@layer viraui.overrides;
@scope(.ProjectCard){:scope{color:inherit;text-decoration:none;overflow:hidden}:scope>.ProjectCard_ImageContainer{position:relative;overflow:hidden}:scope>.ProjectCard_ImageContainer>*>.ProjectCard_Pattern{z-index:0;transition:all var(--duration-slowest) var(--easing-entrance);--project-card-pattern-filter:saturate(0) invert() hue-rotate(296deg) brightness(250%);--project-card-pattern-filter-hover:saturate(1) invert() hue-rotate(296deg) brightness(250%);filter:var(--project-card-pattern-filter);position:absolute;inset:0;mask-image:linear-gradient(to bottom left,#000,#0000 40% 60%,#000)}[data-theme=dark] :is(:scope>.ProjectCard_ImageContainer>*>.ProjectCard_Pattern){--project-card-pattern-filter:saturate(0) hue-rotate(296deg) brightness(250%);--project-card-pattern-filter-hover:saturate(1) hue-rotate(296deg) brightness(250%)}[data-theme=light] :is(:scope>.ProjectCard_ImageContainer>*>.ProjectCard_Pattern){--project-card-pattern-filter:saturate(0) invert() hue-rotate(296deg) brightness(250%);--project-card-pattern-filter-hover:saturate(1) invert() hue-rotate(296deg) brightness(250%)}@media (prefers-color-scheme:dark){[data-theme=system] :is(:scope>.ProjectCard_ImageContainer>*>.ProjectCard_Pattern){--project-card-pattern-filter:saturate(0) hue-rotate(296deg) brightness(250%);--project-card-pattern-filter-hover:saturate(1) hue-rotate(296deg) brightness(250%)}}@media (prefers-color-scheme:light){[data-theme=system] :is(:scope>.ProjectCard_ImageContainer>*>.ProjectCard_Pattern){--project-card-pattern-filter:saturate(0) invert() hue-rotate(296deg) brightness(250%);--project-card-pattern-filter-hover:saturate(1) invert() hue-rotate(296deg) brightness(250%)}}.ProjectCard:hover :is(:scope>.ProjectCard_ImageContainer>*>.ProjectCard_Pattern){filter:var(--project-card-pattern-filter-hover);mask-image:linear-gradient(to bottom left,#000,#0000,#000)}:scope>.ProjectCard_ImageContainer .ProjectCard_Image{border-radius:var(--radius-medium);object-position:center;object-fit:var(--project-card-image-fit,cover);z-index:1;aspect-ratio:16/9;-webkit-user-select:none;user-select:none;block-size:100%;inline-size:100%;display:block}}
@layer viraui.preflight;@layer viraui.components{@property --vui-typewriter-caret-color{syntax:"<color>";inherits:true;initial-value:currentColor}.viraui__typewriter-module__Typewriter_R3sbb{isolation:isolate;position:relative}.viraui__typewriter-module__Ghost_R-Yy-{visibility:hidden;white-space:pre-wrap}.viraui__typewriter-module__Typed_00NZ8{white-space:pre-wrap}.viraui__typewriter-module__Typewriter_R3sbb[data-preserve-space]>.viraui__typewriter-module__Typed_00NZ8{position:absolute;inset-block-start:0;inset-inline-start:0}.viraui__typewriter-module__Caret_96Yfs{vertical-align:initial;color:var(--vui-typewriter-caret-color);animation:1.1s step-start infinite viraui__typewriter-module__typewriter-caret-blink_yLCpV;display:inline-block}@media (prefers-reduced-motion:reduce){.viraui__typewriter-module__Caret_96Yfs{animation:none}}.viraui__typewriter-module__Caret_96Yfs[data-type=block]{background-color:var(--vui-typewriter-caret-color);block-size:.95em;inline-size:.55em;margin-inline-start:.04em;transform:translateY(.08em)}.viraui__typewriter-module__Caret_96Yfs[data-type=pipe]:before{content:"|"}.viraui__typewriter-module__Caret_96Yfs[data-type=underscore]:before{content:"_"}.viraui__typewriter-module__A11y_B-rjF{clip-path:inset(50%);white-space:nowrap;pointer-events:none;border:0;block-size:1px;inline-size:1px;margin:-1px;padding:0;position:absolute;inset-block-start:0;inset-inline-start:0;overflow:hidden}@keyframes viraui__typewriter-module__typewriter-caret-blink_yLCpV{50%{opacity:0}}}@layer viraui.overrides;
