*,:after,:before{box-sizing:border-box;margin:0;padding:0}:root{--bg:#020617;--bg-elevated:#02081f;--accent:#22c55e;--accent-soft:#22c55e26;--accent-secondary:#38bdf8;--text:#e5e7eb;--muted:#9ca3af;--border-subtle:#94a3b840;--radius-lg:18px;--radius-full:999px;--shadow-soft:0 18px 60px #0f172ae6;--max-width:1120px}#root,body,html{height:100%}body{background:radial-gradient(circle at top,#020617 0,#020617 20%,#020617 60%) fixed;color:#e5e7eb;color:var(--text);font-family:system-ui,-apple-system,BlinkMacSystemFont,SF Pro Text,Inter,sans-serif}.app{background:radial-gradient(circle at top,#0b1120 0,#020617 55%,#020617 100%);min-height:100vh}main{padding-inline:1.25rem}.container{margin:0 auto;max-width:1120px;max-width:var(--max-width)}.section{padding-block:4.5rem}.section-header{margin-bottom:2rem;text-align:left}.section-kicker{color:#38bdf8;color:var(--accent-secondary);font-size:.8rem;letter-spacing:.22em;margin-bottom:.75rem;text-transform:uppercase}.section-title{font-size:clamp(1.75rem,2.2vw,2.25rem);font-weight:600;letter-spacing:-.03em;margin-bottom:.75rem}.section-subtitle{color:#9ca3af;color:var(--muted);font-size:.95rem;max-width:34rem}.btn{align-items:center;border:1px solid #0000;border-radius:999px;cursor:pointer;display:inline-flex;font-size:.9rem;font-weight:500;gap:.45rem;padding:.7rem 1.4rem;transition:all .16s ease-out}.btn-primary{background:linear-gradient(120deg,#22c55e,#38bdf8);background:linear-gradient(120deg,var(--accent),var(--accent-secondary));box-shadow:0 14px 30px #22c55e59;color:#020617}.btn-primary:hover{box-shadow:0 18px 40px #22c55e66;transform:translateY(-1px)}.btn-ghost{background:#0f172acc;border-color:#94a3b840;border-color:var(--border-subtle);color:#e5e7eb;color:var(--text)}.btn-ghost:hover{background:#0f172af2;border-color:#38bdf8;border-color:var(--accent-secondary)}.tech-marquee{background:radial-gradient(circle at top left,#38bdf80f,#0000),radial-gradient(circle at top right,#22c55e12,#0000),#0f172acc;border:1px solid #94a3b840;border:1px solid var(--border-subtle);border-radius:18px;border-radius:var(--radius-lg);box-shadow:0 18px 60px #0f172ae6;box-shadow:var(--shadow-soft);overflow:hidden;padding:1.25rem 1.5rem;position:relative}.tech-marquee:before{border:1px solid #94a3b82e;border-radius:inherit;content:"";inset:0;pointer-events:none;position:absolute}.tech-marquee-label{color:#9ca3af;color:var(--muted);font-size:.7rem;letter-spacing:.18em;margin-bottom:.75rem;text-transform:uppercase}.tech-marquee-track{animation:marquee 28s linear infinite;display:flex;gap:2.5rem;white-space:nowrap}.tech-marquee-item{align-items:center;background:#0f172aeb;border:1px solid #94a3b859;border-radius:999px;color:#9ca3af;color:var(--muted);display:inline-flex;font-size:.8rem;gap:.5rem;padding:.4rem .9rem}.tech-dot{background:radial-gradient(circle,#38bdf8,#0000);background:radial-gradient(circle,var(--accent-secondary),#0000);border-radius:999px;height:8px;width:8px}@keyframes marquee{0%{transform:translateX(0)}to{transform:translateX(-50%)}}.site-footer{background:radial-gradient(circle at bottom,#020617 0,#020617 50%,#000 100%);border-top:1px solid #0f172a;margin-top:4rem;padding:1.5rem 1.25rem 2.5rem}.site-footer-inner{align-items:center;color:#9ca3af;color:var(--muted);display:flex;flex-wrap:wrap;font-size:.8rem;gap:1.5rem;justify-content:space-between;margin:0 auto;max-width:1120px;max-width:var(--max-width)}.site-footer span strong{color:#e5e7eb;color:var(--text)}.footer-right{flex-wrap:wrap;gap:1.25rem}.footer-right,.footer-socials{align-items:center;display:flex}.footer-socials{gap:.5rem}.footer-icon{align-items:center;background:#0f172ae6;border:1px solid #94a3b873;border-radius:999px;color:#9ca3af;color:var(--muted);display:inline-flex;height:30px;justify-content:center;text-decoration:none;transition:border-color .14s ease-out,color .14s ease-out,box-shadow .14s ease-out,transform .14s ease-out,background .14s ease-out;width:30px}.footer-icon:hover{background:radial-gradient(circle at top,#38bdf829,#0f172afa);border-color:#38bdf8;border-color:var(--accent-secondary);box-shadow:0 0 18px #38bdf88c;color:#38bdf8;color:var(--accent-secondary);transform:translateY(-1px)}.navbar{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:linear-gradient(180deg,#020617f5,#020617cc,#0000);border-bottom:1px solid #0f172ae6;padding-inline:1.25rem;position:-webkit-sticky;position:sticky;top:0;z-index:20}.nav-inner{justify-content:space-between;margin:0 auto;max-width:1120px;max-width:var(--max-width);padding-block:.8rem}.nav-inner,.nav-left{align-items:center;display:flex}.nav-left{gap:.6rem}.nav-brand-block{display:flex;flex-direction:column;line-height:1.05}.brand-line{color:#9ca3af;color:var(--muted);font-size:.72rem;letter-spacing:.18em;text-transform:uppercase}.brand-line-main{color:#e5e7eb;color:var(--text);font-size:.8rem;font-weight:600}.nav-links{align-items:center;display:flex;font-size:.82rem;gap:1.25rem}.nav-link,.nav-links{color:#9ca3af;color:var(--muted)}.nav-link{border-radius:999px;cursor:pointer;padding:.35rem .9rem;position:relative;transition:background .14s ease-out,color .14s ease-out,box-shadow .14s ease-out,transform .14s ease-out}.nav-link:after{display:none}.nav-link:hover{background:radial-gradient(circle at top,#38bdf852,#0000 70%);box-shadow:0 0 16px #38bdf873;color:#e5e7eb;color:var(--text);transform:translateY(-1px)}.services-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin-top:3rem}.service-card{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0f172a80;border:1px solid #94a3b840;border:1px solid var(--border-subtle);border-radius:18px;border-radius:var(--radius-lg);cursor:pointer;overflow:hidden;padding:2rem 1.5rem;position:relative;transition:all .3s cubic-bezier(.22,1,.36,1)}.service-card:before{background:linear-gradient(135deg,#94a3b84d,#0000 60%);border-radius:inherit;content:"";inset:0;-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:0;padding:1px;pointer-events:none;position:absolute;transition:opacity .3s ease}.service-card:hover:before{opacity:1}.service-card:hover{border-color:#94a3b866;box-shadow:0 20px 40px #0f172a99}.service-card-glow{inset:0;opacity:0;pointer-events:none;position:absolute;transition:opacity .4s ease}.service-card:hover .service-card-glow{opacity:1}.service-card-shine{background:linear-gradient(45deg,#0000 30%,#ffffff08 50%,#0000 70%);height:200%;left:-50%;opacity:0;pointer-events:none;position:absolute;top:-50%;transition:opacity .5s ease;width:200%}.service-card:hover .service-card-shine{animation:shine 1.5s ease-in-out;opacity:1}@keyframes shine{0%{transform:translateX(-100%) translateY(-100%)}to{transform:translateX(100%) translateY(100%)}}.service-icon-wrapper{align-items:center;border:1px solid;border-radius:14px;display:flex;height:60px;justify-content:center;margin-bottom:1.25rem;position:relative;width:60px;z-index:1}.service-title{color:#e5e7eb;color:var(--text);font-size:1.15rem;font-weight:600;letter-spacing:-.02em;margin-bottom:.75rem;position:relative;z-index:1}.service-description{color:#9ca3af;color:var(--muted);font-size:.9rem;line-height:1.6;position:relative;z-index:1}.cta-box{align-items:center;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:radial-gradient(circle at top left,#38bdf814,#0000 60%),radial-gradient(circle at bottom right,#22c55e14,#0000 60%),#0f172a99;border:1px solid #94a3b840;border:1px solid var(--border-subtle);border-radius:18px;border-radius:var(--radius-lg);display:flex;flex-wrap:wrap;gap:2rem;justify-content:space-between;margin-top:3rem;padding:2rem 2.5rem}.case-studies-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));margin-top:3rem}.case-study-card{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0f172a80;border:1px solid #94a3b840;border:1px solid var(--border-subtle);border-radius:18px;border-radius:var(--radius-lg);cursor:pointer;overflow:hidden;position:relative;transition:all .3s cubic-bezier(.22,1,.36,1)}.case-study-card:hover{border-color:#94a3b866;box-shadow:0 24px 48px #0f172acc;transform:translateY(-8px)}.case-study-image{align-items:center;aspect-ratio:16/9;background:linear-gradient(135deg,#38bdf8,#22c55e);background:linear-gradient(135deg,var(--accent-secondary),var(--accent));display:flex;font-size:3rem;justify-content:center;object-fit:cover;opacity:.3;width:100%}.case-study-content{padding:1.75rem 1.5rem}.case-study-category{color:#38bdf8;color:var(--accent-secondary);font-size:.75rem;letter-spacing:.15em;margin-bottom:.5rem;text-transform:uppercase}.case-study-title{color:#e5e7eb;color:var(--text);font-size:1.3rem;font-weight:600;letter-spacing:-.02em;margin-bottom:.75rem}.case-study-description{color:#9ca3af;color:var(--muted);font-size:.9rem;line-height:1.6;margin-bottom:1rem}.case-study-tags{display:flex;flex-wrap:wrap;gap:.5rem}.case-study-tag{background:#38bdf81a;border:1px solid #38bdf84d;border-radius:999px;color:#38bdf8;color:var(--accent-secondary);font-size:.75rem;padding:.35rem .75rem}.tech-filters{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:center;margin-bottom:2.5rem}.tech-filter-btn{background:#0f172a99;border:1px solid #94a3b840;border:1px solid var(--border-subtle);border-radius:999px;color:#9ca3af;color:var(--muted);cursor:pointer;font-size:.85rem;font-weight:500;padding:.6rem 1.2rem;transition:all .2s ease}.tech-filter-btn:hover{border-color:#38bdf8;border-color:var(--accent-secondary);color:#e5e7eb;color:var(--text)}.tech-filter-btn.active{background:linear-gradient(120deg,#22c55e,#38bdf8);background:linear-gradient(120deg,var(--accent),var(--accent-secondary));border-color:#0000;box-shadow:0 4px 12px #22c55e4d;color:#020617}.tech-stack-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));margin-top:2rem}.tech-stack-item{align-items:center;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0f172a80;border:1px solid #94a3b840;border:1px solid var(--border-subtle);border-radius:18px;border-radius:var(--radius-lg);cursor:pointer;display:flex;flex-direction:column;gap:.75rem;padding:1.5rem 1rem;transition:all .3s ease}.tech-stack-item:hover{border-color:#94a3b866;box-shadow:0 12px 24px #0f172a99;transform:translateY(-4px)}.tech-stack-icon{color:#38bdf8;color:var(--accent-secondary);font-size:2.5rem}.tech-stack-name{color:#e5e7eb;color:var(--text);font-size:.85rem;text-align:center}.about-grid{grid-gap:3rem;align-items:center;display:grid;gap:3rem;grid-template-columns:1fr 1fr;margin-top:3rem}.about-content h3{font-size:1.8rem;font-weight:600;letter-spacing:-.03em;margin-bottom:1rem}.about-content p{color:#9ca3af;color:var(--muted);font-size:.95rem;line-height:1.7;margin-bottom:1rem}.about-stats{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(2,1fr);margin-top:2rem}.stat-card{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0f172a80;border:1px solid #94a3b840;border:1px solid var(--border-subtle);border-radius:18px;border-radius:var(--radius-lg);padding:1.5rem}.stat-number{color:#38bdf8;color:var(--accent-secondary);font-size:2rem;font-weight:700;margin-bottom:.25rem}.stat-label{color:#9ca3af;color:var(--muted);font-size:.85rem}.about-visual{align-items:center;aspect-ratio:1;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:radial-gradient(circle at center,#38bdf826,#0000 70%),radial-gradient(circle at bottom,#22c55e1f,#0000 60%),#0f172a99;border:1px solid #94a3b840;border:1px solid var(--border-subtle);border-radius:18px;border-radius:var(--radius-lg);display:flex;justify-content:center;overflow:hidden;position:relative}.about-visual-icon{color:#38bdf8;color:var(--accent-secondary);font-size:8rem;opacity:.2}@keyframes pulse{0%,to{opacity:.3}50%{opacity:.6}}.contact-hero{margin:0 auto;max-width:900px}.contact-content{text-align:center}.contact-title{font-size:clamp(2rem,4vw,2.8rem);font-weight:600;letter-spacing:-.03em;margin-bottom:1rem}.contact-subtitle{color:#9ca3af;color:var(--muted);font-size:1rem;line-height:1.7;margin:0 auto 3rem;max-width:600px}.contact-options{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:3rem}.contact-option{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0f172a80;border:1px solid #94a3b840;border:1px solid var(--border-subtle);border-radius:18px;border-radius:var(--radius-lg);cursor:pointer;padding:2rem 1.5rem;text-align:center;transition:all .3s ease}.contact-option:hover{border-color:#94a3b866;box-shadow:0 12px 24px #0f172a99}.contact-option-icon{align-items:center;border:1px solid;border-radius:50%;display:flex;height:70px;justify-content:center;margin:0 auto 1.25rem;width:70px}.contact-option h3{color:#e5e7eb;color:var(--text);font-size:1.2rem;font-weight:600;margin-bottom:.5rem}.contact-option p{color:#9ca3af;color:var(--muted);font-size:.9rem;line-height:1.6;margin-bottom:1rem}.contact-link{color:#38bdf8;color:var(--accent-secondary);font-size:.9rem;font-weight:500;text-decoration:none;transition:color .2s ease}.contact-link:hover{color:#22c55e;color:var(--accent)}.contact-link-btn{background:#38bdf81a;border:1px solid #38bdf8;border:1px solid var(--accent-secondary);border-radius:999px;color:#38bdf8;color:var(--accent-secondary);cursor:pointer;font-size:.9rem;font-weight:500;padding:.6rem 1.5rem;transition:all .2s ease}.contact-link-btn:hover{background:#38bdf833;box-shadow:0 4px 12px #38bdf84d}.contact-cta-final{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:radial-gradient(circle at top,#38bdf81a,#0000 60%),radial-gradient(circle at bottom,#22c55e1a,#0000 60%),#0f172a99;border:1px solid #94a3b840;border:1px solid var(--border-subtle);border-radius:18px;border-radius:var(--radius-lg);padding:2.5rem 2rem;text-align:center}.contact-cta-final h3{font-size:1.8rem;font-weight:600;letter-spacing:-.02em;margin-bottom:.75rem}.contact-cta-final p{color:#9ca3af;color:var(--muted);font-size:1rem}@media (max-width:768px){.nav-links{display:none}.site-footer-inner{align-items:flex-start;flex-direction:column}.about-grid,.case-studies-grid,.services-grid{grid-template-columns:1fr}.cta-box{align-items:flex-start;flex-direction:column}}
/*# sourceMappingURL=main.f392c571.css.map*/