@charset "UTF-8";:root{--brand-blue: #3a7ca5;--brand-blue-dark: #2b5e7a;--brand-blue-light: #4a8bb5;--brand-slate: #64748b;--brand-green: #10b981;--color-primary: var(--brand-blue);--color-primary-hover: var(--brand-blue-dark);--color-primary-light: var(--brand-blue-light);--color-accent: var(--brand-slate);--color-success: var(--brand-green);--color-warning: #f59e0b;--color-error: #ef4444;--steel-700: var(--color-neutral-700);--steel-900: var(--color-neutral-900);--accent-green: var(--color-success);--accent: var(--color-primary);--color-neutral-50: #f8fafc;--color-neutral-100: #f1f5f9;--color-neutral-200: #e2e8f0;--color-neutral-300: #cbd5e1;--color-neutral-400: #94a3b8;--color-neutral-500: #6c7a89;--color-neutral-600: #475569;--color-neutral-700: #37474f;--color-neutral-800: #1e293b;--color-neutral-900: #1f2933;--color-bg-primary: #ffffff;--color-bg-secondary: #f8fafc;--color-bg-card: #ffffff;--color-bg-hero-overlay: linear-gradient(rgba(58, 124, 165, .05), rgba(58, 124, 165, .02));--color-bg-section-alt: #f8fafc;--color-text-primary: var(--color-neutral-900);--color-text-secondary: var(--color-neutral-700);--color-text-muted: var(--color-neutral-500);--color-text-inverse: #ffffff;--color-text-hero: #ffffff;--color-text-link: var(--color-primary);--color-text-link-hover: var(--color-primary-hover);--font-family-primary: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.875rem;--font-size-4xl: 2.25rem;--font-size-5xl: 3.25rem;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--font-weight-extrabold: 800;--line-height-tight: 1.1;--line-height-snug: 1.25;--line-height-normal: 1.6;--line-height-relaxed: 1.75;--space-1: .25rem;--space-2: .5rem;--space-3: .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;--space-32: 8rem;--space-section: var(--space-20);--space-section-sm: var(--space-16);--space-component: var(--space-6);--space-element: var(--space-4);--radius-sm: .375rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--radius-2xl: 1.5rem;--radius-full: 9999px;--shadow-xs: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-sm: 0 1px 3px 0 rgba(0, 0, 0, .1), 0 1px 2px 0 rgba(0, 0, 0, .06);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04);--shadow-2xl: 0 25px 50px -12px rgba(0, 0, 0, .25);--shadow-inner: inset 0 2px 4px 0 rgba(0, 0, 0, .06);--shadow-brand: 0 4px 12px rgba(58, 124, 165, .15);--shadow-brand-hover: 0 6px 20px rgba(58, 124, 165, .25);--shadow-brand-focus: 0 0 0 3px rgba(58, 124, 165, .1);--max-width-container: 1200px;--max-width-content: 65ch;--header-height: 84px;--footer-height: auto;--gap-grid-sm: var(--space-4);--gap-grid-md: var(--space-6);--gap-grid-lg: var(--space-8);--transition-fast: .15s ease-out;--transition-normal: .3s ease-out;--transition-slow: .5s ease-out;--transition-colors: color .2s ease-out, background-color .2s ease-out, border-color .2s ease-out;--transition-transform: transform .3s ease-out;--transition-shadow: box-shadow .3s ease-out;--transition-all: all .3s ease-out;--duration-instant: .1s;--duration-fast: .2s;--duration-normal: .3s;--duration-slow: .5s;--z-base: 0;--z-dropdown: 1000;--z-sticky: 1020;--z-fixed: 1030;--z-modal-backdrop: 1040;--z-modal: 1050;--z-popover: 1060;--z-tooltip: 1070;--z-notification: 1080;--z-max: 2147483647;--breakpoint-xs: 480px;--breakpoint-sm: 640px;--breakpoint-md: 768px;--breakpoint-lg: 1024px;--breakpoint-xl: 1280px;--breakpoint-2xl: 1536px;--btn-padding-x: var(--space-6);--btn-padding-y: var(--space-3);--btn-font-size: var(--font-size-sm);--btn-font-weight: var(--font-weight-semibold);--btn-border-radius: var(--radius-md);--btn-min-height: 44px;--btn-transition: var(--transition-all);--card-padding: var(--space-6);--card-border-radius: var(--radius-xl);--card-border: 1px solid var(--color-neutral-200);--card-shadow: var(--shadow-lg);--card-shadow-hover: var(--shadow-2xl);--card-transition: var(--transition-all);--card-accent-height: 4px;--form-border-color: var(--color-neutral-300);--form-border-color-focus: var(--color-primary);--form-border-color-error: var(--color-error);--form-border-radius: var(--radius-md);--form-padding: var(--space-3) var(--space-4);--form-font-size: var(--font-size-base);--nav-link-padding: var(--space-2) var(--space-4);--nav-link-border-radius: var(--radius-sm);--nav-gap: var(--space-5);--nav-transition: var(--transition-colors);--grid-columns-sm: 1;--grid-columns-md: 2;--grid-columns-lg: 3;--grid-gap: var(--space-6);--grid-min-width: 280px;--icon-size-xs: 12px;--icon-size-sm: 16px;--icon-size-base: 20px;--icon-size-md: 24px;--icon-size-lg: 32px;--icon-size-xl: 48px;--loading-opacity: .7;--skeleton-base: #f0f0f0;--skeleton-highlight: #e0e0e0;--skeleton-animation-duration: 1.5s}@media (prefers-contrast: high){:root{--color-text-primary: #000000;--color-text-secondary: var(--color-neutral-900);--color-bg-primary: #ffffff;--color-primary: #0066cc;--shadow-brand-focus: 0 0 0 3px #0066cc;--card-border: 2px solid var(--color-text-primary);--form-border-color: var(--color-text-primary)}}@media (prefers-color-scheme: dark){:root{--color-bg-primary: var(--color-neutral-900);--color-bg-secondary: var(--color-neutral-800);--color-bg-card: var(--color-neutral-800);--color-text-primary: var(--color-neutral-50);--color-text-secondary: var(--color-neutral-200);--color-text-muted: var(--color-neutral-400);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .3), 0 4px 6px -2px rgba(0, 0, 0, .15);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .4), 0 10px 10px -5px rgba(0, 0, 0, .2);--shadow-2xl: 0 25px 50px -12px rgba(0, 0, 0, .5);--card-border: 1px solid var(--color-neutral-700)}}@media (prefers-reduced-motion: reduce){:root{--transition-fast: none;--transition-normal: none;--transition-slow: none;--transition-colors: none;--transition-transform: none;--transition-shadow: none;--transition-all: none;--duration-instant: .01ms;--duration-fast: .01ms;--duration-normal: .01ms;--duration-slow: .01ms;--skeleton-animation-duration: .01ms}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}:root{--hero-min-height: min(90vh, 860px);--hero-padding: var(--space-20) 0;--hero-grid-gap: var(--space-12);--hero-image-size: 420px;--feature-icon-size: 48px;--feature-icon-bg: linear-gradient(135deg, var(--color-neutral-50) 0%, var(--color-neutral-100) 100%);--feature-icon-border: 1px solid rgba(58, 124, 165, .1);--pricing-price-size: var(--font-size-4xl);--pricing-features-gap: var(--space-2);--testimonial-font-style: italic;--testimonial-cite-color: var(--color-primary);--footer-bg: linear-gradient(135deg, var(--color-neutral-900) 0%, var(--color-neutral-700) 100%);--footer-padding: var(--space-16) 0 var(--space-10);--header-bg: rgba(255, 255, 255, .95);--header-bg-scrolled: rgba(255, 255, 255, .98);--header-backdrop-filter: blur(8px);--header-border: 1px solid var(--color-neutral-200);--header-padding: var(--space-5) 0;--brand-logo-height: 44px;--brand-logo-filter: drop-shadow(0 2px 4px rgba(58, 124, 165, .15));--brand-title-size: var(--font-size-lg);--nav-link-underline-height: 2px;--nav-hover-bg: rgba(58, 124, 165, .08);--mobile-nav-bg: var(--color-bg-card);--mobile-nav-border: 1px solid var(--color-neutral-200);--mobile-nav-padding: var(--space-4);--mobile-nav-gap: var(--space-3);--contact-grid-gap: var(--space-10);--contact-form-width: 480px;--animation-fade-distance: 30px;--animation-scale-hover: 1.02;--animation-lift-hover: -8px;--animation-lift-small: -2px}:root{--hover-lift-transform: translateY(var(--animation-lift-small));--hover-scale-transform: scale(var(--animation-scale-hover));--hover-shadow-elevation: var(--shadow-brand-hover);--focus-outline: 2px solid var(--color-primary);--focus-outline-offset: 2px;--focus-border-radius: var(--radius-sm);--active-transform: translateY(0);--active-shadow: var(--shadow-md);--disabled-opacity: .5;--disabled-cursor: not-allowed;--loading-skeleton-bg: linear-gradient( 90deg, var(--skeleton-base) 25%, var(--skeleton-highlight) 50%, var(--skeleton-base) 75% );--loading-skeleton-size: 200% 100%;--error-bg-color: #fef2f2;--error-border-color: var(--color-error);--error-text-color: var(--color-error);--success-bg-color: #f0fdf4;--success-border-color: var(--color-success);--success-text-color: var(--color-success)}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}*:not(:hover){will-change:auto}body{margin:0;padding:0;font-family:var(--font-family-primary);font-size:var(--font-size-base);line-height:var(--line-height-normal);color:var(--color-text-primary);background:var(--color-bg-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.container{max-width:var(--max-width-container);margin:0 auto;padding:var(--space-12) var(--space-6)}.header{display:flex;align-items:center;justify-content:space-between;padding:var(--header-padding)}.logo{display:flex;align-items:center;gap:var(--space-3)}.logo svg{height:var(--brand-logo-height);width:auto}.btn-primary,.cta{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-hover) 100%);color:var(--color-text-inverse);padding:var(--btn-padding-y) var(--btn-padding-x);border-radius:var(--btn-border-radius);text-decoration:none;font-weight:var(--btn-font-weight);font-size:var(--btn-font-size);border:none;cursor:pointer;transition:var(--btn-transition);box-shadow:var(--shadow-brand);display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:var(--btn-min-height);will-change:transform,box-shadow}.btn-primary:hover,.cta:hover{transform:var(--hover-lift-transform);box-shadow:var(--hover-shadow-elevation)}.btn-primary:active{transform:var(--active-transform)}.btn-primary:focus-visible{outline:var(--focus-outline);outline-offset:var(--focus-outline-offset)}.btn-secondary{background:var(--color-bg-card);color:var(--color-primary);padding:var(--btn-padding-y) var(--btn-padding-x);border-radius:var(--btn-border-radius);text-decoration:none;font-weight:var(--btn-font-weight);font-size:var(--btn-font-size);border:2px solid var(--color-primary);cursor:pointer;transition:var(--btn-transition);display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:var(--btn-min-height)}.btn-secondary:hover{background:var(--color-primary);color:var(--color-text-inverse);transform:var(--hover-lift-transform)}.link{color:var(--color-text-link);text-decoration:none;font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm);transition:var(--transition-colors);display:inline-flex;align-items:center;gap:var(--space-2)}.link:hover{color:var(--color-text-link-hover);text-decoration:underline}.card{background:var(--color-bg-card);border-radius:var(--card-border-radius);padding:var(--card-padding);box-shadow:var(--card-shadow);border:var(--card-border);transition:var(--card-transition);position:relative;overflow:hidden;will-change:transform,box-shadow}.card:before{content:"";position:absolute;top:0;left:0;right:0;height:var(--card-accent-height);background:linear-gradient(90deg,var(--color-primary) 0%,var(--color-success) 100%);opacity:0;transition:var(--transition-normal)}.card:hover:before{opacity:1}.card:hover{transform:translateY(var(--animation-lift-hover));box-shadow:var(--card-shadow-hover)}.card h3{margin:0 0 var(--space-3);font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--color-text-primary)}.card p{margin:0;color:var(--color-text-secondary);line-height:var(--line-height-normal)}section h2{font-size:var(--font-size-4xl);font-weight:var(--font-weight-extrabold);margin:0 0 var(--space-4);background:linear-gradient(135deg,var(--color-text-primary) 0%,var(--color-text-secondary) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:var(--line-height-tight)}.muted{color:var(--color-text-muted);font-size:var(--font-size-lg);margin-bottom:var(--space-10);line-height:var(--line-height-normal)}.footer{background:var(--footer-bg);color:var(--color-text-inverse);padding:var(--footer-padding);margin-top:var(--space-20);border-top:1px solid var(--color-neutral-200)}.footer .container{padding:0 var(--space-6)}.footer h3{color:var(--color-text-inverse);margin-bottom:var(--space-4);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold)}.footer a{color:#fffc;text-decoration:none;transition:var(--transition-colors)}.footer a:hover{color:var(--color-text-inverse)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(var(--animation-fade-distance))}to{opacity:1;transform:translateY(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(calc(-1 * var(--animation-fade-distance)))}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(var(--animation-fade-distance))}to{opacity:1;transform:translate(0)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes skeleton-loading{0%{background-position:200% 0}to{background-position:-200% 0}}.hero-left h1,.hero-left p,.hero-ctas{animation:fadeInUp .8s ease-out}.hero-right{animation:slideInRight 1s ease-out}.features-grid{animation:fadeInUp .6s ease-out .3s both}.features-grid>*{animation:fadeInUp .6s ease-out}.features-grid>*:nth-child(1){animation-delay:.4s}.features-grid>*:nth-child(2){animation-delay:.5s}.features-grid>*:nth-child(3){animation-delay:.6s}.features-grid>*:nth-child(4){animation-delay:.7s}.features-grid>*:nth-child(5){animation-delay:.8s}.features-grid>*:nth-child(6){animation-delay:.9s}.mat-mdc-card{border-radius:var(--card-border-radius)!important;box-shadow:var(--card-shadow)!important;transition:var(--card-transition)!important}.mat-mdc-card:hover{box-shadow:var(--card-shadow-hover)!important;transform:translateY(var(--animation-lift-small))}.mat-mdc-button{border-radius:var(--btn-border-radius)!important;font-weight:var(--btn-font-weight)!important;text-transform:none!important;letter-spacing:.5px!important}.mat-mdc-raised-button{box-shadow:var(--shadow-brand)!important}.mat-mdc-raised-button:hover{box-shadow:var(--hover-shadow-elevation)!important}.mat-mdc-form-field{width:100%!important}.mat-mdc-form-field-outline,.mat-mdc-text-field-wrapper{border-radius:var(--form-border-radius)!important}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:#f1f1f1;border-radius:var(--radius-sm)}::-webkit-scrollbar-thumb{background:var(--color-primary);border-radius:var(--radius-sm)}::-webkit-scrollbar-thumb:hover{background:var(--color-primary-hover)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.sr-only:focus{position:static;width:auto;height:auto;padding:inherit;margin:inherit;overflow:visible;clip:auto;white-space:normal}.skip-link{position:absolute;top:-40px;left:var(--space-4);background:var(--color-primary);color:var(--color-text-inverse);padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);text-decoration:none;font-weight:var(--font-weight-semibold);z-index:var(--z-tooltip);transition:top var(--transition-fast)}.skip-link:focus{top:var(--space-4)}*:focus-visible{outline:var(--focus-outline);outline-offset:var(--focus-outline-offset);border-radius:var(--focus-border-radius)}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:var(--focus-outline);outline-offset:var(--focus-outline-offset)}button,a,input[type=submit],input[type=button],input[type=reset]{min-height:var(--btn-min-height);min-width:var(--btn-min-height)}.form-field.error input,.form-field.error textarea{border-color:var(--error-border-color);background-color:var(--error-bg-color)}.form-field.error .error-message{color:var(--error-text-color);font-size:var(--font-size-sm);margin-top:var(--space-1)}.form-field.error .error-message:before{content:"\26a0\fe0f  ";font-style:normal}.form-field.success input,.form-field.success textarea{border-color:var(--success-border-color);background-color:var(--success-bg-color)}.loading{position:relative;opacity:var(--loading-opacity);pointer-events:none}.loading:after{content:"";position:absolute;top:50%;left:50%;width:20px;height:20px;margin:-10px 0 0 -10px;border:2px solid var(--color-neutral-200);border-top-color:var(--color-primary);border-radius:50%;animation:spin 1s linear infinite}.skeleton,.lazy-loading{background:var(--loading-skeleton-bg);background-size:var(--loading-skeleton-size);animation:skeleton-loading var(--skeleton-animation-duration) infinite}.lazy-loaded{animation:fadeIn .3s ease-in}.lazy-error{background:var(--color-neutral-200);position:relative}.lazy-error:after{content:"\26a0\fe0f";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:2rem}body.modal-open{overflow:hidden}.modal[role=dialog]{outline:none}[aria-live]{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}[aria-live]:not(:empty){position:static;width:auto;height:auto;overflow:visible;padding:var(--space-2) var(--space-4);background:var(--color-success);color:var(--color-text-inverse);border-radius:var(--radius-md);margin-bottom:var(--space-4)}img{max-width:100%;height:auto;loading:lazy;decoding:async}.hero-image,.logo img{loading:eager!important}.hero-right img,.feature-card,.pricing-card,.testimonial-card{content-visibility:auto;contain:layout style paint}.container-query-context{container-type:inline-size;container-name:main-content}@container main-content (max-width: 768px){.responsive-grid{grid-template-columns:1fr;gap:var(--gap-grid-sm)}.responsive-card{padding:var(--space-4);font-size:var(--font-size-sm)}}@container main-content (min-width: 769px) and (max-width: 1024px){.responsive-grid{grid-template-columns:repeat(2,1fr);gap:var(--gap-grid-md)}}@container main-content (min-width: 1025px){.responsive-grid{grid-template-columns:repeat(3,1fr);gap:var(--gap-grid-lg)}}.intrinsic-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(300px,100%),1fr));gap:var(--gap-grid-md)}.intrinsic-sidebar{display:flex;flex-wrap:wrap;gap:var(--gap-grid-md)}.intrinsic-sidebar>:first-child{flex-grow:1;flex-basis:0;min-inline-size:50%}.intrinsic-sidebar>:last-child{flex-basis:300px;flex-grow:999}.fluid-text-xl{font-size:clamp(1.5rem,4vw,3rem)}.fluid-text-lg{font-size:clamp(1.125rem,3vw,1.875rem)}.fluid-text-base{font-size:clamp(1rem,2.5vw,1.25rem)}.fluid-spacing-sm{margin-block:clamp(1rem,3vw,2rem)}.fluid-spacing-md{margin-block:clamp(2rem,5vw,4rem)}.fluid-spacing-lg{margin-block:clamp(3rem,8vw,6rem)}.aspect-16-9{aspect-ratio:16/9;object-fit:cover}.aspect-square{aspect-ratio:1;object-fit:cover}.aspect-4-3{aspect-ratio:4/3;object-fit:cover}.responsive-padding{padding-inline:clamp(1rem,5vw,3rem);padding-block:clamp(1rem,3vw,2rem)}.responsive-margin{margin-inline:clamp(1rem,5vw,3rem);margin-block:clamp(1rem,3vw,2rem)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.d-none{display:none}.d-block{display:block}.d-flex{display:flex}.justify-center{justify-content:center}.align-center{align-items:center}.w-full{width:100%}.h-full{height:100%}.m-0{margin:0}.p-0{padding:0}@media (max-width: 480px){.container{padding-inline:var(--space-4);padding-block:var(--space-6)}.hero{flex-direction:column;text-align:center;gap:var(--space-6);padding-block:var(--space-12)}.hero h1{font-size:var(--font-size-3xl);line-height:var(--line-height-tight)}.hero-ctas{flex-direction:column;align-items:stretch;gap:var(--space-3)}.card{padding:var(--space-4)}.btn-primary,.btn-secondary{width:100%;justify-content:center}}@media (min-width: 481px) and (max-width: 768px){.container{padding-inline:var(--space-5);padding-block:var(--space-8)}.hero{flex-direction:column;text-align:center;gap:var(--space-8)}}@media (min-width: 769px) and (max-width: 1024px){.hero-inner{grid-template-columns:1fr 400px}}@media (min-width: 1025px){.hero-inner{grid-template-columns:1fr 480px}}@media (min-width: 1441px){.container{max-width:1400px}.hero-inner{grid-template-columns:1fr 560px;gap:var(--space-16)}}@media print{.no-print{display:none!important}.print-break{page-break-before:always}.container{max-width:none;padding:0}.hero{flex-direction:column}body{font-size:12px;line-height:1.4}.card{box-shadow:none!important;border:1px solid #ccc!important}a:after{content:" (" attr(href) ")";font-size:.8em;color:#666}a[href^="#"]:after,a[href^="javascript:"]:after{content:""}}@media (orientation: landscape) and (max-height: 500px){.hero{padding-block:var(--space-8)}.hero h1{font-size:var(--font-size-2xl)}}
