:root{--primary-color: #F9B233;--primary-color-rgb: 249, 178, 51;--accent-color: #9966CC;--accent-color-darker: #834db9;--secondary-color: #3c2a59;--rgb-secondary-color: 60, 42, 89;--background-color: #1c1033;--surface-color: #2a1a47;--text-color: #EAE0FF;--text-color-light: #120822;--text-color-secondary-neutral: #b3a5d1;--ms-white: #FFFFFF;--ms-light-gold-text: #F5D9A9;--ms-muted-text: #8c7ba5;--ms-border: #4a376a;--ms-error-color: #d946ef;--ms-error-glow-color: rgba(217, 70, 239, .5);--ms-success-color: var(--primary-color);--ms-info-color: #55aaff;--spacing-unit: 8px;--container-width: 1200px;--container-padding: calc(var(--spacing-unit) * 2);--font-family-base: "Inter", sans-serif;--font-family-headings: "Cinzel", serif;--font-size-base: 1rem;--font-size-sm: .875rem;--font-size-lg: 1.125rem;--font-weight-light: 300;--font-weight-regular: 400;--font-weight-medium: 500;--font-weight-bold: 700;--border-radius-base: 6px;--border-radius-lg: 12px;--border-color: var(--ms-border);--box-shadow-sm: 0 2px 4px rgba(0,0,0,.2);--box-shadow-md: 0 4px 10px rgba(0,0,0,.3);--box-shadow-lg: 0 8px 25px rgba(0,0,0,.4);--transition-base: all .3s ease-in-out}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}body{background-color:transparent;color:var(--text-color);font-family:var(--font-family-base);margin:0;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden;position:relative;z-index:1}body:before{content:"";position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:-1;background:radial-gradient(ellipse at 70% 30%,rgba(249,178,51,.12) 0%,transparent 50%),radial-gradient(ellipse at 30% 70%,rgba(153,102,204,.18) 0%,transparent 60%),var(--background-color);background-size:250% 250%;animation:cosmic-wave 60s ease infinite;will-change:background-position}@keyframes cosmic-wave{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.container{width:100%;max-width:var(--container-width);margin-left:auto;margin-right:auto;padding-left:var(--container-padding);padding-right:var(--container-padding)}.section{padding-top:calc(var(--spacing-unit) * 8);padding-bottom:calc(var(--spacing-unit) * 8)}h1,h2,h3,h4,h5,h6{font-family:var(--font-family-headings);font-weight:var(--font-weight-bold);color:var(--ms-light-gold-text);margin:0 0 calc(var(--spacing-unit) * 2) 0;text-shadow:0 0 8px rgba(var(--primary-color-rgb),.3)}p{line-height:1.6;margin-top:0;margin-bottom:calc(var(--spacing-unit) * 2)}a{color:var(--primary-color);text-decoration:none;transition:var(--transition-base)}a:hover,a:focus{text-decoration:underline;filter:brightness(1.1)}a:visited:not(.cta-button){color:var(--primary-color)}a:active:not(.cta-button){color:var(--accent-color)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.no-scroll{overflow:hidden}.card{background-color:var(--surface-color);border-radius:var(--border-radius-lg);border:1px solid var(--border-color);padding:calc(var(--spacing-unit) * 3);box-shadow:0 4px 20px #0000004d;transition:transform .3s ease,box-shadow .3s ease;overflow:hidden;position:relative}.card:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 0%,rgba(var(--primary-color-rgb),.08),transparent 70%);opacity:0;transition:opacity .4s ease;pointer-events:none}.card:hover:before{opacity:1}.cta-button{display:inline-block;padding:calc(var(--spacing-unit) * 1.5) calc(var(--spacing-unit) * 3);background-color:var(--primary-color);color:var(--text-color-light);border:2px solid transparent;border-radius:var(--border-radius-base);font-weight:var(--font-weight-bold);text-decoration:none;cursor:pointer;transition:var(--transition-base);box-shadow:0 0 15px rgba(var(--primary-color-rgb),.3)}a.cta-button,button.cta-button{color:var(--text-color-light)!important}.cta-button:hover,.cta-button:focus{background-color:transparent;border-color:var(--primary-color);color:var(--primary-color)!important;box-shadow:0 0 25px rgba(var(--primary-color-rgb),.6);text-decoration:none}.cta-button.secondary{background-color:var(--accent-color);box-shadow:0 0 15px #96c6}a.cta-button.secondary,button.cta-button.secondary{color:var(--ms-white)!important}.cta-button.secondary:hover,.cta-button.secondary:focus{background-color:transparent;border-color:var(--accent-color);color:var(--accent-color)!important;box-shadow:0 0 25px #96c9}.form-group{margin-bottom:calc(var(--spacing-unit) * 2.5)}.form-group label{display:block;font-weight:var(--font-weight-medium);margin-bottom:var(--spacing-unit)}.form-control{display:block;width:100%;padding:calc(var(--spacing-unit) * 1.5);background-color:var(--background-color);border:1px solid var(--border-color);border-radius:var(--border-radius-base);color:var(--text-color);transition:border-color .3s ease,box-shadow .3s ease}.form-control:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px rgba(var(--primary-color-rgb),.25)}:where(.form-control.is-invalid),:where(.form-control.ng-touched.ng-invalid){border-color:var(--ms-error-color)!important}:where(.form-control.is-invalid:focus),:where(.form-control.ng-touched.ng-invalid:focus){box-shadow:0 0 0 3px var(--ms-error-glow-color)!important}.invalid-feedback{color:var(--ms-error-color);font-size:var(--font-size-sm);margin-top:calc(var(--spacing-unit) * .5)}.alert{padding:calc(var(--spacing-unit) * 2);margin-bottom:var(--spacing-unit) * 2;border-radius:var(--border-radius-base);border:1px solid transparent}.alert-danger{background-color:rgba(var(--ms-error-color),.15);border-color:var(--ms-error-color);color:var(--text-color)}.alert-success{background-color:rgba(var(--primary-color-rgb),.15);border-color:var(--primary-color);color:var(--text-color)}*:focus-visible{outline:2px solid var(--primary-color)!important;outline-offset:2px;box-shadow:0 0 0 4px rgba(var(--primary-color-rgb),.3);border-radius:var(--border-radius-base)}html{accent-color:var(--primary-color)}.card-animate{opacity:0;transform:translateY(30px);transition:opacity .6s cubic-bezier(.645,.045,.355,1),transform .6s cubic-bezier(.645,.045,.355,1);transition-delay:0s;will-change:opacity,transform}.card-animate.card-visible{opacity:1;transform:translateY(0)}
