*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--bg:#08090f;--bg-elevated:#0d0f1a;--bg-card:#111420;--surface:#181c2e;--border:#78a0ff12;--border-hover:#78a0ff26;--text:#a8afc8;--text-muted:#5a6080;--text-heading:#e8ecf8;--accent:#7ec8f2;--accent-light:#aaddf8;--accent-glow:#7ec8f226;--logo-accent-color:#7ec8f2;--font-display:"Instrument Serif", Georgia, serif;--font-body:"Outfit", system-ui, sans-serif;--max-width:1120px;--ease:cubic-bezier(.23, 1, .32, 1)}html{scroll-behavior:smooth}body{font-family:var(--font-body);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:300;line-height:1.7;overflow-x:hidden}body:after{content:"";pointer-events:none;z-index:9999;opacity:.025;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-size:128px 128px;position:fixed;inset:0}.container{max-width:var(--max-width);margin:0 auto;padding:0 32px}.reveal{opacity:0;transition:opacity .8s var(--ease), transform .8s var(--ease);transform:translateY(32px)}.revealed{opacity:1;transform:translateY(0)}.reveal:nth-child(2){transition-delay:80ms}.reveal:nth-child(3){transition-delay:.16s}.reveal:nth-child(4){transition-delay:.24s}.header{z-index:100;border-bottom:1px solid #0000;padding:0 32px;transition:background .4s,-webkit-backdrop-filter .4s,backdrop-filter .4s,border-color .4s;position:fixed;top:0;left:0;right:0}.header--scrolled{-webkit-backdrop-filter:blur(16px);border-bottom-color:var(--border);background:#0b0b0fd9}.header-inner{max-width:var(--max-width);justify-content:space-between;align-items:center;height:72px;margin:0 auto;display:flex}.logo{font-family:var(--font-body);color:#fff;letter-spacing:-.01em;font-size:1.15rem;font-weight:500;text-decoration:none;transition:opacity .2s}.logo:hover{opacity:.85}.logo-accent{color:var(--logo-accent-color)}nav{align-items:center;gap:36px;display:flex}nav a{font-family:var(--font-body);color:var(--text-muted);letter-spacing:.04em;text-transform:uppercase;font-size:.85rem;font-weight:400;text-decoration:none;transition:color .3s}nav a:hover{color:var(--text-heading)}.nav-cta{border:1px solid color-mix(in srgb, var(--accent) 30%, transparent);border-radius:100px;padding:8px 20px;color:var(--accent)!important;transition:all .3s var(--ease)!important}.nav-cta:hover{background:color-mix(in srgb, var(--accent) 10%, transparent);border-color:var(--accent)!important;color:var(--accent-light)!important}.btn{font-family:var(--font-body);letter-spacing:.02em;transition:all .4s var(--ease);cursor:pointer;border:none;border-radius:100px;justify-content:center;align-items:center;padding:14px 36px;font-size:.9rem;font-weight:500;text-decoration:none;display:inline-flex}.btn-primary{background:var(--accent);color:#08090f}.btn-primary:hover{background:var(--accent-light);box-shadow:0 0 40px var(--accent-glow), 0 8px 32px #0006;transform:translateY(-2px)}.btn-ghost{color:var(--text);border:1px solid var(--border-hover);background:0 0}.btn-ghost:hover{border-color:var(--text-muted);color:var(--text-heading);transform:translateY(-2px)}.btn-lg{padding:18px 48px;font-size:1rem}.section-tag{font-family:var(--font-body);letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin-bottom:24px;padding-left:28px;font-size:.75rem;font-weight:500;display:inline-block;position:relative}.section-tag:before{content:"";background:var(--accent);width:16px;height:1px;position:absolute;top:50%;left:0}.section-heading{font-family:var(--font-display);color:var(--text-heading);letter-spacing:-.02em;margin-bottom:56px;font-size:clamp(2.4rem,5vw,3.6rem);font-weight:400;line-height:1.15}.section-heading em{color:var(--accent);font-style:italic}.hero{flex-direction:column;justify-content:center;min-height:100vh;padding:120px 0 80px;display:flex;position:relative;overflow:hidden}.hero-glow{background:radial-gradient(circle, color-mix(in srgb, var(--accent) 8%, transparent) 0%, color-mix(in srgb, var(--accent) 3%, transparent) 40%, transparent 70%);pointer-events:none;border-radius:50%;width:700px;height:700px;animation:12s ease-in-out infinite alternate glow-drift;position:absolute;top:-20%;right:-10%}@keyframes glow-drift{0%{transform:translate(0)scale(1)}to{transform:translate(-60px,40px)scale(1.1)}}.hero-content{z-index:1;position:relative}.hero-label{font-family:var(--font-body);letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin-bottom:32px;padding-left:28px;font-size:.8rem;font-weight:500;position:relative}.hero-label:before{content:"";background:var(--accent);width:16px;height:1px;position:absolute;top:50%;left:0}.hero-title{font-family:var(--font-display);color:var(--text-heading);letter-spacing:-.03em;margin-bottom:32px;font-size:clamp(3.2rem,8vw,6.5rem);font-weight:400;line-height:1.05}.hero-title em{color:var(--accent);font-style:italic}.hero-desc{color:var(--text);max-width:520px;margin-bottom:48px;font-size:1.15rem;line-height:1.8}.hero-actions{flex-wrap:wrap;gap:16px;display:flex}.hero-scroll-hint{position:absolute;bottom:40px;left:50%;transform:translate(-50%)}.hero-scroll-hint span{background:linear-gradient(to bottom, var(--accent), transparent);width:1px;height:48px;animation:2s ease-in-out infinite scroll-pulse;display:block}@keyframes scroll-pulse{0%,to{opacity:.3;transform-origin:top;transform:scaleY(.6)}50%{opacity:1;transform:scaleY(1)}}.section{padding:140px 0;position:relative}.section-dark{background:var(--bg-elevated)}.about-layout{grid-template-columns:200px 1fr;align-items:start;gap:48px;display:grid}.about-heading{font-family:var(--font-display);color:var(--text-heading);letter-spacing:-.02em;margin-bottom:28px;font-size:clamp(2rem,4vw,3rem);font-weight:400;line-height:1.2}.about-heading em{color:var(--accent);font-style:italic}.about-text{color:var(--text);max-width:600px;font-size:1.05rem;line-height:1.85}.tech-grid{background:var(--border);border:1px solid var(--border);border-radius:12px;grid-template-columns:repeat(3,1fr);gap:1px;display:grid;overflow:hidden}.tech-card{background:var(--bg-card);transition:background .4s var(--ease);padding:48px 36px}.tech-card:hover{background:var(--surface)}.tech-card-index{font-family:var(--font-display);color:var(--accent);opacity:.3;margin-bottom:24px;font-size:2.5rem;line-height:1}.tech-card h3{font-family:var(--font-display);color:var(--text-heading);margin-bottom:16px;font-size:1.5rem;font-weight:400}.tech-card p{color:var(--text-muted);font-size:.95rem;line-height:1.75}.services-grid{grid-template-columns:repeat(3,1fr);gap:32px;display:grid}.service-card{border:1px solid var(--border);transition:all .4s var(--ease);border-radius:12px;padding:48px 36px;position:relative;overflow:hidden}.service-card:before{content:"";background:var(--accent);transform-origin:0;height:2px;transition:transform .6s var(--ease);position:absolute;top:0;left:0;right:0;transform:scaleX(0)}.service-card:hover{border-color:var(--border-hover);background:var(--bg-elevated);transform:translateY(-4px)}.service-card:hover:before{transform:scaleX(1)}.service-icon{width:44px;height:44px;color:var(--accent);margin-bottom:28px}.service-icon svg{width:100%;height:100%}.service-card h3{font-family:var(--font-display);color:var(--text-heading);margin-bottom:14px;font-size:1.4rem;font-weight:400}.service-card p{color:var(--text-muted);font-size:.95rem;line-height:1.75}.process-timeline{max-width:700px;position:relative}.process-timeline:before{content:"";background:linear-gradient(to bottom, var(--accent), var(--border), transparent);width:1px;position:absolute;top:8px;bottom:8px;left:23px}.process-step{gap:40px;padding-bottom:56px;display:flex;position:relative}.process-step:last-child{padding-bottom:0}.process-marker{border:1px solid var(--accent);background:var(--bg-elevated);z-index:1;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;display:flex;position:relative}.process-marker span{font-family:var(--font-display);color:var(--accent);font-size:1.1rem}.process-body h3{font-family:var(--font-display);color:var(--text-heading);margin-bottom:10px;padding-top:8px;font-size:1.5rem;font-weight:400}.process-body p{color:var(--text-muted);max-width:480px;font-size:.95rem;line-height:1.75}.section-contact{text-align:center;padding:160px 0;position:relative;overflow:hidden}.contact-glow{background:radial-gradient(circle, color-mix(in srgb, var(--accent) 6%, transparent) 0%, transparent 60%);pointer-events:none;border-radius:50%;width:600px;height:600px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.contact-block{z-index:1;position:relative}.contact-heading{font-family:var(--font-display);color:var(--text-heading);letter-spacing:-.02em;margin-bottom:24px;font-size:clamp(2.8rem,6vw,4.5rem);font-weight:400;line-height:1.1}.contact-heading em{color:var(--accent);font-style:italic}.contact-desc{color:var(--text);max-width:480px;margin:0 auto 40px;font-size:1.1rem;line-height:1.8}.footer{border-top:1px solid var(--border);padding:56px 0}.footer-top{justify-content:space-between;align-items:start;margin-bottom:40px;display:flex}.footer-logo{font-family:var(--font-body);color:#fff;margin-bottom:6px;font-size:1.1rem;font-weight:500}.footer-tagline{color:var(--text-muted);font-size:.85rem}.footer-links{gap:32px;display:flex}.footer-links a{color:var(--text-muted);font-size:.85rem;text-decoration:none;transition:color .3s}.footer-links a:hover{color:var(--accent)}.footer-bottom{border-top:1px solid var(--border);padding-top:24px}.footer-bottom p{color:var(--text-muted);font-size:.8rem}.legal{padding:140px 0 100px}.legal h1{font-family:var(--font-display);color:var(--text-heading);margin-bottom:8px;font-size:2.5rem;font-weight:400}.legal .last-updated{color:var(--text-muted);margin-bottom:48px;font-size:.85rem}.legal h2{font-family:var(--font-display);color:var(--text-heading);margin-top:48px;margin-bottom:16px;font-size:1.5rem;font-weight:400}.legal p{color:var(--text);max-width:680px;margin-bottom:14px;font-size:.95rem;line-height:1.8}.legal ul{color:var(--text);max-width:680px;margin-bottom:14px;padding-left:24px;font-size:.95rem;line-height:1.8}.legal li{margin-bottom:6px}.legal a{color:var(--accent);text-decoration:none;transition:color .3s}.legal a:hover{color:var(--accent-light)}@media (width<=900px){.container,.header{padding:0 24px}.section{padding:80px 0}.about-layout{grid-template-columns:1fr;gap:16px}.tech-grid{grid-template-columns:1fr}.services-grid{grid-template-columns:1fr;gap:16px}.service-card{padding:32px 24px}.footer-top{flex-direction:column;gap:24px}.footer-links{flex-wrap:wrap;gap:20px}.section-contact{padding:100px 0}.process-timeline{max-width:100%}}@media (width<=600px){.container,.header{padding:0 20px}.header-inner{height:60px}nav a:not(.nav-cta){display:none}nav{gap:0}.nav-cta{padding:7px 16px;font-size:.78rem}.hero{min-height:auto;padding:88px 0 56px}.hero-title{margin-bottom:20px;font-size:clamp(2.2rem,11vw,3rem)}.hero-desc{margin-bottom:36px;font-size:1rem}.hero-actions{flex-direction:column;align-items:flex-start;gap:12px}.hero-actions .btn{text-align:center;justify-content:center;width:100%}.hero-scroll-hint{display:none}.section{padding:64px 0}.section-tag{margin-bottom:16px}.section-heading{margin-bottom:32px;font-size:clamp(1.8rem,8vw,2.6rem)}.about-heading{font-size:clamp(1.6rem,7vw,2.2rem)}.about-text{font-size:.95rem}.tech-card{padding:28px 20px}.tech-card-index{margin-bottom:16px;font-size:1.8rem}.service-card{padding:28px 20px}.service-icon{width:36px;height:36px;margin-bottom:20px}.process-step{gap:20px;padding-bottom:36px}.process-marker{flex-shrink:0;width:40px;height:40px}.process-marker span{font-size:.95rem}.process-timeline:before{left:19px}.process-body h3{padding-top:6px;font-size:1.25rem}.section-contact{padding:80px 0}.contact-heading{font-size:clamp(2rem,9vw,3rem)}.contact-desc{font-size:.95rem}.btn-lg{text-align:center;justify-content:center;width:100%;padding:16px 28px;font-size:.9rem}.footer{padding:40px 0}.footer-links{flex-direction:column;align-items:flex-start;gap:12px}.legal{padding:88px 0 64px}.legal h1{font-size:1.9rem}.palette-picker{padding:12px 16px;bottom:16px;right:16px}}.palette-picker{z-index:9000;-webkit-backdrop-filter:blur(12px);background:#0d0f1aeb;border:1px solid #78a0ff26;border-radius:14px;flex-direction:column;gap:10px;min-width:140px;padding:16px 20px;display:flex;position:fixed;bottom:28px;right:28px}.palette-label{font-family:var(--font-body);letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);font-size:.7rem;font-weight:500}.palette-swatches{gap:8px;display:flex}.palette-swatch{cursor:pointer;border:2px solid #0000;border-radius:50%;outline:none;width:22px;height:22px;transition:transform .2s,border-color .2s}.palette-swatch:hover{transform:scale(1.15)}.palette-swatch--active{border-color:#fff;transform:scale(1.15)}.palette-active-label{font-family:var(--font-body);color:var(--accent);font-size:.78rem;font-weight:500}
