:root{--bg: #08091a;--bg-alt: #0e1028;--surface: #111328;--surface-raised:#181a35;--border: rgba(255, 255, 255, .08);--border-hover: rgba(106, 160, 255, .28);--blue-100: #e8f0ff;--blue-300: #9dbeff;--blue-400: #6aa0ff;--blue-500: #3f74ea;--blue-600: #2957cc;--text-primary: #f0f3ff;--text-secondary: #8b92b8;--text-muted: #5a607a;--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-display: "DM Sans", "Inter", -apple-system, sans-serif;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.5rem;--space-6: 2rem;--space-7: 3rem;--space-8: 4rem;--space-9: 6rem;--container-max: 1100px;--container-pad: clamp(1.25rem, 5vw, 3rem);--header-h: 64px;--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-in-out: cubic-bezier(.4, 0, .2, 1)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{font-family:var(--font-sans);background-color:var(--bg);color:var(--text-primary);line-height:1.7;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}img,svg{display:block}button,input,textarea,select{font:inherit}a{color:inherit}::selection{background:var(--blue-500);color:#fff}.container{width:100%;max-width:var(--container-max);margin-inline:auto;padding-inline:var(--container-pad)}.section{padding-block:clamp(5rem,10vw,8rem);position:relative}.section-alt{background-color:var(--bg-alt)}.skip-link{position:fixed;top:var(--space-4);left:var(--space-4);z-index:9999;padding:var(--space-2) var(--space-4);background:var(--blue-400);color:#000;font-weight:600;border-radius:6px;text-decoration:none;transform:translateY(-200%);transition:transform .2s var(--ease-out)}.skip-link:focus{transform:translateY(0)}.site-header{position:sticky;top:0;z-index:100;height:var(--header-h);background:#08091ad9;backdrop-filter:blur(16px) saturate(180%);-webkit-backdrop-filter:blur(16px) saturate(180%);border-bottom:1px solid var(--border)}.header-inner{display:flex;align-items:center;justify-content:space-between;height:100%}.brand{display:flex;align-items:center;gap:var(--space-3);text-decoration:none}.brand-logo{width:32px;height:auto;flex-shrink:0}.brand-name{font-family:var(--font-display);font-size:1.125rem;font-weight:700;letter-spacing:-.01em;color:var(--text-primary)}.nav{display:flex;align-items:center;gap:var(--space-5)}.nav-link{font-size:.9375rem;font-weight:500;color:var(--text-secondary);text-decoration:none;transition:color .18s}.nav-link:hover{color:var(--text-primary)}.nav-cta{display:inline-flex;align-items:center;padding:.4rem 1rem;border:1px solid var(--border-hover);border-radius:6px;font-size:.875rem;font-weight:600;color:var(--blue-400);text-decoration:none;transition:background .18s,color .18s}.nav-cta:hover{background:#6aa0ff1a}.menu-toggle{display:none;background:none;border:none;cursor:pointer;padding:var(--space-2);color:var(--text-primary)}.hamburger,.hamburger:before,.hamburger:after{display:block;width:22px;height:2px;background:currentColor;border-radius:2px;transition:transform .2s var(--ease-out),opacity .2s}.hamburger{position:relative}.hamburger:before,.hamburger:after{content:"";position:absolute;left:0}.hamburger:before{top:-6px}.hamburger:after{top:6px}.menu-toggle[aria-expanded=true] .hamburger{background:transparent}.menu-toggle[aria-expanded=true] .hamburger:before{transform:rotate(45deg) translate(4px,4px)}.menu-toggle[aria-expanded=true] .hamburger:after{transform:rotate(-45deg) translate(4px,-4px)}.mobile-nav{display:none;flex-direction:column;background:var(--surface);border-bottom:1px solid var(--border);overflow:hidden;max-height:0;transition:max-height .3s var(--ease-out)}.mobile-nav.open{max-height:300px}.mobile-nav-link{padding:var(--space-4) var(--container-pad);font-size:1.125rem;font-weight:500;color:var(--text-primary);text-decoration:none;border-top:1px solid var(--border);transition:background .15s}.mobile-nav-link:hover{background:var(--surface-raised)}.eyebrow{font-family:var(--font-sans);font-size:.75rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--blue-400);margin-bottom:var(--space-3)}.section-header{margin-bottom:clamp(2.5rem,5vw,4rem)}.section-heading{font-family:var(--font-display);font-size:clamp(1.75rem,3.5vw,2.75rem);font-weight:700;line-height:1.2;letter-spacing:-.025em;color:var(--text-primary)}.hero-section{padding-block:clamp(6rem,14vw,10rem);overflow:hidden}.hero-bg{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse 60% 50% at 50% 0%,rgba(63,116,234,.18) 0%,transparent 70%),radial-gradient(ellipse 40% 30% at 80% 60%,rgba(106,160,255,.06) 0%,transparent 60%);pointer-events:none}.hero-inner{position:relative;max-width:860px}.hero-heading{font-family:var(--font-display);font-size:clamp(2.5rem,6vw,4.5rem);font-weight:700;line-height:1.08;letter-spacing:-.03em;margin-bottom:var(--space-5);color:var(--text-primary)}.eyebrow-tagline{font-family:var(--font-display);font-size:clamp(1rem,2vw,1.25rem);font-weight:600;color:var(--blue-300);letter-spacing:-.01em;margin-bottom:var(--space-4)}.hero-subtext{font-size:clamp(1rem,1.8vw,1.2rem);color:var(--text-secondary);max-width:54ch;margin-bottom:var(--space-7);line-height:1.65}.btn-group{display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:center}.btn{display:inline-flex;align-items:center;justify-content:center;padding:.7rem 1.5rem;border-radius:8px;font-weight:600;font-size:.9375rem;text-decoration:none;border:1px solid transparent;cursor:pointer;transition:opacity .18s,background .18s,border-color .18s;white-space:nowrap}.btn-primary{background:var(--blue-400);color:#05060f;border-color:var(--blue-400)}.btn-primary:hover{opacity:.88}.btn-ghost{background:transparent;color:var(--text-secondary);border-color:transparent;padding-inline:0}.btn-ghost:hover{color:var(--text-primary)}.about-body{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-8) var(--space-9);align-items:start}.about-text p{color:var(--text-secondary);font-size:1.05rem;line-height:1.75;margin-bottom:var(--space-4)}.about-text p:last-child{margin-bottom:0}.about-values{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-5)}.value-item{padding:var(--space-5);background:var(--surface);border:1px solid var(--border);border-radius:12px}.value-title{font-family:var(--font-display);font-size:.9375rem;font-weight:600;margin-bottom:var(--space-2);color:var(--text-primary)}.value-body{font-size:.875rem;color:var(--text-secondary);line-height:1.65}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-4)}.service-card{padding:var(--space-6);background:var(--surface);border:1px solid var(--border);border-radius:12px;transition:border-color .2s,transform .2s var(--ease-out)}.service-card:hover{border-color:var(--border-hover);transform:translateY(-5px);box-shadow:0 12px 32px #3f74ea1f}.service-icon{width:40px;height:40px;color:var(--blue-400);margin-bottom:var(--space-4)}.service-icon svg{width:100%;height:100%}.service-title{font-family:var(--font-display);font-size:1.0625rem;font-weight:600;margin-bottom:var(--space-3);color:var(--text-primary)}.service-body{font-size:.9rem;color:var(--text-secondary);line-height:1.7}.contact-layout{display:grid;grid-template-columns:1fr 1.5fr;gap:var(--space-8) var(--space-9);align-items:start}.contact-lead{font-size:1.05rem;color:var(--text-primary);line-height:1.7;margin-bottom:var(--space-4)}.contact-info p{font-size:.9rem;color:var(--text-secondary);margin-bottom:var(--space-4)}.contact-email{display:inline-block;color:var(--blue-400);font-size:1rem;font-weight:500;text-decoration:none;transition:opacity .18s}.contact-email:hover{opacity:.75}.contact-form{display:flex;flex-direction:column;gap:var(--space-4)}.field{display:flex;flex-direction:column;gap:var(--space-2)}.field-label{font-size:.8125rem;font-weight:500;color:var(--text-secondary);letter-spacing:.02em}.field-input{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:.65rem 1rem;color:var(--text-primary);font-size:.9375rem;line-height:1.5;width:100%;outline:none;transition:border-color .18s;resize:vertical}.field-input:focus{border-color:var(--blue-500)}.field-input::placeholder{color:var(--text-muted)}.field-input[aria-invalid=true]{border-color:#e67c7c;box-shadow:0 0 0 1px #e67c7c26}.field-error{font-size:.8125rem;color:#f0a4a4;min-height:1.2em}.form-feedback{font-size:.875rem;color:#4fda97;min-height:1.2em;margin-top:calc(-1 * var(--space-2))}.site-footer{border-top:1px solid var(--border);padding-block:clamp(2rem,4vw,2.5rem)}.footer-inner{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--space-4)}.footer-brand{display:flex;align-items:center;gap:var(--space-3)}.footer-brand img{opacity:.6}.footer-name{font-family:var(--font-display);font-size:.9375rem;font-weight:600;color:var(--text-muted)}.footer-copy{font-size:.8125rem;color:var(--text-muted)}.footer-nav{display:flex;gap:var(--space-5)}.footer-link{font-size:.8125rem;color:var(--text-muted);text-decoration:none;transition:color .18s}.footer-link:hover{color:var(--text-secondary)}@keyframes fade-up{0%{opacity:0;transform:translateY(28px)}to{opacity:1;transform:none}}@keyframes fade-in-scale{0%{opacity:0;transform:scale(.96) translateY(16px)}to{opacity:1;transform:none}}.reveal{opacity:0}.reveal.visible{animation:fade-up .65s var(--ease-out) both}.service-card.reveal.visible{animation:fade-in-scale .65s var(--ease-out) both}.value-item.reveal.visible{animation:fade-in-scale .6s var(--ease-out) both}@media(max-width:900px){.services-grid{grid-template-columns:repeat(2,1fr)}.about-body,.contact-layout{grid-template-columns:1fr;gap:var(--space-7)}}@media(max-width:640px){.nav{display:none}.menu-toggle,.mobile-nav{display:flex}.hero-section{padding-block:clamp(4rem,10vw,6rem)}.hero-heading{font-size:clamp(2rem,8vw,2.8rem);letter-spacing:-.02em}.hero-subtext{font-size:1rem}.btn-group{flex-direction:column;align-items:flex-start}.services-grid,.about-values{grid-template-columns:1fr}.service-card{padding:var(--space-5)}.section-heading{font-size:clamp(1.5rem,6vw,2rem)}.footer-inner{flex-direction:column;align-items:flex-start;gap:var(--space-3)}.footer-nav{flex-wrap:wrap;gap:var(--space-4)}}
