@font-face{font-family:DM Sans;font-style:normal;font-weight:100 1000;font-display:swap;src:url(/fonts/dm-sans-latin-variable.woff2)format("woff2")}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(/fonts/manrope-latin-variable.woff2)format("woff2")}:root{color:#f5f4fb;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--bg:#0b0c19;--surface:#111220;--muted:#a3a3b8;--subtle:#76788f;--violet:#b399f9;--border:#ffffff12;--radius:12px;--container:1160px;background:#0b0c19;font-family:DM Sans,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{min-width:320px;margin:0}body:before{content:"";pointer-events:none;z-index:-1;background:radial-gradient(at 77% 37%,#5f3e9f12,#0000 52%),linear-gradient(#ffffff02 1px,#0000 1px) 0 0/80px 80px,linear-gradient(90deg,#ffffff02 1px,#0000 1px) 0 0/80px 80px;height:850px;position:absolute;inset:0 0 auto;-webkit-mask-image:linear-gradient(#000,#000 65%,#0000);mask-image:linear-gradient(#000,#000 65%,#0000)}a{color:inherit;text-decoration:none}button{font:inherit}a,button{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}a:focus-visible,button:focus-visible{outline-offset:6px;border-radius:4px;outline:2px solid #c1a8ff}::selection{color:#fff;background:#6844b6}h1,h2,h3,p{margin:0}h1,h2,h3,.wordmark{font-family:Manrope,sans-serif}.container{width:min(var(--container), calc(100% - 96px));margin-inline:auto}.icon{flex-shrink:0;width:20px;height:20px}.skip-link{z-index:20;background:#8061d5;padding:12px 20px;position:fixed;top:12px;left:12px;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.site-header{z-index:10;border-bottom:1px solid var(--border);position:relative}.header-inner{align-items:center;gap:32px;min-height:80px;display:flex;position:relative}.brand-link{align-items:center;min-height:44px;display:inline-flex}.wordmark{letter-spacing:-1px;white-space:nowrap;font-size:25px;font-weight:800}.wordmark>span{font-weight:500}.wordmark-logo{letter-spacing:-.8px;align-items:center;gap:3px;font-size:24px;line-height:1;display:inline-flex}.wordmark-logo img{flex-shrink:0;width:30px;height:32px;display:block}.wordmark-logo>span{font-weight:650}.main-navigation{flex:1;align-items:center;gap:32px;min-width:0;display:flex}.navigation-links{flex:1;justify-content:center;align-items:center;gap:28px;display:flex}.main-navigation a,.site-footer nav a{color:#b6b5c6;align-items:center;min-height:44px;font-size:13px;transition:color .16s;display:inline-flex}.main-navigation a:hover,.site-footer nav a:hover{color:#d4baff}.button{background:#ffffff02;border:1px solid #ffffff24;border-radius:7px;justify-content:center;align-items:center;gap:22px;min-height:49px;padding:0 25px;font-size:13px;font-weight:550;transition:border-color .18s,background .18s,transform .18s;display:inline-flex}.button:hover{background:#ffffff07;border-color:#ac8fda70;transform:translateY(-2px)}.button-primary{color:#fff;background:linear-gradient(115deg,#9a77e8,#7954c8);border-color:#b58aee80;box-shadow:inset 0 1px #ffffff15}.button-primary:hover{background:linear-gradient(115deg,#aa88f4,#8962d9);border-color:#c1a1f6}.button-small{gap:25px;min-height:39px;padding-inline:20px;font-size:12px}.coffee-link{color:#d1bdeb;white-space:nowrap;background:#9d72d90a;border-color:#aa91cd35;gap:8px}.coffee-link .icon{width:16px;height:16px}.main-navigation .coffee-link{color:#d1bdeb;min-height:44px;font-size:12px}.menu-toggle{display:none}.menu-chevron{transition:transform .16s}.menu-toggle[aria-expanded=true] .menu-chevron{transform:rotate(180deg)}.hero{grid-template-columns:1.02fr 1fr;align-items:center;gap:25px;min-height:665px;padding-block:66px 76px;display:grid}.pill{color:#c2afdf;letter-spacing:.2px;background:#9d72d90c;border:1px solid #b28ae92c;border-radius:50px;align-items:center;gap:9px;margin-bottom:23px;padding:7px 12px;font-size:11px;display:inline-flex}.pill>span,.art-caption>span{background:#b799eb;border-radius:50%;width:5px;height:5px}h1{letter-spacing:-5px;font-size:clamp(65px,6.8vw,90px);font-weight:750;line-height:1.06}.gradient-text{-webkit-text-fill-color:transparent;background:linear-gradient(105deg,#d7c3ff 5%,#b798ee 48%,#9066d5 100%);-webkit-background-clip:text;background-clip:text}.hero-tagline{letter-spacing:-.55px;color:#eae6f5;margin-top:25px;font-size:23px;font-weight:500;line-height:1.5}.hero-description{color:var(--muted);max-width:400px;margin-top:16px;font-size:14px;line-height:1.9}.hero-actions{flex-wrap:wrap;gap:12px;margin-top:29px;display:flex}.hero-art{isolation:isolate;width:100%;height:400px;position:relative}.art-grid{z-index:-1;background:radial-gradient(#8151c416,#0000 68%);position:absolute;inset:-20px -15px}.browser-window{border:1px solid #b6a0ef33;border-radius:10px;position:absolute;overflow:hidden;box-shadow:0 18px 60px #03031020}.window-bar{background:#caa7ff06;border-bottom:1px solid #c4a4ed18;align-items:center;gap:5px;height:30px;padding:0 12px;display:flex}.window-bar>span{background:#c9abe740;border-radius:50%;width:5px;height:5px}.window-bar>i{background:#e5cfff08;border-radius:3px;width:100px;height:7px;margin-left:12px}.window-back{opacity:.65;background:linear-gradient(135deg,#7457b11f,#1a15292b);width:67%;height:248px;top:14px;right:1%;transform:rotate(8deg)}.back-window-body{gap:10px;padding:24px;display:flex}.back-window-body>div{background:#b086df0d;border:1px solid #bb96e514;border-radius:5px;flex:1;height:130px}.window-middle{background:linear-gradient(135deg,#684b9b38,#1b172be8);width:73%;height:276px;top:55px;right:10%;transform:rotate(-7deg)}.middle-window-body{grid-template-columns:1fr 1fr;gap:15px;padding:25px;display:grid}.middle-window-body>span{background:#c3a3f00a;border:1px solid #c3a3f021;border-radius:5px;height:67px}.window-front{background:linear-gradient(125deg,#39304fef,#211a33f5 60%,#21192e);border-color:#c0a1eb55;width:77%;height:280px;top:90px;left:2%;transform:rotate(-2deg)}.front-window-body{padding:23px 28px}.art-code-icon{color:#c1a1ef;background:#ae7feb16;border:1px solid #bd97ef38;border-radius:7px;place-items:center;width:31px;height:30px;margin-bottom:17px;display:grid}.art-code-icon .icon{width:19px;height:19px}.art-heading-line{background:linear-gradient(90deg,#d7b8fba6,#c5a0ee65);border-radius:3px;width:54%;height:10px;margin-bottom:8px}.art-heading-line.short{width:39%}.art-copy-line{background:#d6c1ef28;border-radius:2px;width:70%;height:4px;margin-top:16px}.art-copy-line.shorter{width:53%;margin-top:7px}.art-button{background:linear-gradient(90deg,#a480da9c,#9464c980);border:1px solid #c29beb3b;border-radius:4px;width:61px;height:19px;margin-top:17px}.art-tiles{gap:10px;margin-top:24px;display:flex}.art-tiles>div{background:#ac86da08;border:1px solid #c9a1ed1c;border-radius:4px;flex:1;height:39px}.art-caption{color:#878094;letter-spacing:.15px;align-items:center;gap:8px;font-size:10px;display:flex;position:absolute;bottom:-12px;left:14%}.art-caption>span{opacity:.7;width:4px;height:4px}.projects-section{padding-block:20px 82px}.section-heading{justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:28px;display:flex}.eyebrow{color:#9a8eaf;letter-spacing:2px;margin-bottom:12px;font-size:10px;font-weight:600}h2{letter-spacing:-1px;font-size:30px;font-weight:650;line-height:1.3}.accent-dot{color:var(--violet)}.text-link{color:#bbb6cc;align-items:center;gap:11px;min-height:44px;font-size:12px;transition:color .16s;display:inline-flex}.text-link:hover,.project-link:hover{color:#d9c4ff}.text-link .icon{width:16px}.project-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;scroll-margin-top:25px;display:grid}.project-card{border:1px solid var(--border);border-radius:var(--radius);background:linear-gradient(130deg,#151522,#11121e);flex-direction:column;min-width:0;transition:border-color .18s,transform .18s;display:flex;overflow:hidden}.live-project:hover,.live-project:focus-within{border-color:#b297dd45}.live-project:hover{transform:translateY(-3px)}.project-preview{border-bottom:1px solid var(--border);flex-shrink:0;height:220px;position:relative;overflow:hidden}.cadence-preview{background:#0e1222}.cadence-preview img{object-fit:cover;object-position:center top;width:100%;height:100%;display:block}.upcoming-preview{background:radial-gradient(at 50% 55%,#45325b36,#0000 74%),#151321;flex-direction:column;justify-content:center;align-items:center;gap:17px;display:flex}.upcoming-2{background:radial-gradient(at 50% 55%,#32395030,#0000 74%),#121522}.upcoming-grid{opacity:.5;background-image:linear-gradient(#b99de508 1px,#0000 1px),linear-gradient(90deg,#b99de508 1px,#0000 1px);background-size:28px 28px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(#000,#0000 80%);mask-image:radial-gradient(#000,#0000 80%)}.upcoming-symbol{color:#9986b4;background:#bba6dd06;border:1px solid #b19bc227;border-radius:14px;place-items:center;width:56px;height:56px;display:grid;position:relative}.upcoming-symbol .icon{stroke-width:1.25px;width:25px;height:25px}.upcoming-preview>span{color:#9a8eaf;font-size:11px}.upcoming-2 .upcoming-symbol{color:#8d94b4;border-color:#8e99c127}.project-content{flex-direction:column;flex:1;padding:23px 23px 21px;display:flex}.project-title-row{justify-content:space-between;align-items:center;gap:9px;display:flex}h3{letter-spacing:-.5px;font-size:18px;font-weight:650}.status{color:#9f96b1;white-space:nowrap;border:1px solid #ad9cc320;border-radius:4px;align-items:center;gap:5px;padding:4px 7px;font-size:10px;display:inline-flex}.status-live{color:#9cceb3;background:#6cb98c09;border-color:#7cbd9824}.status-live>span{background:#8ec5a6;border-radius:50%;width:4px;height:4px}.project-content>p{color:var(--muted);min-height:46px;margin-top:12px;margin-bottom:11px;font-size:13px;line-height:1.9}.project-link{color:#c2b1e0;align-self:flex-start;align-items:center;gap:9px;min-height:44px;margin-top:auto;font-size:12px;transition:color .16s;display:inline-flex}.project-link .icon{width:13px;height:13px}.upcoming-note{color:var(--muted);align-items:center;min-height:44px;margin-top:auto;font-size:12px;line-height:1.8;display:flex}.about-section{border-top:1px solid var(--border);grid-template-columns:1fr 1.1fr;align-items:center;gap:80px;padding-block:63px 67px;display:grid}.about-heading h2{font-size:33px;line-height:1.4}.about-copy>p{color:#b1afc1;font-size:15px;line-height:1.95}.about-signoff{color:#9a8eaf;align-items:center;gap:10px;margin-top:21px;font-size:12px;display:inline-flex}.about-signoff .icon{width:17px;height:17px}.contact-section{padding-block:8px 79px}.contact-intro{text-align:center;margin-bottom:36px}.contact-intro h2{font-size:clamp(28px,3vw,38px);line-height:1.35}.contact-intro h2 .gradient-text{display:inline-block}.contact-intro>p:not(.eyebrow){color:var(--muted);margin-top:13px;max-width:560px;margin-inline:auto;font-size:14px;line-height:1.8}.contact-layout{grid-template-columns:minmax(0,.85fr) minmax(0,1.3fr);align-items:start;gap:26px;display:grid}.contact-details{gap:16px;display:grid}.contact-availability{border-radius:var(--radius);color:var(--muted);background:#9d72d90a;border:1px solid #aa91cd30;grid-column:1/-1;align-items:flex-start;gap:10px;padding:19px 22px;font-size:13px;line-height:1.8;display:flex}.availability-dot{background:var(--violet);border-radius:50%;flex-shrink:0;width:6px;height:6px;margin-top:9px}.contact-availability strong{color:var(--violet);font-weight:550}.contact-card,.contact-form{border-radius:var(--radius);background:linear-gradient(105deg,#231a343b,#19162645 70%,#211a3126);border:1px solid #a17eb426}.contact-card{align-items:center;gap:15px;padding:25px 22px;transition:border-color .18s,background .18s;display:flex}.contact-card:hover{background:#9d72d90b;border-color:#b297dd60}.contact-icon{width:42px;height:42px;color:var(--violet);background:#9d72d90b;border:1px solid #aa91cd30;border-radius:9px;flex-shrink:0;place-items:center;display:grid}.contact-card>span:nth-child(2){min-width:0}.contact-label{color:var(--muted);margin-bottom:7px;font-size:12px;display:block}.contact-value{overflow-wrap:anywhere;font-size:14px;line-height:1.6}.contact-card-arrow{color:#a391ba;width:15px;height:15px;margin-left:auto}.contact-form{min-width:0;padding:30px}.contact-form-description{color:var(--muted);margin-top:9px;font-size:13px;line-height:1.8}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 18px;margin-top:25px;display:grid}.form-field{flex-direction:column;gap:9px;min-width:0;display:flex}.form-field-wide{grid-column:1/-1}.form-field label{color:#d7d1e3;font-size:13px}.form-field label>span{color:var(--violet)}.form-field input,.form-field select,.form-field textarea{width:100%;min-width:0;min-height:48px;font:inherit;color:#f5f4fb;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:#0b0c1980;border:1px solid #ffffff24;border-radius:6px;padding:12px 13px;font-size:14px;line-height:1.5;transition:border-color .16s}.form-field input:hover,.form-field select:hover,.form-field textarea:hover{border-color:#aa91cd65}.form-field input:focus-visible,.form-field select:focus-visible,.form-field textarea:focus-visible{outline-offset:3px;border-color:#aa91cda0;outline:2px solid #c1a8ff}.form-field textarea{resize:vertical;min-height:145px}.contact-form-note{color:var(--muted);margin-top:20px;font-size:13px;line-height:1.8}.send-message-button{letter-spacing:.6px;text-transform:uppercase;cursor:pointer;gap:10px;width:100%;min-height:52px;margin-top:20px;font-family:inherit;font-weight:600}.site-footer{border-top:1px solid var(--border)}.footer-top{justify-content:space-between;align-items:center;gap:30px;padding-block:34px 27px;display:flex}.footer-top .wordmark{font-size:21px}.footer-top p{color:#8b889e;margin-top:5px;font-size:12px;line-height:1.8}.site-footer nav{gap:28px;display:flex}.site-footer nav a{justify-content:center;min-width:44px;font-size:13px}.footer-bottom{color:#8b889e;border-top:1px solid #ffffff08;justify-content:space-between;gap:20px;padding-block:20px 25px;font-size:12px;line-height:1.8;display:flex}@media (width>=1500px){.hero{min-height:700px}}@media (width<=1100px){.container{width:calc(100% - 64px)}.hero{gap:15px;min-height:620px}h1{font-size:76px}.hero-tagline{font-size:21px}.hero-art{height:355px}.window-back{height:218px;top:15px}.window-middle{height:240px;top:50px}.window-front{width:82%;height:250px;top:80px}.front-window-body{padding:18px 23px}.art-code-icon{margin-bottom:12px}.art-tiles{margin-top:15px}.project-grid{gap:16px}.project-preview{height:190px}.project-content{padding:20px 18px 17px}.project-title-row{flex-wrap:wrap}.about-section{gap:45px}}@media (width<=760px){.header-inner{justify-content:space-between;gap:20px;min-height:72px}.menu-toggle{color:#d7cde7;cursor:pointer;background:#9d72d90a;border:1px solid #aa91cd35;border-radius:6px;justify-content:center;align-items:center;gap:9px;min-height:44px;padding:0 13px;font-size:12px;transition:background .16s,border-color .16s;display:inline-flex}.menu-toggle:hover{background:#ffffff07;border-color:#ac8fda70}.main-navigation{z-index:1;overscroll-behavior:contain;background:#111220;border:1px solid #aa91cd35;border-radius:10px;width:min(320px,100%);max-height:calc(100dvh - 96px);margin:0;padding:8px;display:none;position:absolute;top:calc(100% + 8px);right:0;overflow-y:auto}.main-navigation.is-open{flex-direction:column;align-items:stretch;gap:8px;display:flex}.navigation-links{flex-direction:column;flex:none;align-items:stretch;gap:0}.main-navigation a{border-radius:5px;min-height:44px;padding:0 12px}.main-navigation a:hover{background:#ffffff04}.main-navigation .coffee-link:hover{transform:none}}@media (width<=960px){.contact-layout{grid-template-columns:1fr}.contact-details{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=761px) and (width<=900px){.project-title-row{flex-direction:column;align-items:flex-start;gap:8px}}@media (width<=760px){html{scroll-padding-top:26px}.container{width:calc(100% - 40px)}.wordmark{font-size:24px}.hero{grid-template-columns:1fr;gap:35px;min-height:0;padding-block:49px 65px}h1{letter-spacing:-4px;font-size:clamp(64px,13vw,86px)}.hero-description{max-width:430px;font-size:14px}.hero-tagline{font-size:23px}.hero-art{justify-self:center;width:100%;max-width:490px;height:355px;margin-top:8px}.window-back{width:66%;right:4%}.window-middle{width:71%;right:13%}.window-front{width:73%;left:5%}.art-caption{bottom:-8px;left:15%}.projects-section{padding-block:15px 52px}.section-heading{flex-wrap:wrap;align-items:flex-end;gap:4px 16px;margin-bottom:22px}h2{font-size:27px}.section-heading .text-link{gap:6px;margin-top:0;font-size:12px}.section-heading .text-link .icon{width:14px}.eyebrow{letter-spacing:1.6px}.project-grid{grid-template-columns:1fr;gap:22px}.project-preview{height:240px}.upcoming-preview{height:180px}.project-content{padding:22px 24px 18px}.project-content>p{max-width:340px;min-height:0;font-size:13px}.project-title-row{flex-wrap:nowrap}.about-section{grid-template-columns:1fr;gap:24px;padding-block:43px 44px}.about-heading h2{font-size:31px}.about-copy>p{font-size:14px}.about-signoff{margin-top:17px}.contact-section{padding-block:0 50px}.contact-intro h2{font-size:26px}.contact-details,.form-grid{grid-template-columns:1fr}.contact-layout{gap:22px}.contact-form{padding:25px 22px}.form-field input,.form-field select,.form-field textarea{font-size:16px}.footer-top{flex-direction:column;align-items:flex-start;gap:20px;padding-top:27px}.site-footer nav{flex-wrap:wrap;gap:26px}.footer-bottom{flex-direction:column;gap:10px;padding-block:21px 25px;line-height:1.5}}@media (width<=380px){.container{width:calc(100% - 32px)}h1{font-size:64px}.hero-tagline{font-size:20px}.hero-actions .button{padding-inline:20px}.hero-art{height:310px}.window-back{height:200px}.window-middle{height:215px}.window-front{width:78%;height:225px;top:70px}.front-window-body{padding:15px 18px}.art-tiles{display:none}.art-caption{font-size:8px;left:13%}.project-preview{height:210px}.upcoming-preview{height:160px}.project-content{padding-inline:20px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important}}.noscript-notice{gap:16px;padding-block:48px;line-height:1.8;display:grid}.noscript-notice h1{letter-spacing:-1px;font-size:32px}.noscript-notice a{overflow-wrap:anywhere;text-decoration:underline}
