:root{--animation-duration-short:.2s;--animation-duration-medium:.4s;--animation-duration-long:.8s;--animation-duration-extra-long:1.2s;--animation-easing-standard:cubic-bezier(.4, 0, .2, 1);--animation-easing-decelerate:cubic-bezier(0, 0, .2, 1);--animation-easing-accelerate:cubic-bezier(.4, 0, 1, 1);--animation-easing-bounce:cubic-bezier(.68, -.55, .265, 1.55);--animation-easing-smooth:cubic-bezier(.25, .46, .45, .94);--animation-easing-sharp:cubic-bezier(.4, 0, .6, 1);--animation-easing-mechanical:cubic-bezier(.55, .085, .68, .53);--animation-easing-industrial:cubic-bezier(.23, 1, .32, 1);--hover-scale-subtle:1.02;--hover-scale-standard:1.05;--hover-scale-prominent:1.08;--hover-translate-subtle:-2px;--hover-translate-standard:-4px;--hover-translate-prominent:-8px;--stagger-fast:50ms;--stagger-medium:.1s;--stagger-slow:.15s;--color-clean-blue:#1565c0;--color-trust-green:#2e7d32;--color-finnish-blue:#003580;--color-professional-dark:#121212;--color-clean-white:#fff;--shadow-subtle:0 1px 3px #0000001f;--shadow-soft:0 2px 6px #00000026;--shadow-medium:0 4px 12px #00000026;--shadow-strong:0 8px 24px #0003;--shadow-brand-blue:0 4px 12px #1565c040;--shadow-brand-green:0 4px 12px #2e7d3240;--shadow-brand-finnish:0 4px 12px #00358040}.animate-fade-in{animation:fadeIn var(--animation-duration-medium) var(--animation-easing-smooth) forwards}.animate-slide-up{animation:slideUp var(--animation-duration-long) var(--animation-easing-industrial) forwards}.animate-scale-in{animation:scaleIn var(--animation-duration-medium) var(--animation-easing-bounce) forwards}.animate-hover-lift{transition:transform var(--animation-duration-short) var(--animation-easing-standard), box-shadow var(--animation-duration-short) var(--animation-easing-standard)}.animate-hover-lift:hover{transform:translateY(var(--hover-translate-standard)) scale(var(--hover-scale-subtle));box-shadow:var(--shadow-medium)}.animate-button-press{transition:transform var(--animation-duration-short) var(--animation-easing-sharp)}.animate-button-press:active{transform:scale(.98)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}@keyframes shimmer{0%{background-position:-200px 0}to{background-position:calc(200px + 100%) 0}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loading-pulse{animation:pulse 1.5s var(--animation-easing-standard) infinite}.loading-shimmer{animation:shimmer 2s var(--animation-easing-standard) infinite;background:linear-gradient(90deg,#ffffff1a 0%,#fff3 50%,#ffffff1a 100%) 0 0/200px 100%}.loading-spin{animation:1s linear infinite spin}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.animate-fade-in,.animate-slide-up,.animate-scale-in{opacity:1;animation:none;transform:none}}.focus-visible{outline:2px solid var(--color-clean-blue);outline-offset:2px;border-radius:4px}@media (prefers-contrast:high){:root{--shadow-subtle:0 2px 4px #0000004d;--shadow-soft:0 4px 8px #0000004d;--shadow-medium:0 6px 12px #0000004d;--shadow-strong:0 8px 16px #0006}}.sr-only{clip:rect(0, 0, 0, 0)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}.skip-link{color:#fff;z-index:9999;background:#000;border-radius:4px;padding:8px 16px;font-weight:500;text-decoration:none;transition:transform .3s ease-in-out;position:absolute;top:-40px;left:6px;transform:translateY(-100%)}.skip-link:focus{outline-offset:2px;outline:2px solid #00acc1;transform:translateY(0)}:focus-visible{border-radius:4px;outline-offset:2px!important;outline:2px solid #00acc1!important}:focus:not(:focus-visible){outline:none}button:focus-visible{outline-offset:2px;outline:3px solid #00acc1;box-shadow:0 0 0 1px #fff,0 0 0 4px #00acc1}[role=button]:focus-visible{outline-offset:2px;outline:3px solid #00acc1;box-shadow:0 0 0 1px #fff,0 0 0 4px #00acc1}input:focus-visible{outline-offset:1px;border-color:#00acc1;outline:2px solid #00acc1}textarea:focus-visible{outline-offset:1px;border-color:#00acc1;outline:2px solid #00acc1}select:focus-visible{outline-offset:1px;border-color:#00acc1;outline:2px solid #00acc1}a:focus-visible{outline-offset:2px;border-radius:2px;outline:2px solid #00acc1}[role=button]:focus-visible{outline-offset:2px;outline:2px solid #00acc1;transform:translateY(-2px);box-shadow:0 4px 12px #00acc14d}.interactive-card:focus-visible{outline-offset:2px;outline:2px solid #00acc1;transform:translateY(-2px);box-shadow:0 4px 12px #00acc14d}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.hero-particles,.floating-particles,.parallax-element{animation:none!important;transform:none!important}:hover{transition-duration:.1s!important}:focus-visible{transition-duration:.1s!important}.typewriter-effect{animation:none!important}.scroll-animation{opacity:1!important;transform:none!important}}@media (prefers-contrast:high){.MuiCard-root,.MuiPaper-root{border:1px solid}.MuiButton-root{border:2px solid}:focus-visible{outline-width:3px!important;outline-color:currentColor!important}.MuiTypography-root{color:inherit}}@media (prefers-color-scheme:no-preference){.status-success:before{content:"✓ "}.status-error:before{content:"✗ "}.status-warning:before{content:"⚠ "}}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:2dppx){body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}}@media (pointer:coarse){button,[role=button],input[type=checkbox],input[type=radio],a{min-width:44px;min-height:44px}.touch-friendly{margin:8px 4px;padding:12px 16px}}.keyboard-navigation-active :focus-visible{outline-offset:2px;outline:3px solid #00acc1;box-shadow:0 0 0 1px #fff,0 0 0 5px #00acc1}.error-field{border-color:#d32f2f!important}.error-field:focus-visible{box-shadow:0 0 0 1px #fff,0 0 0 4px #d32f2f;outline-color:#d32f2f!important}.success-field{border-color:#2e7d32!important}.success-field:focus-visible{box-shadow:0 0 0 1px #fff,0 0 0 4px #2e7d32;outline-color:#2e7d32!important}.loading-indicator{position:relative}.loading-indicator:after{content:"";border:2px solid #0000;border-top-color:currentColor;border-radius:50%;width:20px;height:20px;margin:-10px 0 0 -10px;animation:1s linear infinite spin;position:absolute;top:50%;left:50%}@media (prefers-reduced-motion:reduce){.loading-indicator:after{border:2px solid;border-radius:2px;animation:none}}.modal-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background-color:#00000080}.modal-content{position:relative}.modal-content:focus{outline:none}.carousel-container{position:relative}.carousel-slide[aria-hidden=true]{visibility:hidden}.carousel-indicators{justify-content:center;gap:8px;margin-top:16px;display:flex}.carousel-indicator{cursor:pointer;background:0 0;border:2px solid;border-radius:50%;width:12px;height:12px}.carousel-indicator[aria-selected=true]{background:currentColor}.carousel-indicator:focus-visible{outline-offset:2px;outline:2px solid #00acc1}.form-field{margin-bottom:16px;position:relative}.form-label{margin-bottom:4px;font-weight:500;display:block}.form-label.required:after{content:" *";color:#d32f2f}.form-input{border:2px solid #ccc;border-radius:4px;width:100%;padding:12px;font-size:16px}.form-input:focus-visible{border-color:#00acc1;outline:none;box-shadow:0 0 0 2px #00acc133}.form-error{color:#d32f2f;align-items:center;gap:4px;margin-top:4px;font-size:14px;display:flex}.form-error:before{content:"⚠";font-weight:700}.form-success{color:#2e7d32;align-items:center;gap:4px;margin-top:4px;font-size:14px;display:flex}.form-success:before{content:"✓";font-weight:700}.accessible-table{border-collapse:collapse;width:100%}.accessible-table th,.accessible-table td{text-align:left;border:1px solid #ccc;padding:12px}.accessible-table th{background-color:#f5f5f5;font-weight:600}.accessible-table caption{text-align:left;margin-bottom:8px;font-weight:600}@media print{*{color:#000!important;box-shadow:none!important;background:#fff!important}button,.interactive-element{display:none!important}a:after{content:" (" attr(href) ")";font-size:12px}.page-break{page-break-before:always}}@media screen and (-ms-high-contrast:active){.MuiCard-root,.MuiPaper-root,.MuiButton-root{border:1px solid}:focus{outline:2px solid}}@media (forced-colors:active){.MuiButton-root{color:buttontext;background:buttonface;border:1px solid buttontext}.MuiButton-root:hover{color:highlighttext;background:highlight}:focus-visible{outline:2px solid highlight}}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:#ffffffde;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-backface-visibility:hidden;backface-visibility:hidden;perspective:1000px;background-color:#121212;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,Avenir,Helvetica,Arial,sans-serif;font-weight:400;line-height:1.5;transform:translateZ(0)}a{color:#646cff;-webkit-text-decoration:inherit;text-decoration:inherit;font-weight:500}a:hover{color:#535bf2}body{min-width:320px;min-height:100vh;margin:0}h1{font-size:3.2em;line-height:1.1}button{cursor:pointer;background-color:#1a1a1a;border:1px solid #0000;border-radius:8px;padding:.6em 1.2em;font-family:inherit;font-size:1em;font-weight:500;transition:border-color .25s}button:hover{border-color:#646cff}button:focus{outline:4px auto -webkit-focus-ring-color}button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}
