@keyframes float{0%,to{transform:translate(0,0) scale(1)}25%{transform:translate(30px,-30px) scale(1.05)}50%{transform:translate(-20px,20px) scale(.95)}75%{transform:translate(20px,30px) scale(1.02)}}:root{--brand-primary:#6366f1;--brand-primary-light:#818cf8;--brand-primary-dark:#4f46e5;--brand-primary-rgb:99, 102, 241;--brand-secondary:#0d9488;--brand-secondary-light:#14b8a6;--brand-secondary-dark:#0f766e;--brand-accent:#f59e0b;--bg:#f8fafc;--bg-elevated:#ffffff;--bg-subtle:#f1f5f9;--ink:#0f172a;--ink-secondary:#334155;--ink-muted:#64748b;--ink-subtle:#94a3b8;--border:#e2e8f0;--border-strong:#cbd5e1;--font-sans:system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;--text-xs:0.75rem;--text-sm:0.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:clamp(1.25rem, 1.1rem + 0.5vw, 1.5rem);--text-3xl:clamp(1.5rem, 1.2rem + 1vw, 2rem);--text-4xl:clamp(2rem, 1.5rem + 1.5vw, 2.75rem);--text-5xl:clamp(2.5rem, 1.75rem + 2.5vw, 3.5rem);--leading-none:1;--leading-tight:1.25;--leading-snug:1.375;--leading-normal:1.5;--leading-relaxed:1.625;--tracking-tight:-0.025em;--tracking-normal:0;--tracking-wide:0.025em;--space-1:0.25rem;--space-2:0.5rem;--space-3:0.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--space-20:5rem;--space-24:6rem;--container-max:1200px;--container-padding:clamp(1rem, 3vw, 2rem);--header-height:72px;--shadow-xs:0 1px 2px 0 rgb(0 0 0 / 0.05);--shadow-sm:0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);--shadow-md:0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);--shadow-lg:0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);--shadow-xl:0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);--shadow-glow:0 0 20px rgb(var(--brand-primary-rgb) / 0.3);--radius-sm:0.375rem;--radius-md:0.5rem;--radius-lg:0.75rem;--radius-xl:1rem;--radius-full:9999px;--duration-fast:150ms;--duration-normal:200ms;--duration-slow:300ms;--ease-out:cubic-bezier(0.16, 1, 0.3, 1);--ease-in-out:cubic-bezier(0.4, 0, 0.2, 1)}*,::after,::before{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;scroll-padding-top:var(--header-height);-webkit-text-size-adjust:100%}body{font-family:var(--font-sans);font-size:var(--text-base);line-height:var(--leading-relaxed);color:var(--ink);background-color:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}img,svg{display:block;max-width:100%;height:auto}a{color:var(--brand-primary);text-decoration:none;transition:color var(--duration-fast) var(--ease-out)}a:hover{color:var(--brand-primary-dark)}ol,ul{list-style:none}button{font:inherit;color:inherit;background:0 0;border:0;cursor:pointer}::selection{background-color:rgb(var(--brand-primary-rgb)/.2);color:var(--ink)}.container{width:100%;max-width:var(--container-max);margin-inline:auto;padding-inline:var(--container-padding)}.section{padding-block:var(--space-20)}@media (min-width:768px){.section{padding-block:var(--space-24)}}.header{position:fixed;inset-inline:0;top:0;height:var(--header-height);background:rgb(255 255 255/.95);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--border);z-index:1000;transition:box-shadow var(--duration-normal) var(--ease-out)}.header.scrolled{box-shadow:var(--shadow-md)}.nav,.nav-logo{display:flex;align-items:center}.nav{justify-content:space-between;height:100%}.nav-logo{transition:opacity var(--duration-fast) var(--ease-out)}.case-study a:hover,.nav-logo:hover{opacity:.8}.nav-logo img{height:36px;width:auto}.nav-menu{display:flex;gap:var(--space-8)}.nav-link{position:relative;display:inline-flex;align-items:center;padding-block:var(--space-2);font-size:var(--text-sm);font-weight:500;color:var(--ink-secondary);letter-spacing:var(--tracking-wide);transition:color var(--duration-fast) var(--ease-out)}.nav-link::after{content:"";position:absolute;inset-inline:0;bottom:-2px;height:2px;background:var(--brand-primary);border-radius:var(--radius-full);transform:scaleX(0);transform-origin:center;transition:transform var(--duration-normal) var(--ease-out)}.nav-link.active,.nav-link:focus-visible,.nav-link:hover{color:var(--brand-primary)}.nav-link.active::after,.nav-link:focus-visible::after,.nav-link:hover::after{transform:scaleX(1)}.nav-toggle{display:none;position:relative;width:44px;height:44px;align-items:center;justify-content:center;border-radius:var(--radius-md);transition:background var(--duration-fast) var(--ease-out)}.nav-toggle:hover{background:var(--bg-subtle)}.hamburger,.hamburger::after,.hamburger::before{width:22px;height:2px;background:var(--ink);border-radius:var(--radius-full);transition:transform var(--duration-normal) var(--ease-out),opacity var(--duration-fast) var(--ease-out)}.hamburger{position:relative}.hamburger::after,.hamburger::before{content:"";position:absolute;left:0}.hamburger::before{top:-6px}.hamburger::after{top:6px}.nav-toggle[aria-expanded=true] .hamburger{background:0 0}.nav-toggle[aria-expanded=true] .hamburger::before{transform:rotate(45deg) translate(4px,4px)}.nav-toggle[aria-expanded=true] .hamburger::after{transform:rotate(-45deg) translate(4px,-4px)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-6);font-family:inherit;font-size:var(--text-sm);font-weight:600;line-height:var(--leading-tight);letter-spacing:var(--tracking-wide);text-align:center;white-space:nowrap;border:2px solid transparent;border-radius:var(--radius-md);cursor:pointer;transition:all var(--duration-normal) var(--ease-out);-webkit-tap-highlight-color:transparent}.btn:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.btn-icon{flex-shrink:0;transition:transform var(--duration-normal) var(--ease-out)}.btn:hover .btn-icon{transform:translateX(4px)}.btn-primary,.btn-secondary{border-color:var(--brand-primary)}.btn-primary{background:var(--brand-primary);color:#fff;box-shadow:var(--shadow-sm),0 0 0 0 rgb(var(--brand-primary-rgb)/.4)}.btn-primary:hover{background:var(--brand-primary-dark);border-color:var(--brand-primary-dark);box-shadow:var(--shadow-md),0 0 0 4px rgb(var(--brand-primary-rgb)/.15);transform:translateY(-1px)}.btn-primary:active{transform:translateY(0)}.btn-secondary{background:0 0;color:var(--brand-primary)}.btn-secondary:hover{background:rgb(var(--brand-primary-rgb)/.08);border-color:var(--brand-primary-dark);color:var(--brand-primary-dark)}.hero{position:relative;min-height:100vh;min-height:100dvh;display:flex;align-items:center;padding-top:var(--header-height);background:linear-gradient(145deg,var(--bg) 0%,#e0e7ff 50%,#c7d2fe 100%);overflow:hidden}.hero .container{position:relative;z-index:1}.hero-content{text-align:center;max-width:800px;margin-inline:auto}.hero-title{margin-bottom:var(--space-6);font-size:var(--text-5xl);font-weight:800;line-height:var(--leading-tight);letter-spacing:var(--tracking-tight);color:var(--ink)}.hero-title-line{display:block}.hero-title-accent{background:linear-gradient(135deg,var(--brand-primary) 0%,var(--brand-secondary) 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.hero-subtitle{max-width:560px;margin-inline:auto;margin-bottom:var(--space-10);font-size:var(--text-xl);line-height:var(--leading-relaxed);color:var(--ink-secondary)}.hero-cta{display:flex;flex-wrap:wrap;gap:var(--space-4);justify-content:center}.hero-decoration{position:absolute;inset:0;overflow:hidden;pointer-events:none}.case-study::before,.hero-shape{position:absolute;border-radius:50%}.hero-shape{opacity:.4;filter:blur(60px)}.hero-shape-1{width:600px;height:600px;background:rgb(var(--brand-primary-rgb)/.3);top:-200px;right:-150px;animation:float 20s ease-in-out infinite}.hero-shape-2{width:400px;height:400px;background:rgb(13 148 136/.25);bottom:-100px;left:-100px;animation:float 25s ease-in-out infinite reverse}.hero-shape-3{width:300px;height:300px;background:rgb(var(--brand-primary-rgb)/.2);top:40%;left:20%;animation:float 30s ease-in-out infinite 5s}.section-header{text-align:center;margin-bottom:var(--space-12)}.section-title{margin-bottom:var(--space-4);font-size:var(--text-4xl);font-weight:700;line-height:var(--leading-tight);letter-spacing:var(--tracking-tight);color:var(--ink)}.section-subtitle{font-size:var(--text-xl);font-weight:500;color:var(--brand-secondary);margin-bottom:var(--space-8)}.section-description{max-width:640px;margin-inline:auto;font-size:var(--text-lg);line-height:var(--leading-relaxed);color:var(--ink-secondary)}.about{background:var(--bg-elevated)}.capabilities-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--space-6)}.capability-card{position:relative;padding:var(--space-8);background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-xl);text-align:center;transition:transform var(--duration-normal) var(--ease-out),box-shadow var(--duration-normal) var(--ease-out),border-color var(--duration-normal) var(--ease-out)}.capability-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:rgb(var(--brand-primary-rgb)/.2)}.capability-icon{display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;margin-bottom:var(--space-5);background:linear-gradient(135deg,var(--brand-primary) 0%,var(--brand-secondary) 100%);border-radius:var(--radius-lg);color:#fff;box-shadow:var(--shadow-md)}.capability-title{margin-bottom:var(--space-3);font-size:var(--text-lg);font-weight:600;color:var(--ink)}.capability-text{font-size:var(--text-base);line-height:var(--leading-relaxed);color:var(--ink-secondary)}.products{background:var(--bg)}.product-content{max-width:1000px;margin-inline:auto}.product-description{text-align:center;margin-bottom:var(--space-10)}.feature-item p,.product-description>p{line-height:var(--leading-relaxed);color:var(--ink-secondary)}.product-description>p{max-width:700px;margin-inline:auto;margin-bottom:var(--space-6);font-size:var(--text-lg)}.compliance-badges{display:flex;flex-wrap:wrap;gap:var(--space-3);justify-content:center}.compliance-badges li{display:contents}.badge,.case-study-highlights li{align-items:center;font-size:var(--text-sm)}.badge{display:inline-flex;gap:var(--space-2);padding:var(--space-2) var(--space-4);font-weight:600;border-radius:var(--radius-full);transition:transform var(--duration-fast) var(--ease-out)}.badge:hover{transform:scale(1.05)}.badge-hipaa{background:#dcfce7;color:#166534}.badge-pdpa{background:#dbeafe;color:#1e40af}.badge-ai{background:#fef3c7;color:#92400e}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--space-5)}.feature-item{position:relative;padding:var(--space-6);background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-lg);transition:border-color var(--duration-normal) var(--ease-out),box-shadow var(--duration-normal) var(--ease-out)}.feature-item:hover,.service-item:hover{border-color:rgb(var(--brand-primary-rgb)/.3);box-shadow:var(--shadow-md)}.feature-icon{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;margin-bottom:var(--space-4);background:rgb(var(--brand-primary-rgb)/.1);border-radius:var(--radius-md);color:var(--brand-primary)}.feature-item h4,.service-item h4{margin-bottom:var(--space-2);font-size:var(--text-base);font-weight:600;color:var(--ink)}.feature-item p{font-size:var(--text-sm)}.services{background:var(--bg-elevated)}.case-study{position:relative;padding:var(--space-10);margin-bottom:var(--space-10);background:linear-gradient(135deg,var(--brand-primary) 0%,var(--brand-secondary) 100%);border-radius:var(--radius-xl);color:#fff;overflow:hidden}.case-study::before{content:"";top:-50%;right:-20%;width:60%;height:200%;background:rgb(255 255 255/.05);pointer-events:none}.case-study-content{position:relative;z-index:1}.case-study-label,.case-study-title{margin-bottom:var(--space-4);font-weight:700}.case-study-label{display:inline-block;padding:var(--space-1) var(--space-3);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.1em;background:rgb(255 255 255/.2);border-radius:var(--radius-full)}.case-study-title{font-size:var(--text-3xl)}.case-study a,.social-link img{transition:opacity var(--duration-fast) var(--ease-out)}.case-study a{color:inherit;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:3px}.case-study-text,.service-item p{line-height:var(--leading-relaxed)}.case-study-text{max-width:640px;margin-bottom:var(--space-6);font-size:var(--text-lg);opacity:.95}.case-study-highlights{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-3)}.case-study-highlights li{display:flex;gap:var(--space-3);font-weight:500}.case-study-highlights li::before{content:"";flex-shrink:0;width:20px;height:20px;background:rgb(255 255 255/.25);border-radius:50%;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:center}.services-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--space-6)}.service-item{padding:var(--space-6);background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-lg);transition:border-color var(--duration-normal) var(--ease-out),box-shadow var(--duration-normal) var(--ease-out),transform var(--duration-normal) var(--ease-out)}.service-item:hover{transform:translateY(-2px);border-color:rgb(var(--brand-primary-rgb)/.2)}.service-icon{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;margin-bottom:var(--space-4);background:rgb(var(--brand-primary-rgb)/.1);border-radius:var(--radius-md);color:var(--brand-primary)}.service-item h4{font-size:var(--text-lg)}.service-item p{font-size:var(--text-base);color:var(--ink-secondary)}.contact{background:var(--bg)}.contact-content{display:flex;flex-direction:column;align-items:center;gap:var(--space-8)}.contact-email{display:inline-flex;align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-8);font-size:var(--text-xl);font-weight:600;color:var(--brand-primary);background:var(--bg-elevated);border:2px solid var(--border);border-radius:var(--radius-xl);transition:all var(--duration-normal) var(--ease-out)}.contact-email:hover,.social-link:hover{color:var(--brand-primary-dark);border-color:var(--brand-primary);box-shadow:var(--shadow-lg);transform:translateY(-2px)}.contact-email svg{flex-shrink:0;color:var(--brand-primary)}.social-links{display:flex;flex-wrap:wrap;gap:var(--space-4);justify-content:center}.footer-social a,.social-link{display:inline-flex;align-items:center;border-radius:var(--radius-md);transition:all var(--duration-normal) var(--ease-out)}.social-link{gap:var(--space-3);padding:var(--space-3) var(--space-5);font-size:var(--text-sm);font-weight:500;color:var(--ink-secondary);background:var(--bg-elevated);border:1px solid var(--border)}.social-link:hover{color:var(--brand-primary);background:rgb(var(--brand-primary-rgb)/.05);box-shadow:var(--shadow-sm)}.social-link img{width:20px;height:20px;opacity:.7}.footer-social a:hover img,.social-link:hover img{opacity:1}.footer{padding-block:var(--space-8);background:var(--ink);color:#fff}.footer-content{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:var(--space-4)}.copyright{font-size:var(--text-sm);color:var(--ink-subtle)}.footer-social{display:flex;gap:var(--space-3)}.footer-social a{justify-content:center;width:40px;height:40px;background:rgb(255 255 255/.1)}.footer-social a:hover{background:rgb(255 255 255/.2);transform:translateY(-2px)}.footer-social img{width:18px;height:18px;filter:brightness(0) invert(1);opacity:.8}@media (max-width:1024px){.case-study{padding:var(--space-8)}}@media (max-width:768px){.nav-toggle{display:flex}.nav-link,.nav-menu{padding:var(--space-4)}.nav-menu{position:fixed;top:var(--header-height);inset-inline:0;background:var(--bg-elevated);flex-direction:column;gap:0;border-bottom:1px solid var(--border);box-shadow:var(--shadow-lg);transform:translateY(-100%);opacity:0;visibility:hidden;transition:transform var(--duration-slow) var(--ease-out),opacity var(--duration-normal) var(--ease-out),visibility var(--duration-normal)}.nav-menu.open{transform:translateY(0);opacity:1;visibility:visible}.nav-link{display:flex;font-size:var(--text-base);border-radius:var(--radius-md);transition:background var(--duration-fast) var(--ease-out)}.nav-link:hover{background:var(--bg-subtle)}.nav-link::after{display:none}.hero{min-height:auto;padding-block:calc(var(--header-height) + var(--space-12)) var(--space-16)}.hero-cta{flex-direction:column;width:100%;max-width:320px;margin-inline:auto}.btn{width:100%;padding:var(--space-4) var(--space-6)}.case-study{padding:var(--space-6)}.footer-content{flex-direction:column;text-align:center}}@media (max-width:480px){.compliance-badges{flex-direction:column;align-items:center}.social-links{flex-direction:column;width:100%;max-width:280px}.contact-email,.social-link{justify-content:center;width:100%}.contact-email{padding:var(--space-4) var(--space-5);font-size:var(--text-lg)}}@media (prefers-reduced-motion:reduce){*,::after,::before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.hero-shape{animation:none}}:focus{outline:0}:focus-visible{outline:2px solid var(--brand-primary);outline-offset:3px}@media (prefers-contrast:more){:root{--border:#64748b;--ink-secondary:#1e293b}.btn-secondary{border-width:3px}}.skip-link{position:fixed;top:var(--space-4);left:50%;transform:translateX(-50%) translateY(-200%);padding:var(--space-3) var(--space-6);font-size:var(--text-sm);font-weight:600;color:#fff;background:var(--brand-primary);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);z-index:9999;transition:transform var(--duration-normal) var(--ease-out)}.skip-link:focus{transform:translateX(-50%) translateY(0);color:#fff}.animate-on-scroll{opacity:0;transform:translateY(20px);transition:opacity var(--duration-slow) var(--ease-out),transform var(--duration-slow) var(--ease-out)}.animate-on-scroll.is-visible{opacity:1;transform:translateY(0)}.capabilities-grid .animate-on-scroll:nth-child(1){transition-delay:0ms}.capabilities-grid .animate-on-scroll:nth-child(2){transition-delay:100ms}.capabilities-grid .animate-on-scroll:nth-child(3){transition-delay:200ms}.features-grid .animate-on-scroll:nth-child(1){transition-delay:0ms}.features-grid .animate-on-scroll:nth-child(2){transition-delay:50ms}.features-grid .animate-on-scroll:nth-child(3){transition-delay:100ms}.features-grid .animate-on-scroll:nth-child(4){transition-delay:150ms}.features-grid .animate-on-scroll:nth-child(5){transition-delay:200ms}.features-grid .animate-on-scroll:nth-child(6){transition-delay:250ms}.services-list .animate-on-scroll:nth-child(1){transition-delay:0ms}.services-list .animate-on-scroll:nth-child(2){transition-delay:100ms}.services-list .animate-on-scroll:nth-child(3){transition-delay:200ms}@media print{.header,.hero-decoration,.nav-toggle,.skip-link{display:none!important}.hero{min-height:auto;padding-top:0}.section{padding-block:var(--space-8)}body{font-size:12pt;line-height:1.5;background:#fff}.btn,a,body{color:#000}a{text-decoration:underline}.btn{border:1px solid #000;background:0 0}}