@font-face{font-family:Poppins;font-style:normal;font-weight:300;font-display:swap;src:url(../media/7e832ad540183e91-s.0pw-43bjt5~5_.woff2)format("woff2");unicode-range:U+900-97F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:Poppins;font-style:normal;font-weight:300;font-display:swap;src:url(../media/2094fb60fd9c8287-s.13c6n_dh74ayc.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Poppins;font-style:normal;font-weight:300;font-display:swap;src:url(../media/c875c6f5d3e977ac-s.p.0g_ng0t~d_b9n.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Poppins;font-style:normal;font-weight:400;font-display:swap;src:url(../media/41e95f694c5c4549-s.0r1jrq7neqdsq.woff2)format("woff2");unicode-range:U+900-97F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:Poppins;font-style:normal;font-weight:400;font-display:swap;src:url(../media/6c55a692938ebbbc-s.0g6rbszwfgn9y.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Poppins;font-style:normal;font-weight:400;font-display:swap;src:url(../media/a218039a3287bcfd-s.p.17-1enzs_j91b.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Poppins;font-style:normal;font-weight:500;font-display:swap;src:url(../media/bdc7e24a509eb931-s.0apt5mko2.qn3.woff2)format("woff2");unicode-range:U+900-97F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:Poppins;font-style:normal;font-weight:500;font-display:swap;src:url(../media/0da9c7f357bd9d4d-s.0ek5sshv8wk3m.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Poppins;font-style:normal;font-weight:500;font-display:swap;src:url(../media/8e6fa89aa22d24ec-s.p.0uvzar8hswo3p.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Poppins;font-style:normal;font-weight:600;font-display:swap;src:url(../media/0a7740363b4d4863-s.1110aazvokzp..woff2)format("woff2");unicode-range:U+900-97F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:Poppins;font-style:normal;font-weight:600;font-display:swap;src:url(../media/5f9d24ebef5d5292-s.0esuu2f5si~v8.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Poppins;font-style:normal;font-weight:600;font-display:swap;src:url(../media/e2334d715941921e-s.p.12skym0rqknxy.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Poppins;font-style:normal;font-weight:700;font-display:swap;src:url(../media/b53057dbf91a7acf-s.0carvq6u72s58.woff2)format("woff2");unicode-range:U+900-97F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:Poppins;font-style:normal;font-weight:700;font-display:swap;src:url(../media/798ea22d9983e047-s.106do9xzbuago.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Poppins;font-style:normal;font-weight:700;font-display:swap;src:url(../media/47fe1b7cd6e6ed85-s.p.0~mcdl10zdfb3.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Poppins;font-style:normal;font-weight:800;font-display:swap;src:url(../media/99ce71e74c11bc20-s.0hoqzal24odb4.woff2)format("woff2");unicode-range:U+900-97F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:Poppins;font-style:normal;font-weight:800;font-display:swap;src:url(../media/8cf1ea7b03cdeb83-s.0.56594qx.-9o.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Poppins;font-style:normal;font-weight:800;font-display:swap;src:url(../media/829ba4228c966254-s.p.0ub.k0om~_-xi.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Poppins Fallback;src:local(Arial);ascent-override:93.62%;descent-override:31.21%;line-gap-override:8.92%;size-adjust:112.16%}.poppins_228be4c4-module__yG9LXW__className{font-family:Poppins,Poppins Fallback;font-style:normal}.poppins_228be4c4-module__yG9LXW__variable{--font-poppins:"Poppins", "Poppins Fallback"}
:root{--background:#05070d;--foreground:#f2f4f8;--muted:#b5bfd2;--surface-border:#ffffff24;--accent:#8b5cf6;--accent-soft:#c4b5fd}*{box-sizing:border-box}html{data-scroll-behavior:smooth;scroll-behavior:smooth;overscroll-behavior:none}body{color:var(--foreground);background:var(--background);font-family:var(--font-poppins), Arial, Helvetica, sans-serif;min-height:100vh;margin:0;overflow-x:hidden}a{color:inherit;text-decoration:none}.site-shell{width:min(1200px,100% - 2.2rem);margin:0 auto;padding:1rem 0 0;position:relative}.hero-bg-fixed{z-index:-5;background-image:url(/hero-image.jpg);background-position:45% 10%;background-repeat:no-repeat;background-size:min(840px,72vw);position:fixed;inset:0}.hero-vignette{z-index:-4;pointer-events:none;background:radial-gradient(circle at 50% 42%,#0000000a 12%,#02050bad 74%,#03060cf5 100%);position:fixed;inset:0}.site-header{z-index:20;-webkit-backdrop-filter:none;background:0 0;border-radius:999px;justify-content:space-between;align-items:center;width:min(1200px,100% - 2.2rem);padding:.85rem 1.25rem;transition:background .25s,-webkit-backdrop-filter .25s,backdrop-filter .25s;display:flex;position:fixed;top:1rem;left:50%;transform:translate(-50%)}.site-header.is-scrolled{-webkit-backdrop-filter:blur(10px);background:#000000c6}.brand-mark{letter-spacing:-.02em;margin:0;font-size:1.35rem;font-weight:700}.header-nav{align-items:center;gap:1.5rem;display:flex}.header-nav a{color:#d8ddeb;font-size:.92rem;font-weight:500;transition:color .25s}.header-nav a:hover{color:var(--accent-soft)}.header-cta{color:#120b24;background:linear-gradient(135deg,#7c3aed 0%,#a78bfa 100%);border:1px solid #a78bfad9;border-radius:999px;padding:.68rem 1.25rem;font-size:.88rem;font-weight:700;transition:transform .2s,box-shadow .2s;animation:2.1s infinite pulseCta;box-shadow:0 0 #a78bfa80}.header-cta:hover{transform:translateY(-2px);box-shadow:0 0 24px #a78bfa73}main{padding-top:4.9rem}@keyframes pulseCta{0%{box-shadow:0 0 #a78bfa73}70%{box-shadow:0 0 0 12px #a78bfa00}to{box-shadow:0 0 #a78bfa00}}.hero-section{min-height:calc(100svh - 5.9rem);display:flex}.hero-content{width:100%;min-height:screen;grid-template-columns:1fr 1fr;align-items:center;gap:clamp(2.4rem,8vw,7rem);margin-top:10rem;display:grid}.eyebrow{letter-spacing:.11em;text-transform:uppercase;color:#d8ddeb;background:#080a1259;border:1px solid #fff3;border-radius:999px;margin:0;padding:.34rem .75rem;font-size:.75rem;display:inline-block}.hero-title{letter-spacing:-.03em;margin:1.1rem 0 0;font-size:clamp(2.5rem,7.2vw,7rem);line-height:.92}.accent-outline{color:#0000;-webkit-text-stroke:1.5px var(--accent)}.hero-right{justify-self:end;max-width:460px}.hero-right h2{margin:0;font-size:clamp(1.6rem,2.8vw,3rem);line-height:1.12}.hero-right p,.hero-copy,.section-copy{color:var(--muted);margin-top:1rem;line-height:1.75}.hero-actions{flex-wrap:wrap;gap:.85rem;margin-top:1.4rem;display:flex}.btn-primary,.btn-secondary{border-radius:999px;justify-content:center;align-items:center;margin-top:1.5rem;padding:.76rem 1.1rem;font-size:.88rem;font-weight:600;transition:transform .2s,border-color .2s,background .2s;display:inline-flex}.btn-primary{color:#120b24;background:linear-gradient(135deg,#7c3aed 0%,#a78bfa 100%)}.btn-secondary{border:1px solid var(--surface-border);color:var(--foreground);background:#ffffff0f}.btn-primary:hover,.btn-secondary:hover{transform:translateY(-2px)}.content-surface{z-index:2;margin-top:-2.2rem;padding-top:3.6rem;position:relative}.content-surface:before{content:"";z-index:-1;background:linear-gradient(180deg, #05070d00 0%, #05070dc7 10%, #05070df7 16%, var(--background) 24%);width:100vw;height:100%;position:absolute;top:0;left:50%;transform:translate(-50%)}.section{margin-top:4.2rem}.section-title{letter-spacing:-.02em;margin:1rem 0 0;font-size:clamp(1.6rem,3vw,2.5rem);line-height:1.25}.services-grid,.featured-grid,.projects-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-top:1rem;display:grid}.service-card,.featured-card,.project-card,.case-card{border:1px solid var(--surface-border);background:#ffffff08;border-radius:1rem;padding:1rem}.services-grid{gap:1.15rem;margin-top:1.3rem}.service-card{background:linear-gradient(165deg,#ffffff14 0%,#ffffff08 60%);padding:1.35rem;transition:transform .25s,border-color .25s,box-shadow .25s;position:relative;overflow:hidden}.service-card:before{content:"";pointer-events:none;background:radial-gradient(circle,#a78bfa38 0%,#a78bfa00 70%);border-radius:999px;width:108px;height:108px;position:absolute;top:-38px;right:-38px}.service-card:hover{border-color:#a78bfa7a;transform:translateY(-4px);box-shadow:0 18px 30px #0000004d}.featured-card,.project-card{flex-direction:column;gap:.75rem;display:flex}.project-card{background:linear-gradient(165deg,#ffffff17 0%,#ffffff08 56%);border-color:#a78bfa33;border-radius:1.15rem;padding:.9rem .9rem 1.1rem;transition:transform .28s,border-color .28s,box-shadow .28s;position:relative;overflow:hidden;box-shadow:0 18px 32px #00000038}.project-card:after{content:"Case Study";letter-spacing:.06em;text-transform:uppercase;color:#efe8ff;z-index:3;background:#311b6380;border:1px solid #a78bfa73;border-radius:999px;padding:.28rem .62rem;font-size:.68rem;font-weight:700;position:absolute;top:.85rem;right:.85rem}.card-link:hover .project-card{border-color:#a78bfa99;transform:translateY(-6px);box-shadow:0 24px 40px #00000052}.service-card h3,.featured-card h3,.project-card h2,.case-card h2{margin:0}.service-card h3{letter-spacing:-.01em;font-size:1.1rem}.service-card p,.featured-card p,.project-card p,.case-card p{color:var(--muted);margin:0;line-height:1.7}#contact{background:linear-gradient(170deg,#ffffff09 0%,#ffffff08 58%,#ffffff0d 100%);border:1px solid #ffffff24;border-radius:1.25rem;margin-top:4.6rem;padding:1.35rem;position:relative}.project-media{text-align:center;color:#d8def0;letter-spacing:.03em;background:#0a0e1ad9;border:1px solid #ffffff26;border-radius:.95rem;justify-content:center;align-items:center;min-height:190px;padding:0;font-weight:500;display:flex;position:relative;overflow:hidden}.project-media:after{content:"";pointer-events:none;background:linear-gradient(#08061200 45%,#08061273 100%);position:absolute;inset:0}.project-media img{object-fit:cover;object-position:top center;width:100%;height:100%;transition:transform .35s;display:block}.card-link:hover .project-media img{transform:scale(1.035)}.project-card h2{letter-spacing:-.01em;margin-top:.15rem;font-size:clamp(1.08rem,1.8vw,1.24rem);line-height:1.35}.project-card p{font-size:.93rem;line-height:1.72}.card-link{transition:transform .2s;display:block}.card-link:hover{transform:translateY(-2px)}.card-link .featured-card,.card-link .project-card{height:100%}.contact-calendly-primary{color:#120b24;background:linear-gradient(135deg,#7c3aed 0%,#a78bfa 100%);border-radius:999px;justify-content:center;align-items:center;width:fit-content;margin:1.3rem auto 1.25rem;padding:.84rem 1.35rem;font-weight:700;transition:transform .2s,box-shadow .2s;display:flex;box-shadow:0 0 24px #a78bfa4d}.contact-calendly-primary:hover{transform:translateY(-2px);box-shadow:0 10px 26px #a78bfa47}.contact-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-top:1rem;display:grid}.contact-card{color:#e1e8f8;text-align:center;background:#040a168c;border:1px solid #ffffff2e;border-radius:1rem;padding:1.05rem .85rem;font-weight:500;transition:transform .2s,border-color .2s,background .2s}.contact-card:hover{background:#080f1ed1;border-color:#a78bfa7a;transform:translateY(-3px)}.projects-hero{margin-top:0;padding-top:.4rem}.case-hero-intro{grid-template-columns:1.02fr .98fr;align-items:center;gap:1.2rem;display:grid}.case-hero-content .btn-primary{margin-top:1rem}.case-title{font-size:clamp(2.3rem,5.4vw,4.5rem);line-height:.96}.case-about{margin-top:1rem}.case-about-card{padding:1.35rem}.case-about-card h2,.case-dual-cards h2,.case-solution-card h2{margin-bottom:.7rem}.case-dual-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.case-dual-cards .case-card{padding:1.25rem}.case-hero-shot{min-height:300px}.case-solution-card{padding:1.3rem}.case-bullets{color:var(--muted);grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem 1rem;margin:1rem 0 0;padding-left:1.1rem;line-height:1.55;display:grid}.case-screenshot-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.case-screenshot-grid .project-media{min-height:290px}.case-about.section,.case-dual-cards.section,.case-screenshot-grid.section{margin-top:1.6rem}.case-hero-intro+.case-about.section{margin-top:1rem}.tech-stack-wrap{flex-wrap:wrap;gap:.6rem;margin-top:1rem;display:flex}.tech-stack-wrap span{color:#efe8ff;background:#a78bfa1f;border:1px solid #a78bfa80;border-radius:999px;padding:.45rem .85rem;font-size:.85rem;font-weight:600}.case-grid-alt{grid-template-columns:1fr 1.2fr;align-items:start;gap:1rem;display:grid}.case-media-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.site-footer{color:var(--muted);z-index:2;border-top:1px solid #ffffff1f;margin-top:2.3rem;padding:1.2rem 0 .4rem;font-size:.88rem;position:relative}.site-footer:before{content:"";background:var(--background);z-index:-1;width:100vw;height:calc(100% + 4rem);position:absolute;top:-2.4rem;left:50%;transform:translate(-50%)}[data-reveal]{opacity:0;transition:opacity .75s,transform .75s;transform:translateY(28px)}[data-reveal].is-visible{opacity:1;transform:translateY(0)}.parallax-shape{z-index:-3;aspect-ratio:1;filter:blur(20px);opacity:.26;will-change:transform;border-radius:999px;width:340px;position:fixed}.parallax-shape-top{background:radial-gradient(circle at 30% 30%,#a78bfa,#6d28d9);top:-2rem;right:-90px}.parallax-shape-bottom{background:radial-gradient(circle,#c4b5fd,#5b21b6);bottom:10vh;left:-95px}@media (max-width:980px){.site-header{width:min(1200px,100% - 1.2rem);padding-inline:.95rem}.header-cta{display:none}.hero-content{grid-template-columns:1fr;align-content:center;gap:1.25rem}.hero-bg-fixed{background-position:50% 18%;background-size:min(760px,92vw)}.hero-right{justify-self:start}.services-grid,.featured-grid,.projects-grid,.contact-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.case-hero-intro,.case-dual-cards,.case-bullets,.case-screenshot-grid,.case-grid-alt{grid-template-columns:1fr}}@media (max-width:680px){.site-shell{width:min(1120px,100% - 1.35rem)}.site-header{border-radius:1rem;justify-content:center;width:min(1120px,100% - 1.35rem)}.brand-mark{display:none}.header-nav{flex-wrap:wrap;justify-content:center;gap:.65rem}.header-nav a{font-size:.8rem}.hero-section{min-height:auto;padding-top:1.4rem}.hero-bg-fixed{background-position:50% 12%;background-size:cover}.services-grid,.featured-grid,.projects-grid,.contact-grid,.case-media-grid{grid-template-columns:1fr}.content-surface{margin-top:-1rem;padding-top:2.2rem}}
