.toast-center-center{top:50%;left:50%;transform:translate(-50%,-50%)}.toast-top-center{top:0;right:0;width:100%}.toast-bottom-center{bottom:0;right:0;width:100%}.toast-top-full-width{top:0;right:0;width:100%}.toast-bottom-full-width{bottom:0;right:0;width:100%}.toast-top-left{top:12px;left:12px}.toast-top-right{top:12px;right:12px}.toast-bottom-right{right:12px;bottom:12px}.toast-bottom-left{bottom:12px;left:12px}.toast-title{font-weight:700}.toast-message{word-wrap:break-word}.toast-message a,.toast-message label{color:#fff}.toast-message a:hover{color:#ccc;text-decoration:none}.toast-close-button{position:relative;right:-.3em;top:-.3em;float:right;font-size:20px;font-weight:700;color:#fff;text-shadow:0 1px 0 #ffffff}.toast-close-button:hover,.toast-close-button:focus{color:#000;text-decoration:none;cursor:pointer;opacity:.4}button.toast-close-button{padding:0;cursor:pointer;background:transparent;border:0}.toast-container{pointer-events:none;position:fixed;z-index:999999}.toast-container *{box-sizing:border-box}.toast-container .ngx-toastr{position:relative;overflow:hidden;margin:0 0 6px;padding:15px 15px 15px 50px;width:300px;border-radius:3px;background-position:15px center;background-repeat:no-repeat;background-size:24px;box-shadow:0 0 12px #999;color:#fff}.toast-container .ngx-toastr:hover{box-shadow:0 0 12px #000;opacity:1;cursor:pointer}.toast-info{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA1MTIgNTEyJyB3aWR0aD0nNTEyJyBoZWlnaHQ9JzUxMic+PHBhdGggZmlsbD0ncmdiKDI1NSwyNTUsMjU1KScgZD0nTTI1NiA4QzExOS4wNDMgOCA4IDExOS4wODMgOCAyNTZjMCAxMzYuOTk3IDExMS4wNDMgMjQ4IDI0OCAyNDhzMjQ4LTExMS4wMDMgMjQ4LTI0OEM1MDQgMTE5LjA4MyAzOTIuOTU3IDggMjU2IDh6bTAgMTEwYzIzLjE5NiAwIDQyIDE4LjgwNCA0MiA0MnMtMTguODA0IDQyLTQyIDQyLTQyLTE4LjgwNC00Mi00MiAxOC44MDQtNDIgNDItNDJ6bTU2IDI1NGMwIDYuNjI3LTUuMzczIDEyLTEyIDEyaC04OGMtNi42MjcgMC0xMi01LjM3My0xMi0xMnYtMjRjMC02LjYyNyA1LjM3My0xMiAxMi0xMmgxMnYtNjRoLTEyYy02LjYyNyAwLTEyLTUuMzczLTEyLTEydi0yNGMwLTYuNjI3IDUuMzczLTEyIDEyLTEyaDY0YzYuNjI3IDAgMTIgNS4zNzMgMTIgMTJ2MTAwaDEyYzYuNjI3IDAgMTIgNS4zNzMgMTIgMTJ2MjR6Jy8+PC9zdmc+)}.toast-error{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA1MTIgNTEyJyB3aWR0aD0nNTEyJyBoZWlnaHQ9JzUxMic+PHBhdGggZmlsbD0ncmdiKDI1NSwyNTUsMjU1KScgZD0nTTI1NiA4QzExOSA4IDggMTE5IDggMjU2czExMSAyNDggMjQ4IDI0OCAyNDgtMTExIDI0OC0yNDhTMzkzIDggMjU2IDh6bTEyMS42IDMxMy4xYzQuNyA0LjcgNC43IDEyLjMgMCAxN0wzMzggMzc3LjZjLTQuNyA0LjctMTIuMyA0LjctMTcgMEwyNTYgMzEybC02NS4xIDY1LjZjLTQuNyA0LjctMTIuMyA0LjctMTcgMEwxMzQuNCAzMzhjLTQuNy00LjctNC43LTEyLjMgMC0xN2w2NS42LTY1LTY1LjYtNjUuMWMtNC43LTQuNy00LjctMTIuMyAwLTE3bDM5LjYtMzkuNmM0LjctNC43IDEyLjMtNC43IDE3IDBsNjUgNjUuNyA2NS4xLTY1LjZjNC43LTQuNyAxMi4zLTQuNyAxNyAwbDM5LjYgMzkuNmM0LjcgNC43IDQuNyAxMi4zIDAgMTdMMzEyIDI1Nmw2NS42IDY1LjF6Jy8+PC9zdmc+)}.toast-success{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA1MTIgNTEyJyB3aWR0aD0nNTEyJyBoZWlnaHQ9JzUxMic+PHBhdGggZmlsbD0ncmdiKDI1NSwyNTUsMjU1KScgZD0nTTE3My44OTggNDM5LjQwNGwtMTY2LjQtMTY2LjRjLTkuOTk3LTkuOTk3LTkuOTk3LTI2LjIwNiAwLTM2LjIwNGwzNi4yMDMtMzYuMjA0YzkuOTk3LTkuOTk4IDI2LjIwNy05Ljk5OCAzNi4yMDQgMEwxOTIgMzEyLjY5IDQzMi4wOTUgNzIuNTk2YzkuOTk3LTkuOTk3IDI2LjIwNy05Ljk5NyAzNi4yMDQgMGwzNi4yMDMgMzYuMjA0YzkuOTk3IDkuOTk3IDkuOTk3IDI2LjIwNiAwIDM2LjIwNGwtMjk0LjQgMjk0LjQwMWMtOS45OTggOS45OTctMjYuMjA3IDkuOTk3LTM2LjIwNC0uMDAxeicvPjwvc3ZnPg==)}.toast-warning{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA1NzYgNTEyJyB3aWR0aD0nNTc2JyBoZWlnaHQ9JzUxMic+PHBhdGggZmlsbD0ncmdiKDI1NSwyNTUsMjU1KScgZD0nTTU2OS41MTcgNDQwLjAxM0M1ODcuOTc1IDQ3Mi4wMDcgNTY0LjgwNiA1MTIgNTI3Ljk0IDUxMkg0OC4wNTRjLTM2LjkzNyAwLTU5Ljk5OS00MC4wNTUtNDEuNTc3LTcxLjk4N0wyNDYuNDIzIDIzLjk4NWMxOC40NjctMzIuMDA5IDY0LjcyLTMxLjk1MSA4My4xNTQgMGwyMzkuOTQgNDE2LjAyOHpNMjg4IDM1NGMtMjUuNDA1IDAtNDYgMjAuNTk1LTQ2IDQ2czIwLjU5NSA0NiA0NiA0NiA0Ni0yMC41OTUgNDYtNDYtMjAuNTk1LTQ2LTQ2LTQ2em0tNDMuNjczLTE2NS4zNDZsNy40MTggMTM2Yy4zNDcgNi4zNjQgNS42MDkgMTEuMzQ2IDExLjk4MiAxMS4zNDZoNDguNTQ2YzYuMzczIDAgMTEuNjM1LTQuOTgyIDExLjk4Mi0xMS4zNDZsNy40MTgtMTM2Yy4zNzUtNi44NzQtNS4wOTgtMTIuNjU0LTExLjk4Mi0xMi42NTRoLTYzLjM4M2MtNi44ODQgMC0xMi4zNTYgNS43OC0xMS45ODEgMTIuNjU0eicvPjwvc3ZnPg==)}.toast-container.toast-top-center .ngx-toastr,.toast-container.toast-bottom-center .ngx-toastr{width:300px;margin-left:auto;margin-right:auto}.toast-container.toast-top-full-width .ngx-toastr,.toast-container.toast-bottom-full-width .ngx-toastr{width:96%;margin-left:auto;margin-right:auto}.ngx-toastr{background-color:#030303;pointer-events:auto}.toast-success{background-color:#51a351}.toast-error{background-color:#bd362f}.toast-info{background-color:#2f96b4}.toast-warning{background-color:#f89406}.toast-progress{position:absolute;left:0;bottom:0;height:4px;background-color:#000;opacity:.4}@media all and (max-width:240px){.toast-container .ngx-toastr.div{padding:8px 8px 8px 50px;width:11em}.toast-container .toast-close-button{right:-.2em;top:-.2em}}@media all and (min-width:241px)and (max-width:480px){.toast-container .ngx-toastr.div{padding:8px 8px 8px 50px;width:18em}.toast-container .toast-close-button{right:-.2em;top:-.2em}}@media all and (min-width:481px)and (max-width:768px){.toast-container .ngx-toastr.div{padding:15px 15px 15px 50px;width:25em}}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0}body,h1,h2,h3,p{margin:0}button,input,textarea,select{font:inherit}img,picture,svg{display:block;max-width:100%}button,a{-webkit-tap-highlight-color:transparent}.display{font-family:Montserrat,sans-serif;font-size:2.5rem;font-weight:700;line-height:1.323}@media(min-width:64rem){.display{font-size:4rem}}.heading-1{font-family:Montserrat,sans-serif;font-size:2.25rem;font-weight:700;line-height:1.323}@media(min-width:64rem){.heading-1{font-size:3rem}}.heading-2{font-family:Montserrat,sans-serif;font-size:2rem;font-weight:600;line-height:1.323}@media(min-width:64rem){.heading-2{font-size:2.5rem}}.heading-3{font-family:Montserrat,sans-serif;font-size:1.5rem;font-weight:600;line-height:1.323}@media(min-width:64rem){.heading-3{font-size:2rem}}.body-large{font-family:Inter,sans-serif;font-size:1.125rem;font-weight:400;line-height:1.5}.body{font-family:Inter,sans-serif;font-size:1rem;font-weight:400;line-height:1.5}.body-small{font-family:Inter,sans-serif;font-size:.875rem;font-weight:400;line-height:1.5}.label{font-family:Inter,sans-serif;font-size:.875rem;font-weight:500;line-height:1.323}html{font-family:Inter,sans-serif}body{min-height:100vh;background-color:var(--color-background-primary);color:var(--color-text-primary);font-family:Inter,sans-serif;font-size:1rem;font-weight:400;line-height:1.5;transition:background-color .25s cubic-bezier(.2,0,0,1),color .25s cubic-bezier(.2,0,0,1)}:root,[data-theme=light]{color-scheme:light;--image-background-page: url(/images/backgrounds/page-background-light.png);--image-not-found: url(/images/not-found-light.webp);--color-background-primary: #ffffff;--color-background-secondary: #f8fafc;--color-background-hover: #e2e8f0;--color-text-primary: #020617;--color-text-secondary: #475569;--color-text-error: #dc2626;--color-border-default: #e2e8f0;--color-border-hover: #94a3b8;--color-border-focus: #166fa8;--color-border-error: #dc2626;--color-interactive-primary: #166fa8;--color-interactive-primary-hover: #1f8bd0;--color-interactive-disabled: #94a3b8;--color-button-primary-background-default: #8fd6fb;--color-button-primary-background-hover: #67c9f9;--color-button-primary-background-disabled: #e2e8f0;--color-button-primary-text-default: #020617;--color-button-primary-text-disabled: #475569;--color-button-primary-border-default: #8fd6fb;--color-button-primary-border-hover: #67c9f9;--color-button-primary-border-focus: #166fa8;--color-button-primary-border-disabled: #e2e8f0;--color-button-secondary-background-default: #ffffff;--color-button-secondary-background-hover: #f8fafc;--color-button-secondary-background-disabled: #f1f5f9;--color-button-secondary-text-default: #020617;--color-button-secondary-text-disabled: #64748b;--color-button-secondary-border-default: #cbd5e1;--color-button-secondary-border-hover: #166fa8;--color-button-secondary-border-focus: #166fa8;--color-button-secondary-border-disabled: #e2e8f0;--color-tag-green-background: #e6f9c7;--color-tag-green-text: #65a30d;--color-tag-blue-background: #d7f0fe;--color-tag-blue-text: #1f8bd0;--color-tag-neutral-background: #cbd5e1;--color-tag-neutral-text: #334155;--color-tag-orange-background: #fff3c4;--color-tag-orange-text: #ffc800;--color-icon-primary: #49c0f8;--color-icon-primary-hover: #67c9f9;--color-icon-primary-disabled: #94a3b8;--shadow-none: none;--shadow-header: 0 .25rem .3125rem rgba(0, 0, 0, .14), 0 .375rem .625rem rgba(0, 0, 0, .12);--shadow-project-card: 0 .0625rem .125rem rgba(0, 0, 0, .1);--shadow-project-card-hover: 0 .5rem .625rem rgba(0, 0, 0, .14), 0 .625rem 1.125rem rgba(0, 0, 0, .12);--shadow-contact-card: 0 .375rem .625rem rgba(0, 0, 0, .14), 0 .5rem .875rem rgba(0, 0, 0, .12);--shadow-contact-card-hover: 0 .0625rem .125rem rgba(0, 0, 0, .08);--shadow-button: 0 .25rem .375rem rgba(0, 0, 0, .15);--shadow-button-carousel: 5px 5px 10px rgba(163, 177, 198, .05), -5px -5px 10px rgba(255, 255, 255, .75);--shadow-button-carousel-press: inset 6px 6px 12px rgba(163, 177, 198, .06), inset -6px -6px 12px rgba(255, 255, 255, .08);--shadow-button-press-primary: 0 .125rem 0 rgba(0, 0, 0, .2);--shadow-button-press-secondary: 0 .0625rem .125rem rgba(0, 0, 0, .1);--color-toast-background: #ffffff;--color-toast-text: #020617;--color-toast-border: #e2e8f0;--color-toast-success: #65a30d;--color-toast-error: #dc2626;--color-toast-info: #1f8bd0;--color-toast-warning: #ffc800}[data-theme=dark]{color-scheme:dark;--image-background-page: url(/images/backgrounds/page-background-dark.png);--image-not-found: url(/images/not-found-dark.webp);--color-background-primary: #020617;--color-background-secondary: #0f172a;--color-background-hover: #334155;--color-text-primary: #ffffff;--color-text-secondary: #cbd5e1;--color-text-error: #f87171;--color-border-default: #334155;--color-border-hover: #475569;--color-border-focus: #65a30d;--color-border-error: #f87171;--color-interactive-primary: #a3e635;--color-interactive-primary-hover: #bef264;--color-interactive-disabled: #64748b;--color-button-primary-background-default: #a3e635;--color-button-primary-background-hover: #bef264;--color-button-primary-background-disabled: #e2e8f0;--color-button-primary-text-default: #020617;--color-button-primary-text-disabled: #64748b;--color-button-primary-border-default: #a3e635;--color-button-primary-border-hover: #bef264;--color-button-primary-border-focus: #65a30d;--color-button-primary-border-disabled: #334155;--color-button-secondary-background-default: #ffffff;--color-button-secondary-background-hover: #f8fafc;--color-button-secondary-background-disabled: #f1f5f9;--color-button-secondary-text-default: #020617;--color-button-secondary-text-disabled: #64748b;--color-button-secondary-border-default: #e2e8f0;--color-button-secondary-border-hover: #84cc16;--color-button-secondary-border-focus: #65a30d;--color-button-secondary-border-disabled: #334155;--color-tag-green-background: #65a30d;--color-tag-green-text: #e6f9c7;--color-tag-blue-background: #1f8bd0;--color-tag-blue-text: #d7f0fe;--color-tag-neutral-background: #1e293b;--color-tag-neutral-text: #cbd5e1;--color-tag-orange-background: #ffc800;--color-tag-orange-text: #fff3c4;--color-icon-primary: #a3e635;--color-icon-primary-hover: #bef264;--color-icon-primary-disabled: #64748b;--shadow-none: none;--shadow-header: 0 .25rem .3125rem rgba(0, 0, 0, .14), 0 .375rem .625rem rgba(0, 0, 0, .12);--shadow-project-card: 0 .25rem .75rem rgba(0, 5, 20, .65), 0 0 .5rem rgba(65, 160, 255, .3);--shadow-project-card-hover: 0 .75rem 1.75rem rgba(0, 5, 20, .75), 0 1rem 2.25rem rgba(0, 15, 45, .55), 0 0 1.375rem rgba(37, 141, 255, .4);--shadow-contact-card: 0 .5rem 1.25rem rgba(0, 5, 20, .65), 0 .75rem 1.75rem rgba(0, 20, 55, .45), 0 0 .875rem rgba(37, 141, 255, .28);--shadow-contact-card-hover: 0 .25rem .75rem rgba(0, 5, 20, .55), 0 0 1.375rem rgba(37, 141, 255, .45);--shadow-button: 0 .3125rem .75rem rgba(0, 5, 20, .65), 0 0 .625rem rgba(37, 141, 255, .25);--shadow-button-press-primary: 0 .125rem 0 rgba(0, 5, 20, .65), 0 0 .875rem rgba(37, 141, 255, .35);--shadow-button-press-secondary: 0 .125rem .3125rem rgba(0, 5, 20, .55), 0 0 .75rem rgba(37, 141, 255, .28);--shadow-button-carousel: .375rem .375rem .875rem rgba(0, 5, 20, .75), -.375rem -.375rem .875rem rgba(75, 155, 255, .3);--shadow-button-carousel-press: inset .375rem .375rem .875rem rgba(0, 5, 20, .7), inset -.375rem -.375rem .875rem rgba(75, 155, 255, .25);--color-toast-background: #0f172a;--color-toast-text: #ffffff;--color-toast-border: #334155;--color-toast-success: #a3e635;--color-toast-error: #f87171;--color-toast-info: #67c9f9;--color-toast-warning: #ffc800}.toast-container .ngx-toastr{font-family:Inter,sans-serif;background-color:var(--color-background-primary);color:var(--color-toast-text);border:1px solid var(--color-toast-border);border-radius:.5rem;padding:1rem 2.5rem 1rem 3rem;background-size:1.25rem;font-size:.875rem;line-height:1.5}.toast-container .toast-title{font-weight:600}.toast-container .toast-message{color:var(--color-toast-text)}.toast-container .toast-success{background-color:var(--color-toast-success)}.toast-container .toast-error{background-color:var(--color-toast-error)}.toast-container .toast-info{background-color:var(--color-toast-info)}.toast-container .toast-warning{background-color:var(--color-toast-warning)}.toast-container .toast-close-button:focus-visible{outline:.125rem solid var(--color-border-focus);outline-offset:.125rem}.toast-container .toast-close-button{color:var(--color-toast-text);opacity:.8}.toast-container .toast-close-button:hover{opacity:1}.toast-container .toast-progress{opacity:.8}
