:root{color-scheme:dark;--bg:#101012;--panel:#19191d;--text:#f4f3f6;--muted:#aaa8b2;--line:#303035;--accent:#a39aff;--gutter:clamp(24px,6vw,100px)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid #b7aeff;outline-offset:6px}::selection{background:#7160dc;color:white}[hidden]{display:none!important}.skip{position:fixed;top:12px;left:20px;transform:translateY(-180%);background:white;color:black;padding:14px;z-index:100}.skip:focus{transform:none}.header{height:88px;position:absolute;top:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;padding:0 var(--gutter);z-index:20;border-bottom:1px solid #ffffff12}.logo{display:inline-flex;background:#f5f4f7;border-radius:5px;padding:7px 10px;align-items:center}.logo img{width:120px;height:auto;display:block}.header nav{display:flex;align-items:center;gap:32px;font-size:13px}.header nav a{min-height:44px;display:flex;align-items:center}.nav-contact{border:1px solid #55525f;border-radius:40px;padding:0 20px;gap:25px}.menu-toggle{display:none}.progress{position:fixed;top:0;left:0;width:100%;height:3px;z-index:40;pointer-events:none}.progress div{height:100%;background:linear-gradient(90deg,#555dff,#b399ff);transform:scaleX(0);transform-origin:left}.section-dots{position:fixed;right:20px;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;z-index:30}.section-dots a{width:28px;height:28px;display:grid;place-items:center}.section-dots a:after{content:"";height:5px;width:5px;border-radius:50%;background:#77727f}.section-dots a[aria-current]:after{background:#b8aaff;transform:scale(1.7)}section,footer{position:relative;min-height:100svh;padding:110px var(--gutter);scroll-margin-top:0}section{border-bottom:1px solid var(--line)}h1,h2,h3,p{margin:0}h1,h2{font-weight:500;letter-spacing:-.065em;line-height:1.04}h1{font-size:clamp(56px,6.7vw,108px)}h1>span{display:block}h2{font-size:clamp(42px,5.3vw,82px)}em{font-style:normal;color:var(--accent)}h3{font-size:21px;font-weight:500;letter-spacing:-.025em;line-height:1.3}p{line-height:1.7;color:var(--muted);font-size:15px}.eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:.17em;color:#c5c1d0;margin-bottom:30px;font-weight:600}.hero{display:flex;align-items:center;padding-top:150px;padding-bottom:140px;overflow:hidden;min-height:max(800px,100svh)}.hero-content{position:relative;z-index:2;max-width:790px}.intro{max-width:440px;margin-top:30px;font-size:16px}.actions{display:flex;gap:30px;align-items:center;margin-top:34px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:34px;background:#eeeaf8;border:0;color:#17141f;border-radius:40px;padding:17px 24px;min-height:54px;font-size:13px;font-weight:600}.button span{font-size:20px}.text-link{display:inline-flex;gap:20px;align-items:center;min-height:44px;font-size:13px;background:none;border:0;color:inherit;padding:0}.hero-bottom{position:absolute;bottom:32px;left:var(--gutter);right:var(--gutter);display:flex;justify-content:space-between;color:var(--muted);font-size:11px;letter-spacing:.04em}.hero-bottom a{min-height:44px;display:flex;align-items:center;gap:25px}.hero-art{position:absolute;width:52vw;height:52vw;max-width:800px;max-height:800px;right:-5vw;top:15%;background:radial-gradient(ellipse,#6952db30,transparent 68%);pointer-events:none}.concept-box{position:absolute;width:47%;height:47%;top:25%;left:27%;border:1px solid #aaa0f2;background:linear-gradient(135deg,#7970ee85,#222135 60%,#0b0b0e);transform:rotate(-23deg) skew(10deg,9deg);box-shadow:inset 1px 1px 55px #b2a4ff35,25px 35px 100px #6b46f140}.concept-box:after{content:"";position:absolute;inset:13%;border:1px solid #a99bf85c;background:linear-gradient(130deg,#8e70ff30,transparent)}.orbit{position:absolute;inset:10%;border:1px solid #9b8ce329;border-radius:50%;transform:rotate(-35deg) scaleY(.6)}.orbit-two{inset:0;transform:rotate(35deg) scaleY(.65)}.art-label{position:absolute;bottom:15%;right:22%;font-size:9px;letter-spacing:.3em;color:#8d83b0}.section-intro{max-width:560px;margin-top:28px}.services-grid{margin-top:52px;display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.card{padding:32px;background:linear-gradient(145deg,#202025,#17171b);border:1px solid #303037;border-radius:12px}.card-symbol{display:flex;align-items:center;justify-content:center;height:44px;width:44px;border:1px solid #5a526f;border-radius:12px;color:#b6a6fb;font-size:28px;margin-bottom:45px}.card p{margin-top:15px;font-size:14px}.card.compact{min-height:128px}.why{display:grid;grid-template-columns:1.15fr 1fr;gap:70px;align-items:center}.reason{display:flex;gap:24px;padding:30px 0;border-top:1px solid var(--line)}.reason>span{color:#8e7bd0;font-size:12px;padding-top:5px}.reason p{margin-top:14px;font-size:14px}.approach{display:flex;flex-direction:column;justify-content:center}.statement{max-width:1080px;line-height:1.13}.approach-bottom{margin-top:70px;display:flex;align-items:center;gap:30px;align-self:flex-end;max-width:530px}.box-mark{font-size:48px;color:var(--accent)}.cta{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;overflow:hidden;gap:34px}.cta h2{font-size:clamp(54px,7.5vw,115px);position:relative}.cta .eyebrow{margin:0}.cta-glow{position:absolute;width:85%;height:70%;background:radial-gradient(ellipse,#6042a936,transparent 68%);pointer-events:none}.cta .button{position:relative}.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:80px}address{font-style:normal;margin-top:45px;display:flex;flex-direction:column;align-items:flex-start}address a{min-height:44px;display:flex;align-items:center;font-size:17px}address p{margin-top:20px}.form-wrap{padding-top:10px}.form-note{font-size:12px;margin-bottom:22px;color:#b3adbf}form>.form-note{margin-top:20px;margin-bottom:0}.field-pair{display:grid;grid-template-columns:1fr 1fr;gap:20px}.field{margin-bottom:24px}label{display:block;font-size:12px;margin-bottom:12px}label span{color:#aaa3b5;font-size:10px}input,textarea,select{display:block;width:100%;min-height:48px;border:1px solid #46414e;border-radius:6px;background:#1a191f;color:var(--text);padding:12px;outline-offset:3px}textarea{resize:vertical}select{cursor:pointer}form .button{width:100%}.thank-you{padding:50px 25px;border:1px solid #514562;border-radius:12px}.thank-you>span{font-size:35px;color:var(--accent)}.thank-you h3{font-size:36px;margin:25px 0 15px}.thank-you button{margin-top:25px}footer{display:flex;flex-direction:column;justify-content:space-between;padding-bottom:32px;background:#0c0c0e;gap:60px}.footer-top{display:flex;align-items:flex-start;justify-content:space-between;gap:40px}.footer-top p{max-width:330px}.footer-links{display:grid;grid-template-columns:1fr 1.5fr 1fr;gap:40px;max-width:900px}.footer-links>div{display:flex;flex-direction:column;align-items:flex-start}.footer-links span{color:#85808e;font-size:11px;text-transform:uppercase;letter-spacing:.14em;margin-bottom:20px}.footer-links a{min-height:44px;display:flex;align-items:center;font-size:13px}.footer-bottom{border-top:1px solid var(--line);padding-top:28px;display:flex;justify-content:space-between;font-size:11px;color:#9e98a9}.js.motion .reveal{opacity:0;transform:translateY(25px);transition:opacity .8s ease,transform .8s cubic-bezier(.2,.7,.2,1);transition-delay:var(--delay,0ms)}.js.motion .card.reveal,.js.motion .work-card.reveal{transform:translateY(24px) scale(.97)}.js.motion .reveal.visible{opacity:1;transform:none}@media(hover:hover){a:hover{color:#c7bdff}.button:hover{color:#17141f;background:#d9d0f6}.logo:hover{opacity:.85}}@media(min-width:1500px){section,footer{padding-left:max(var(--gutter),calc((100vw - 1320px)/2));padding-right:max(var(--gutter),calc((100vw - 1320px)/2))}}@media(max-width:1000px){.services-grid{grid-template-columns:1fr 1fr}.why{gap:35px}.contact-layout{gap:40px}.section-dots{display:none}.hero-art{right:-18%;width:75vw;height:75vw;top:20%;opacity:.7}.hero-content{max-width:650px}.footer-top{flex-wrap:wrap}}@media(max-width:700px){html{scroll-padding-top:25px}.header{height:78px}.header nav{gap:15px;font-size:12px}.js .menu-toggle{display:flex;align-items:center;justify-content:space-between;gap:20px;background:transparent;border:1px solid #51495d;border-radius:30px;color:var(--text);padding:10px 16px;min-height:44px}.js .header nav{position:fixed;inset:78px 0 0;background:#141218;display:flex;flex-direction:column;align-items:stretch;justify-content:center;padding:35px var(--gutter);transform:translateX(100%);visibility:hidden;transition:transform .35s}.js .header nav.open{transform:none;visibility:visible}.js .header nav a{font-size:27px;min-height:70px;border-bottom:1px solid var(--line)}.js .header nav .nav-contact{font-size:18px;border:1px solid #51495d;margin-top:20px;justify-content:space-between}.menu-open{overflow:hidden}body:not(.menu-open) .header nav:not(.open){pointer-events:auto}section,footer{padding:85px var(--gutter)}.hero{min-height:100svh;padding-top:150px;padding-bottom:125px;align-items:center}.hero-art{width:105vw;height:105vw;right:-48%;top:12%;opacity:.45}.hero h1{font-size:clamp(49px,10.7vw,74px)}.hero .eyebrow{font-size:9px}.hero-content{width:100%}.intro{max-width:340px;font-size:14px}.actions{gap:20px;flex-wrap:wrap}.button{padding:16px 20px;gap:22px}.hero-bottom{font-size:9px;bottom:20px}.section-intro{font-size:14px}.services-grid{grid-template-columns:1fr;gap:12px;margin-top:35px}.card{padding:27px}.card-symbol{margin-bottom:26px}.card.compact{min-height:110px}.why{display:block}.reasons{margin-top:40px}.reason{gap:20px}.statement{font-size:clamp(38px,8.9vw,58px)}.approach-bottom{margin-top:45px;gap:20px}.approach-bottom p{font-size:13px}.cta{gap:30px}.cta .eyebrow{font-size:9px;max-width:260px}.contact-layout{grid-template-columns:1fr;gap:55px}.field-pair{grid-template-columns:1fr;gap:0}.footer-top{flex-direction:column;gap:30px}.footer-links{grid-template-columns:1fr 1fr;gap:35px 15px}.footer-links a{font-size:12px}.footer-bottom{flex-direction:column;gap:15px}footer{padding-bottom:30px}.header nav{gap:10px}.header nav a{font-size:10px}.header .logo img{width:100px}html:not(.js) .header{position:relative;height:auto;min-height:100px;flex-wrap:wrap;gap:10px;padding-top:15px;padding-bottom:15px}html:not(.js) .nav-contact{padding:0 10px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}.reveal{opacity:1!important;transform:none!important}.hero-art{transform:none!important}}
.gallery-heading{margin-top:55px;margin-bottom:22px}.work-rail{display:grid;grid-auto-flow:column;grid-auto-columns:340px;gap:24px;overflow-x:auto;padding:8px 4px 28px;scroll-snap-type:x proximity;overscroll-behavior-x:contain;scrollbar-color:#75669b #19191d}.portfolio-rail{grid-auto-columns:min(720px,78vw)}.work-card{min-width:0;scroll-snap-align:start}.work-open{display:block;position:relative;width:100%;padding:0;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:var(--panel);color:var(--text)}.work-open img{display:block;width:100%;height:auto;transition:transform .5s}.social-card .work-open img{aspect-ratio:1;object-fit:cover}.work-open>span{position:absolute;right:12px;bottom:12px;background:#101012d9;border-radius:50%;width:36px;height:36px;display:grid;place-items:center}.work-caption{margin-top:18px}.work-caption h3{font-size:17px}.work-card p{font-size:12px;margin-top:6px}.clients-strip{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:26px}.ai-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ai-link{margin-top:30px;max-width:100%}.footer-links{grid-template-columns:1fr 1.5fr}dialog{width:min(1400px,96vw);max-width:96vw;max-height:94svh;padding:60px 16px 16px;background:#141218;color:var(--text);border:1px solid #514562;border-radius:12px}dialog::backdrop{background:#000e}dialog figure{margin:0;text-align:center}dialog img{display:block;max-width:100%;max-height:72svh;width:auto;height:auto;margin:auto}dialog figcaption{font-size:13px;color:var(--muted);margin-top:15px}.lightbox-close{position:absolute;right:16px;top:12px;background:var(--panel);color:var(--text);border:1px solid var(--line);border-radius:30px;padding:10px 18px;min-height:44px}.lightbox-open{overflow:hidden}@media(hover:hover){.work-open:hover img{transform:scale(1.025)}}@media(max-width:700px){.work-rail,.portfolio-rail{grid-auto-flow:row;grid-auto-columns:auto;grid-template-columns:minmax(0,1fr);overflow:visible;gap:30px}.clients-strip,.ai-grid{grid-template-columns:minmax(0,1fr)}.gallery-heading{margin-top:40px}.ai-link{font-size:12px;gap:10px}dialog{padding-left:10px;padding-right:10px}}
/* Website showcase and archive filters */
.header nav{gap:clamp(12px,1.8vw,28px)}.header-whatsapp{color:var(--accent);font-size:12px;white-space:nowrap}.mobile-whatsapp{display:none}.work-filters{display:flex;flex-wrap:wrap;gap:10px;margin-top:32px}.work-filters button{min-height:44px;padding:10px 20px;border:1px solid #51495d;border-radius:30px;background:transparent;color:var(--text)}.work-filters button[aria-pressed="true"]{background:var(--accent);color:#17141f;border-color:var(--accent)}.work-count{margin-top:15px;font-size:12px}.work-rail [data-category]{transition:opacity .22s ease,transform .22s ease}.work-rail [data-category].filter-out{opacity:0!important;transform:translateY(14px) scale(.97)!important}.site-mini{min-height:170px}.site-mini a{display:block;height:100%}.site-mini .text-link{margin-top:15px;color:var(--accent)}.website-list{display:grid;gap:100px;margin-top:65px}.website-showcase{scroll-margin-top:45px;min-width:0}.devices{position:relative;padding:0 12% 3% 0}.desktop-frame{border:9px solid #39363f;border-radius:16px;background:#26232d;box-shadow:0 25px 65px #0005;position:relative}.desktop-frame:after{content:"";position:absolute;left:-4%;right:-4%;height:14px;bottom:-20px;background:linear-gradient(#77727f,#39363f);border-radius:2px 2px 50% 50%}.device-toolbar{height:25px;padding:3px 10px;color:#92899e;font-size:10px;letter-spacing:4px}.desktop-frame img{display:block;width:100%;height:auto;aspect-ratio:1440/900;object-fit:cover;object-position:top;border-radius:3px}.phone-frame{position:absolute;right:0;bottom:0;width:22%;padding:7px;border:2px solid #67606f;background:#17151c;border-radius:28px;box-shadow:0 18px 45px #0008}.phone-frame:before{content:"";position:absolute;left:32%;right:32%;top:10px;height:9px;border-radius:10px;background:#17151c}.phone-frame img{display:block;width:100%;height:auto;aspect-ratio:390/844;object-fit:cover;object-position:top;border-radius:19px}.website-caption{display:flex;align-items:center;gap:25px;margin-top:35px}.website-caption h3{font-size:clamp(17px,2.4vw,28px);overflow-wrap:anywhere}.website-caption p{margin-top:8px;font-size:13px}.website-caption .text-link{margin-left:auto;white-space:nowrap}.confirm-tag{font-size:10px;letter-spacing:.08em;border:1px solid #686071;border-radius:20px;padding:7px 12px;white-space:nowrap;color:#c4bdcd}
@media(max-width:1100px) and (min-width:701px){.header nav{gap:12px}.header{padding-left:24px;padding-right:24px}.header nav a{font-size:11px}.nav-contact{padding:0 12px;gap:10px}}
@media(max-width:700px){.header .header-whatsapp{display:none}.mobile-whatsapp{position:fixed;bottom:max(14px,env(safe-area-inset-bottom));right:14px;z-index:35;display:flex;flex-direction:column;justify-content:center;min-height:48px;border:1px solid #8b80bb;border-radius:25px;padding:9px 16px;background:#25202f;color:#eeeaf8;box-shadow:0 5px 25px #0006;font-size:12px}.mobile-whatsapp span{font-size:10px;margin-top:3px}.menu-open .mobile-whatsapp,.lightbox-open .mobile-whatsapp{visibility:hidden}.website-list{gap:65px;margin-top:45px}.devices{padding-right:14%;padding-bottom:6%}.desktop-frame{border-width:5px;border-radius:9px}.device-toolbar{height:17px;font-size:7px;padding:2px 5px}.desktop-frame:after{height:8px;bottom:-12px}.phone-frame{width:26%;padding:4px;border-radius:16px}.phone-frame img{border-radius:10px}.phone-frame:before{top:7px;height:5px}.website-caption{flex-wrap:wrap;gap:14px;margin-top:24px}.website-caption>div{width:100%}.website-caption .text-link{margin-left:0}.work-filters{gap:8px}.work-filters button{padding:9px 15px}footer{padding-bottom:100px}}

/* Gallery v2 */
.gallery-controls{margin-top:32px}.gallery-controls .work-filters{margin-top:0}.client-filter{max-width:360px;margin-top:22px}.client-filter select{margin-top:10px}.work-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px 24px;margin-top:30px}.work-grid .work-open img{width:100%;height:300px;object-fit:contain;background:#19191d}.work-grid .work-caption{margin-top:12px;font-size:13px}.work-grid .work-card{min-width:0}#work-more{margin-top:36px}.clients-strip img{display:block;width:100%;height:auto}.client-walls{margin-top:60px}.website-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:65px 36px}.website-showcase:not(.compact-site){grid-column:1/-1}.compact-site .website-caption{display:block}.compact-site .website-caption h3{font-size:20px}.compact-site .text-link{margin-top:12px}.website-position{display:none}.lightbox-prev,.lightbox-next{position:absolute;top:50%;min-width:44px;min-height:44px;border:1px solid var(--line);border-radius:50%;background:#19191de8;color:white;font-size:24px}.lightbox-prev{left:12px}.lightbox-next{right:12px}
@media(max-width:1000px){.work-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:699px){.work-grid{grid-template-columns:minmax(0,1fr);gap:28px}.work-grid .work-open img{height:auto;max-height:440px;object-fit:contain}.website-list{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;gap:24px;padding:8px 0 25px;margin-top:20px;max-width:100%;scrollbar-color:#75669b #19191d}.website-showcase{flex:0 0 94%;scroll-snap-align:start}.website-caption,.compact-site .website-caption{display:block}.website-caption .text-link{margin-top:12px}.website-caption h3,.compact-site .website-caption h3{font-size:20px}.website-position{display:block;margin-top:24px;font-size:13px;color:var(--accent)}.website-showcase .devices{margin-bottom:12px}.gallery-controls{min-width:0}.client-filter{max-width:100%}}

/* Live gallery and featured clients */
.work-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.work-grid .work-open img{height:auto;max-height:none;aspect-ratio:4/5;object-fit:cover;object-position:center top}.case-study{display:grid;grid-template-columns:1fr 1.5fr;gap:50px;align-items:center;margin-top:80px}.case-study:nth-of-type(even)>div:first-child{order:2}.case-study h3{font-size:32px}.case-study p{margin-top:20px}.service-tags{display:flex;flex-wrap:wrap;gap:8px;padding:0;list-style:none;margin:22px 0}.service-tags li{font-size:11px;border:1px solid var(--line);border-radius:20px;padding:6px 12px}.case-collage{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.case-collage img{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;object-position:center top;border-radius:6px}.honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}#form-error{color:#ffb7b7;margin-bottom:20px}
@media(max-width:1000px){.work-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.case-study{gap:25px}}
@media(max-width:699px){.work-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 12px}.case-study{grid-template-columns:1fr;gap:25px}.case-study:nth-of-type(even)>div:first-child{order:0}.case-collage{grid-template-columns:repeat(3,minmax(0,1fr))}}

.whatsapp-panel{padding:clamp(24px,4vw,48px);border:1px solid rgba(255,255,255,.14);border-radius:24px;background:rgba(255,255,255,.03);display:flex;flex-direction:column;gap:16px;align-self:start}.whatsapp-panel h3{font-size:clamp(1.6rem,3vw,2.4rem);margin:0}.whatsapp-panel p{margin:0}.whatsapp-button{align-self:flex-start;background:#25D366;color:#06210f;border-color:#25D366}.contact-email{user-select:all}
.services-grid.two-up{grid-template-columns:repeat(2,minmax(0,1fr))}@media(max-width:700px){.services-grid.two-up{grid-template-columns:minmax(0,1fr)}}
