@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap";:root{--color-bg:#0a0a0f;--color-text:#fff;--color-text-muted:#a0a0ab;--color-accent-1:#6366f1;--color-accent-2:#8b5cf6;--color-accent-3:#14b8a6;--glass-bg:#ffffff08;--glass-border:#ffffff14}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--color-bg);color:var(--color-text);-webkit-font-smoothing:antialiased;font-family:Inter,sans-serif;overflow-x:hidden}.snap-container{scroll-snap-type:y mandatory;scroll-behavior:smooth;height:100dvh;overflow-y:scroll}.snap-container::-webkit-scrollbar{display:none}.snap-container{-ms-overflow-style:none;scrollbar-width:none}.snap-section{scroll-snap-align:start;scroll-snap-stop:always;justify-content:center;align-items:center;height:100dvh;display:flex;position:relative}.text-gradient{background:linear-gradient(90deg,#60a5fa,#a78bfa);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.glass-panel{background:var(--glass-bg);-webkit-backdrop-filter:blur(16px);border:1px solid var(--glass-border)}.btn-primary{color:#fff;background:linear-gradient(135deg, var(--color-accent-1) 0%, var(--color-accent-2) 100%);cursor:pointer;border:none;border-radius:9999px;align-items:center;gap:.5rem;padding:.8rem 1.5rem;font-weight:600;text-decoration:none;transition:all .3s;display:inline-flex}.btn-primary:hover{filter:brightness(1.1);transform:translateY(-2px);box-shadow:0 10px 25px -5px #0000004d}.project-container{justify-content:center;align-items:center;gap:5%;width:100%;height:100%;padding:0 5%;display:flex;position:relative}.project-container.reverse{flex-direction:row-reverse}.project-container:not(.reverse){flex-direction:row}.project-image-container{border-radius:24px;flex:1;height:70%;position:relative;overflow:hidden}.project-text-container{flex-direction:column;flex:1;justify-content:center;display:flex}.project-text-container.reverse{text-align:right;align-items:flex-end}.project-text-container:not(.reverse){text-align:left;align-items:flex-start}.project-title{color:#fff;margin-bottom:1.5rem;font-size:clamp(2rem,5vw,3.5rem);font-weight:600}.project-description{color:var(--color-text-muted);max-width:90%;margin-bottom:2rem;font-size:clamp(1rem,2vw,1.2rem);line-height:1.6}@media (width<=900px){.project-container,.project-container.reverse,.project-container:not(.reverse){gap:3%;padding:90px 5% 5%;flex-direction:column!important}.project-image-container{flex:none;width:100%;height:45%}.project-text-container,.project-text-container.reverse,.project-text-container:not(.reverse){flex:1;width:100%;text-align:center!important;align-items:center!important}.project-title{margin-bottom:1rem;font-size:clamp(1.8rem,6vw,2.5rem)}.project-description{max-width:100%;margin-bottom:1.5rem;font-size:1rem}.btn-back-top{width:48px!important;height:48px!important;position:static!important;top:auto!important;left:auto!important}.hero-nav-btn,.lightbox-nav-btn{display:none!important}}.project-actions{align-items:center;gap:1rem;display:flex}.back-button-container{z-index:1001;position:fixed;top:15px;left:50%;transform:translate(-50%)}.project-detail-grid{grid-template-columns:1fr 1fr;align-items:center;gap:4rem;display:grid}.project-detail-image{height:70vh}@media (width<=900px){.back-button-container{justify-content:center;margin-top:60px;margin-bottom:2rem;display:flex;position:static;transform:none}.project-detail-grid{grid-template-columns:1fr;gap:2rem}.project-detail-image{height:40vh}}.btn-outline{color:#fff;cursor:pointer;background:0 0;border:1px solid #fff3;border-radius:50px;align-items:center;gap:8px;padding:12px 24px;font-size:1rem;font-weight:500;text-decoration:none;transition:all .3s;display:inline-flex}.btn-outline:hover{background:#ffffff1a;border-color:#fff6}:root{--swiper-theme-color:#007aff}:host{z-index:1;margin-left:auto;margin-right:auto;display:block;position:relative}.swiper{z-index:1;margin-left:auto;margin-right:auto;padding:0;list-style:none;display:block;position:relative;overflow:hidden}.swiper-vertical>.swiper-wrapper{flex-direction:column}.swiper-wrapper{z-index:1;width:100%;height:100%;transition-property:transform;transition-timing-function:var(--swiper-wrapper-transition-timing-function,initial);box-sizing:content-box;display:flex;position:relative}.swiper-android .swiper-slide,.swiper-ios .swiper-slide,.swiper-wrapper{transform:translate(0,0)}.swiper-horizontal{touch-action:pan-y}.swiper-vertical{touch-action:pan-x}.swiper-slide{flex-shrink:0;width:100%;height:100%;transition-property:transform;display:block;position:relative}.swiper-slide-invisible-blank{visibility:hidden}.swiper-autoheight,.swiper-autoheight .swiper-slide{height:auto}.swiper-autoheight .swiper-wrapper{align-items:flex-start;transition-property:transform,height}.swiper-backface-hidden .swiper-slide{backface-visibility:hidden;transform:translateZ(0)}.swiper-3d.swiper-css-mode .swiper-wrapper{perspective:1200px}.swiper-3d .swiper-wrapper{transform-style:preserve-3d}.swiper-3d{perspective:1200px}.swiper-3d .swiper-slide,.swiper-3d .swiper-cube-shadow{transform-style:preserve-3d}.swiper-css-mode>.swiper-wrapper{scrollbar-width:none;-ms-overflow-style:none;overflow:auto}.swiper-css-mode>.swiper-wrapper::-webkit-scrollbar{display:none}.swiper-css-mode>.swiper-wrapper>.swiper-slide{scroll-snap-align:start start}.swiper-css-mode.swiper-horizontal>.swiper-wrapper{scroll-snap-type:x mandatory}.swiper-css-mode.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child{margin-inline-start:var(--swiper-slides-offset-before);scroll-margin-inline-start:var(--swiper-slides-offset-before)}.swiper-css-mode.swiper-horizontal>.swiper-wrapper>.swiper-slide:last-child{margin-inline-end:var(--swiper-slides-offset-after)}.swiper-css-mode.swiper-vertical>.swiper-wrapper{scroll-snap-type:y mandatory}.swiper-css-mode.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child{margin-block-start:var(--swiper-slides-offset-before);scroll-margin-block-start:var(--swiper-slides-offset-before)}.swiper-css-mode.swiper-vertical>.swiper-wrapper>.swiper-slide:last-child{margin-block-end:var(--swiper-slides-offset-after)}.swiper-css-mode.swiper-free-mode>.swiper-wrapper{scroll-snap-type:none}.swiper-css-mode.swiper-free-mode>.swiper-wrapper>.swiper-slide{scroll-snap-align:none}.swiper-css-mode.swiper-centered>.swiper-wrapper:before{content:"";flex-shrink:0;order:9999}.swiper-css-mode.swiper-centered>.swiper-wrapper>.swiper-slide{scroll-snap-align:center center;scroll-snap-stop:always}.swiper-css-mode.swiper-centered.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child{margin-inline-start:var(--swiper-centered-offset-before)}.swiper-css-mode.swiper-centered.swiper-horizontal>.swiper-wrapper:before{height:100%;min-height:1px;width:var(--swiper-centered-offset-after)}.swiper-css-mode.swiper-centered.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child{margin-block-start:var(--swiper-centered-offset-before)}.swiper-css-mode.swiper-centered.swiper-vertical>.swiper-wrapper:before{width:100%;min-width:1px;height:var(--swiper-centered-offset-after)}.swiper-3d .swiper-slide-shadow,.swiper-3d .swiper-slide-shadow-left,.swiper-3d .swiper-slide-shadow-right,.swiper-3d .swiper-slide-shadow-top,.swiper-3d .swiper-slide-shadow-bottom,.swiper-3d .swiper-slide-shadow,.swiper-3d .swiper-slide-shadow-left,.swiper-3d .swiper-slide-shadow-right,.swiper-3d .swiper-slide-shadow-top,.swiper-3d .swiper-slide-shadow-bottom{pointer-events:none;z-index:10;width:100%;height:100%;position:absolute;top:0;left:0}.swiper-3d .swiper-slide-shadow{background:#00000026}.swiper-3d .swiper-slide-shadow-left{background-image:linear-gradient(270deg,#00000080,#0000)}.swiper-3d .swiper-slide-shadow-right{background-image:linear-gradient(90deg,#00000080,#0000)}.swiper-3d .swiper-slide-shadow-top{background-image:linear-gradient(#0000,#00000080)}.swiper-3d .swiper-slide-shadow-bottom{background-image:linear-gradient(#00000080,#0000)}.swiper-lazy-preloader{z-index:10;transform-origin:50%;box-sizing:border-box;border:4px solid var(--swiper-preloader-color,var(--swiper-theme-color));border-top-color:#0000;border-radius:50%;width:42px;height:42px;margin-top:-21px;margin-left:-21px;position:absolute;top:50%;left:50%}:is(.swiper:not(.swiper-watch-progress),.swiper-watch-progress .swiper-slide-visible) .swiper-lazy-preloader{animation:1s linear infinite swiper-preloader-spin}.swiper-lazy-preloader-white{--swiper-preloader-color:#fff}.swiper-lazy-preloader-black{--swiper-preloader-color:#000}@keyframes swiper-preloader-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}:root{--swiper-navigation-size:44px}.swiper-button-prev,.swiper-button-next{width:var(--swiper-navigation-size);height:var(--swiper-navigation-size);z-index:10;cursor:pointer;color:var(--swiper-navigation-color,var(--swiper-theme-color));justify-content:center;align-items:center;display:flex;position:absolute}:is(.swiper-button-prev,.swiper-button-next).swiper-button-disabled{opacity:.35;cursor:auto;pointer-events:none}:is(.swiper-button-prev,.swiper-button-next).swiper-button-hidden{opacity:0;cursor:auto;pointer-events:none}.swiper-navigation-disabled :is(.swiper-button-prev,.swiper-button-next){display:none!important}:is(.swiper-button-prev,.swiper-button-next) ::slotted(svg),:is(.swiper-button-prev,.swiper-button-next) svg{object-fit:contain;transform-origin:50%;fill:currentColor;pointer-events:none;width:100%;height:100%}.swiper-button-lock{display:none}.swiper-button-prev,.swiper-button-next{top:var(--swiper-navigation-top-offset,50%);margin-top:calc(0px - (var(--swiper-navigation-size) / 2))}.swiper-button-prev{left:var(--swiper-navigation-sides-offset,4px);right:auto}.swiper-button-prev ::slotted(.swiper-navigation-icon),.swiper-button-prev .swiper-navigation-icon{transform:rotate(180deg)}.swiper-button-next{right:var(--swiper-navigation-sides-offset,4px);left:auto}.swiper-horizontal .swiper-button-prev,.swiper-horizontal .swiper-button-next,.swiper-horizontal~.swiper-button-prev,.swiper-horizontal~.swiper-button-next{top:var(--swiper-navigation-top-offset,50%);margin-top:calc(0px - (var(--swiper-navigation-size) / 2));margin-left:0}.swiper-horizontal .swiper-button-prev,.swiper-horizontal~.swiper-button-prev,.swiper-horizontal.swiper-rtl .swiper-button-next,.swiper-horizontal.swiper-rtl~.swiper-button-next{left:var(--swiper-navigation-sides-offset,4px);right:auto}.swiper-horizontal .swiper-button-next,.swiper-horizontal~.swiper-button-next,.swiper-horizontal.swiper-rtl .swiper-button-prev,.swiper-horizontal.swiper-rtl~.swiper-button-prev{right:var(--swiper-navigation-sides-offset,4px);left:auto}:is(.swiper-horizontal .swiper-button-prev,.swiper-horizontal~.swiper-button-prev,.swiper-horizontal.swiper-rtl .swiper-button-next,.swiper-horizontal.swiper-rtl~.swiper-button-next) ::slotted(.swiper-navigation-icon),:is(.swiper-horizontal .swiper-button-prev,.swiper-horizontal~.swiper-button-prev,.swiper-horizontal.swiper-rtl .swiper-button-next,.swiper-horizontal.swiper-rtl~.swiper-button-next) .swiper-navigation-icon{transform:rotate(180deg)}:is(.swiper-horizontal.swiper-rtl .swiper-button-prev,.swiper-horizontal.swiper-rtl~.swiper-button-prev) ::slotted(.swiper-navigation-icon),:is(.swiper-horizontal.swiper-rtl .swiper-button-prev,.swiper-horizontal.swiper-rtl~.swiper-button-prev) .swiper-navigation-icon{transform:rotate(0)}.swiper-vertical .swiper-button-prev,.swiper-vertical .swiper-button-next,.swiper-vertical~.swiper-button-prev,.swiper-vertical~.swiper-button-next{left:var(--swiper-navigation-top-offset,50%);margin-left:calc(0px - (var(--swiper-navigation-size) / 2));margin-top:0;right:auto}.swiper-vertical .swiper-button-prev,.swiper-vertical~.swiper-button-prev{top:var(--swiper-navigation-sides-offset,4px);bottom:auto}:is(.swiper-vertical .swiper-button-prev,.swiper-vertical~.swiper-button-prev) ::slotted(.swiper-navigation-icon),:is(.swiper-vertical .swiper-button-prev,.swiper-vertical~.swiper-button-prev) .swiper-navigation-icon{transform:rotate(-90deg)}.swiper-vertical .swiper-button-next,.swiper-vertical~.swiper-button-next{bottom:var(--swiper-navigation-sides-offset,4px);top:auto}:is(.swiper-vertical .swiper-button-next,.swiper-vertical~.swiper-button-next) ::slotted(.swiper-navigation-icon),:is(.swiper-vertical .swiper-button-next,.swiper-vertical~.swiper-button-next) .swiper-navigation-icon{transform:rotate(90deg)}.swiper-pagination{text-align:center;z-index:10;transition:opacity .3s;position:absolute;transform:translate(0,0)}.swiper-pagination.swiper-pagination-hidden{opacity:0}.swiper-pagination-disabled>.swiper-pagination,.swiper-pagination.swiper-pagination-disabled{display:none!important}.swiper-pagination-fraction,.swiper-pagination-custom,.swiper-horizontal>.swiper-pagination-bullets,.swiper-pagination-bullets.swiper-pagination-horizontal{bottom:var(--swiper-pagination-bottom,8px);top:var(--swiper-pagination-top,auto);width:100%;left:0}.swiper-pagination-bullets-dynamic{font-size:0;overflow:hidden}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{position:relative;transform:scale(.33)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active,.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main{transform:scale(1)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev{transform:scale(.66)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev{transform:scale(.33)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next{transform:scale(.66)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next{transform:scale(.33)}.swiper-pagination-bullet{width:var(--swiper-pagination-bullet-width,var(--swiper-pagination-bullet-size,8px));height:var(--swiper-pagination-bullet-height,var(--swiper-pagination-bullet-size,8px));border-radius:var(--swiper-pagination-bullet-border-radius,50%);background:var(--swiper-pagination-bullet-inactive-color,#000);opacity:var(--swiper-pagination-bullet-inactive-opacity,.2);display:inline-block}button.swiper-pagination-bullet{box-shadow:none;appearance:none;border:none;margin:0;padding:0}.swiper-pagination-clickable .swiper-pagination-bullet{cursor:pointer}.swiper-pagination-bullet:only-child{display:none!important}.swiper-pagination-bullet-active{opacity:var(--swiper-pagination-bullet-opacity,1);background:var(--swiper-pagination-color,var(--swiper-theme-color))}.swiper-vertical>.swiper-pagination-bullets,.swiper-pagination-vertical.swiper-pagination-bullets{right:var(--swiper-pagination-right,8px);left:var(--swiper-pagination-left,auto);top:50%;transform:translateY(-50%)}:is(.swiper-vertical>.swiper-pagination-bullets,.swiper-pagination-vertical.swiper-pagination-bullets) .swiper-pagination-bullet{margin:var(--swiper-pagination-bullet-vertical-gap,6px) 0;display:block}:is(.swiper-vertical>.swiper-pagination-bullets,.swiper-pagination-vertical.swiper-pagination-bullets).swiper-pagination-bullets-dynamic{width:8px;top:50%;transform:translateY(-50%)}:is(.swiper-vertical>.swiper-pagination-bullets,.swiper-pagination-vertical.swiper-pagination-bullets).swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transition:transform .2s,top .2s;display:inline-block}:is(.swiper-horizontal>.swiper-pagination-bullets,.swiper-pagination-horizontal.swiper-pagination-bullets) .swiper-pagination-bullet{margin:0 var(--swiper-pagination-bullet-horizontal-gap,4px)}:is(.swiper-horizontal>.swiper-pagination-bullets,.swiper-pagination-horizontal.swiper-pagination-bullets).swiper-pagination-bullets-dynamic{white-space:nowrap;left:50%;transform:translate(-50%)}:is(.swiper-horizontal>.swiper-pagination-bullets,.swiper-pagination-horizontal.swiper-pagination-bullets).swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transition:transform .2s,left .2s}.swiper-horizontal.swiper-rtl>.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transition:transform .2s,right .2s}.swiper-pagination-fraction{color:var(--swiper-pagination-fraction-color,inherit)}.swiper-pagination-progressbar{background:var(--swiper-pagination-progressbar-bg-color,#00000040);position:absolute}.swiper-pagination-progressbar .swiper-pagination-progressbar-fill{background:var(--swiper-pagination-color,var(--swiper-theme-color));transform-origin:0 0;width:100%;height:100%;position:absolute;top:0;left:0;transform:scale(0)}.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill{transform-origin:100% 0}.swiper-horizontal>.swiper-pagination-progressbar,.swiper-pagination-progressbar.swiper-pagination-horizontal,.swiper-vertical>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,.swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite{width:100%;height:var(--swiper-pagination-progressbar-size,4px);top:0;left:0}.swiper-vertical>.swiper-pagination-progressbar,.swiper-pagination-progressbar.swiper-pagination-vertical,.swiper-horizontal>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,.swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite{width:var(--swiper-pagination-progressbar-size,4px);height:100%;top:0;left:0}.swiper-pagination-lock{display:none}.screenshots__item{filter:drop-shadow(0 25px 40px #00000026);aspect-ratio:270/585;flex-direction:column;align-items:center;width:auto;max-width:100%;height:100%;max-height:100%;display:flex;position:relative;container-type:inline-size}.screenshots__frame{box-sizing:border-box;background-color:#000;border-radius:14.81cqi;width:100%;height:100%;padding:2.22cqi;position:relative;box-shadow:0 0 0 .74cqi #333,0 0 0 2.22cqi #e0e0e0,0 0 0 2.59cqi #b3b3b3}.screenshots__frame img,.screenshots__frame video{object-fit:cover;width:100%;height:100%;display:block}.screenshots__frame:before{content:"";z-index:10;background-color:#000;border-radius:7.4cqi;width:31.48cqi;height:9.26cqi;position:absolute;top:6.29cqi;left:50%;transform:translate(-50%)}.screenshots__frame:after{content:"";background-color:#b3b3b3;border-radius:.74cqi 0 0 .74cqi;width:.74cqi;height:9.63cqi;position:absolute;top:40.74cqi;left:-2.96cqi;box-shadow:0 14.81cqi #b3b3b3,0 31.48cqi #b3b3b3,101.48cqi 11.11cqi 0 .37cqi #b3b3b3}.screenshots__frame--classic:before{display:none}.screenshots__frame--classic .screenshots__home-button{z-index:10;background-color:#111;border:.74cqi solid #333;border-radius:50%;width:16.29cqi;height:16.29cqi;position:absolute;bottom:2.96cqi;left:50%;transform:translate(-50%);box-shadow:inset 0 0 1.85cqi #000c}.screenshots__frame--classic .screenshots__top-speaker{z-index:10;background-color:#222;border-radius:2.22cqi;width:18.51cqi;height:2.22cqi;position:absolute;top:8.88cqi;left:50%;transform:translate(-50%);box-shadow:inset 0 .37cqi .74cqi #00000080}.mac__item{filter:drop-shadow(0 25px 40px #00000040);aspect-ratio:800/551;flex-direction:column;align-items:center;width:auto;max-width:100%;height:100%;max-height:100%;display:flex;position:relative;container-type:inline-size}.mac__monitor{aspect-ratio:16/10;box-sizing:border-box;z-index:2;background-color:#000;border-radius:2.5cqi;flex-direction:column;width:100%;padding:3% 3% 8%;display:flex;position:relative;box-shadow:inset 0 0 0 .125cqi #333,0 0 0 .375cqi #d4d4d4,0 .5cqi 1.25cqi #00000080}.mac__screen{background-color:#111;border:.25cqi solid #222;flex:1;width:100%;position:relative;overflow:hidden}.mac__chin{background:linear-gradient(#f0f0f0,#c4c4c4);border-bottom-right-radius:2.5cqi;border-bottom-left-radius:2.5cqi;justify-content:center;align-items:center;height:10%;min-height:4.375cqi;display:flex;position:absolute;bottom:0;left:0;right:0;box-shadow:inset 0 .125cqi #fffc}.mac__logo{opacity:.85;background-image:url("data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 384 512\"><path fill=\"%23333\" d=\"M318.7 268.7c-.2-36.7 16.4-64.4 50-84.8-18.8-26.9-47.2-41.7-84.7-44.6-35.5-2.8-74.3 20.7-88.5 20.7-15 0-49.4-19.7-76.4-19.7C63.3 141.2 4 184.8 4 273.5q0 39.3 14.4 81.2c12.8 36.7 59 126.7 107.2 125.2 25.2-.6 43-17.9 75.8-17.9 31.8 0 48.3 17.9 76.4 17.3 48.6-.7 90.4-82.5 102.6-119.3-65.2-30.7-61.7-90-61.7-91.3zM344 86h-22c-1.1 0-2-1.1-2-2.3V62c0-33.8-27.2-61.2-60.8-61.2h-1.5c-1.1 0-2 1.1-2 2.3v21.7C255.7 58.7 283 86 316.7 86h21.9c1.2 0 2 1.1 2 2.3v21.7c0 33.8 27.2 61.2 60.8 61.2h1.5c1.1 0 2-1.1 2-2.3V147c0-33.7-27.2-61-60.9-61z\"/></svg>");background-position:50%;background-repeat:no-repeat;background-size:contain;width:3cqi;height:3cqi}.mac__stand{clip-path:polygon(15% 0,85% 0,100% 100%,0 100%);z-index:1;background:linear-gradient(#d4d4d4,#9a9a9a);width:20%;height:7.5cqi;margin-top:-1.875cqi;position:relative}.mac__stand-base{z-index:3;background:linear-gradient(90deg,#9a9a9a,#e4e4e4,#9a9a9a);border-radius:.75cqi;width:32%;height:1cqi;margin-top:-.25cqi;position:relative;box-shadow:0 .5cqi 1.25cqi #0006}
