.app{min-height:100vh;position:relative;display:flex;flex-direction:column;align-items:center;background:linear-gradient(135deg,#eaf7ea,#e8f5e8,#e6f2e6);overflow-x:hidden}.error-message{background-color:#dc26261a;border:1px solid rgba(220,38,38,.3);color:#dc2626;padding:1rem 2rem;border-radius:8px;font-weight:500;animation:fadeIn .3s ease-out;z-index:10}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}*{transition:color .3s ease,background-color .3s ease,border-color .3s ease}:root{--color-primary: #4a7c59;--color-primary-light: #5ca35c;--color-primary-dark: #3a6149;--color-text: #212529;--color-text-secondary: #495057;--color-text-tertiary: #868e96;--color-background: #fafbfc;--color-background-secondary: #e8f0e8;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem;--font-family-base: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-family-heading: "Playfair Display", serif;--shadow-sm: 0 2px 4px rgba(0, 0, 0, .05);--shadow-md: 0 4px 8px rgba(0, 0, 0, .08);--shadow-lg: 0 10px 20px rgba(74, 124, 89, .15);--animation-duration: .3s;--animation-easing: ease-in-out}*{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-family-base);color:var(--color-text);background:linear-gradient(135deg,#eaf7ea,#e8f5e8,#e6f2e6);line-height:1.6;min-height:100vh;overflow-x:hidden;position:relative}h1,h2,h3,h4,h5,h6{font-family:var(--font-family-heading);line-height:1.2;font-weight:700}.text-center{text-align:center}.text-secondary{color:var(--color-text-secondary)}.text-tertiary{color:var(--color-text-tertiary)}:focus{outline:2px solid var(--color-primary);outline-offset:2px}*{transition-property:color,background-color,border-color,opacity,transform;transition-duration:var(--animation-duration);transition-timing-function:var(--animation-easing)}.no-transitions *{transition:none!important}:root{--color-primary-main: #4a7c59;--color-primary-light: #5ca35c;--color-primary-dark: #3a6149;--color-primary-contrast: #ffffff;--color-secondary-orange: #ff6b35;--color-secondary-orange-dark: #e55a2b;--color-secondary-gold: #b8860b;--color-error-main: #dc2626;--color-error-light: #fef2f2;--color-error-lighter: #fef7f7;--color-error-border: rgba(220, 38, 38, .2);--color-error-background: linear-gradient(135deg, #fef7f7 0%, #fef2f2 100%);--color-error-accent: #dc2626;--color-success-main: #059669;--color-success-light: #10b981;--color-success-dark: #059669;--color-success-background: rgba(16, 185, 129, .1);--color-success-border: rgba(16, 185, 129, .2);--color-success-tip-background: rgba(16, 185, 129, .05);--color-success-contrast: #ffffff;--color-validation-valid: #10b981;--color-validation-valid-bg: rgba(16, 185, 129, .1);--color-validation-valid-border: #10b981;--color-validation-valid-input-bg: linear-gradient(135deg, rgba(16, 185, 129, .02) 0%, rgba(255, 255, 255, .98) 100%);--color-validation-error: #dc2626;--color-validation-error-bg: rgba(220, 38, 38, .1);--color-validation-error-border: #dc2626;--color-validation-error-input-bg: linear-gradient(135deg, rgba(220, 38, 38, .02) 0%, rgba(255, 255, 255, .98) 100%);--color-validation-validating: var(--color-primary-main);--color-validation-validating-border: var(--color-primary-main);--color-validation-validating-input-bg: linear-gradient(135deg, rgba(74, 124, 89, .02) 0%, rgba(255, 255, 255, .98) 100%);--color-validation-focused-border: var(--color-primary-main);--color-validation-focused-shadow: 0 0 0 3px rgba(74, 124, 89, .1), 0 4px 8px rgba(74, 124, 89, .08), inset 0 1px 2px rgba(74, 124, 89, .05);--color-validation-focused-transform: translateY(-1px);--color-password-very-weak: #dc2626;--color-password-weak: #ea580c;--color-password-fair: #ca8a04;--color-password-strong: #16a34a;--color-password-very-strong: #059669;--color-password-bar-background: rgba(0, 0, 0, .1);--color-password-criteria-bg: linear-gradient(135deg, rgba(74, 124, 89, .02) 0%, rgba(255, 255, 255, .95) 100%);--color-password-criteria-border: rgba(74, 124, 89, .1);--color-text-primary: #212529;--color-text-secondary: #495057;--color-text-tertiary: #868e96;--color-text-disabled: #9ca3af;--color-bg-white: #ffffff;--color-bg-off-white: #f9fafb;--color-bg-paper: rgba(248, 253, 248, .9);--color-bg-overlay: rgba(0, 0, 0, .5);--color-pix-main: #32BCAD;--color-pix-dark: #28A298;--gradient-mint: linear-gradient(145deg, rgba(234, 247, 234, .98) 0%, rgba(250, 255, 250, .96) 25%, rgba(240, 251, 240, .98) 50%, rgba(245, 252, 245, .96) 75%, rgba(248, 253, 248, .98) 100%);--gradient-paper: linear-gradient(135deg, rgba(255, 255, 255, .98) 0%, rgba(250, 255, 250, .95) 100%);--gradient-orange: linear-gradient(135deg, #ff6b35 0%, #e85a2b 100%);--gradient-success: linear-gradient(135deg, #059669 0%, #10b981 100%);--gradient-pix: linear-gradient(135deg, #32BCAD 0%, #28A298 100%);--font-family-base: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-family-heading: "Playfair Display", Georgia, serif;--font-family-mono: "Monaco", "Menlo", "Ubuntu Mono", monospace;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-md: .95rem;--font-size-base: 1rem;--font-size-lg: 1.1rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.85rem;--font-size-4xl: 2.25rem;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--line-height-tight: 1.4;--line-height-normal: 1.5;--line-height-relaxed: 1.6;--line-height-loose: 1.8;--spacing-px: 1px;--spacing-0: 0;--spacing-0-5: .125rem;--spacing-1: .25rem;--spacing-1-5: .375rem;--spacing-2: .5rem;--spacing-2-5: .625rem;--spacing-3: .75rem;--spacing-4: 1rem;--spacing-5: 1.25rem;--spacing-6: 1.5rem;--spacing-8: 2rem;--spacing-10: 2.5rem;--spacing-12: 3rem;--spacing-16: 4rem;--breakpoint-xs: 480px;--breakpoint-sm: 640px;--breakpoint-md: 768px;--breakpoint-lg: 1024px;--breakpoint-xl: 1200px;--breakpoint-2xl: 1536px;--border-radius-none: 0;--border-radius-sm: 4px;--border-radius-base: 8px;--border-radius-md: 12px;--border-radius-lg: 16px;--border-radius-xl: 20px;--border-radius-full: 9999px;--shadow-sm: 0 2px 4px rgba(74, 124, 89, .06);--shadow-base: 0 4px 8px rgba(74, 124, 89, .08);--shadow-md: 0 8px 16px rgba(74, 124, 89, .1);--shadow-lg: 0 20px 40px rgba(74, 124, 89, .12);--shadow-xl: 0 22px 44px rgba(74, 124, 89, .13);--shadow-paper: 0 20px 40px rgba(74, 124, 89, .12), 0 8px 16px rgba(74, 124, 89, .08), 0 4px 6px rgba(74, 124, 89, .06), inset 0 1px 0 rgba(255, 255, 255, .8), inset 0 -1px 0 rgba(74, 124, 89, .05);--shadow-focus: 0 0 0 3px rgba(74, 124, 89, .15);--shadow-focus-error: 0 0 0 3px rgba(220, 38, 38, .1);--shadow-button: 0 3px 6px rgba(255, 107, 53, .25), inset 0 1px 0 rgba(255, 255, 255, .2);--shadow-button-hover: 0 6px 12px rgba(255, 107, 53, .3), inset 0 1px 0 rgba(255, 255, 255, .3);--shadow-pigeon: 0 12px 24px rgba(74, 124, 89, .25);--shadow-input: inset 0 2px 4px rgba(74, 124, 89, .06), inset 0 1px 2px rgba(74, 124, 89, .08), 0 1px 0 rgba(255, 255, 255, .9), 0 2px 4px rgba(74, 124, 89, .05);--shadow-input-focus: 0 0 0 3px rgba(74, 124, 89, .15), 0 8px 16px rgba(74, 124, 89, .1), 0 4px 8px rgba(74, 124, 89, .08), inset 0 1px 2px rgba(74, 124, 89, .05), 0 1px 0 rgba(255, 255, 255, .95);--animation-duration-instant: .2s;--animation-duration-quick: .25s;--animation-duration-normal: .3s;--animation-duration-smooth: .4s;--animation-duration-slow: .6s;--animation-duration-very-slow: .8s;--animation-duration-emergence: .8s;--animation-duration-text-emerge: 1s;--animation-duration-validation-debounce: .3s;--animation-duration-strength-transition: .4s;--easing-samba: cubic-bezier(.68, -.55, .265, 1.55);--easing-bossa: cubic-bezier(.4, 0, .2, 1);--easing-linear: linear;--easing-ease-in: cubic-bezier(.4, 0, 1, 1);--easing-ease-out: cubic-bezier(0, 0, .2, 1);--easing-ease-in-out: cubic-bezier(.4, 0, .2, 1);--easing-spring: cubic-bezier(.16, 1, .3, 1);--easing-emergence: cubic-bezier(.16, 1, .3, 1);--easing-validation: cubic-bezier(.4, 0, .2, 1);--micro-timing-instant: .2s;--micro-timing-quick: .25s;--micro-timing-smooth: .4s;--z-behind: -1;--z-base: 0;--z-content: 1;--z-overlay: 10;--z-dropdown: 20;--z-sticky: 30;--z-modal: 40;--z-popover: 50;--z-tooltip: 60;--z-notification: 70;--form-input-height: 48px;--form-input-padding-x: 1.25rem;--form-input-padding-y: 1rem;--form-input-border-width: 2px;--form-input-border-radius: 16px;--form-input-font-size: .95rem;--form-input-background: repeating-linear-gradient(90deg, transparent, transparent 20px, rgba(74, 124, 89, .01) 20px, rgba(74, 124, 89, .01) 21px), linear-gradient(135deg, rgba(255, 255, 255, .95) 0%, rgba(252, 255, 252, .98) 50%, rgba(250, 254, 250, .95) 100%);--form-input-border: 2px solid rgba(74, 124, 89, .25);--form-label-font-size: .875rem;--form-label-font-weight: 500;--form-label-color: var(--color-primary-dark);--form-label-margin-bottom: .5rem;--form-validation-status-size: 20px;--form-validation-status-border-radius: 50%;--form-validation-status-right: 12px;--form-validation-status-top: 50%;--form-validation-status-transform: translateY(-50%);--form-validation-error-font-size: .75rem;--form-validation-error-color: #dc2626;--form-validation-error-margin-top: .25rem;--form-validation-error-line-height: 1.4;--form-validation-help-font-size: .8rem;--form-validation-help-color: var(--color-text-secondary);--form-validation-help-margin-top: .25rem;--form-validation-help-line-height: 1.4;--form-validation-char-count-font-size: .75rem;--form-validation-char-count-color: var(--color-text-tertiary);--form-validation-char-count-font-weight: 400;--form-max-width-sm: 420px;--form-max-width-base: 600px;--form-max-width-lg: 800px;--form-max-width-login: 700px;--form-max-width-multi-step: 650px;--form-grid-gap: 1.5rem;--form-grid-columns-desktop: 1fr 1fr;--form-grid-columns-mobile: 1fr;--form-grid-min-height: 60px;--form-checkbox-size: 16px;--button-primary-background: linear-gradient(135deg, #ff6b35 0%, #e85a2b 100%);--button-primary-shadow: 0 3px 6px rgba(255, 107, 53, .25), inset 0 1px 0 rgba(255, 255, 255, .2);--button-primary-hover-shadow: 0 6px 12px rgba(255, 107, 53, .3), inset 0 1px 0 rgba(255, 255, 255, .3);--button-primary-press-transform: scale(.98);--button-primary-ripple-color: rgba(255, 255, 255, .3);--button-size-sm-padding: .75rem 1.5rem;--button-size-sm-font-size: .875rem;--button-size-md-padding: 1rem 2rem;--button-size-md-font-size: 1rem;--button-size-lg-padding: 1.25rem 2.5rem;--button-size-lg-font-size: 1.1rem;--button-loading-opacity: .8;--button-loading-cursor: wait;--button-loading-icon-size: 16px;--button-disabled-opacity: .6;--button-disabled-cursor: not-allowed;--button-pressed-transform: scale(.98);--button-pressed-transition: transform .1s ease;--password-strength-margin-top: .75rem;--password-strength-padding: 1rem;--password-strength-background: linear-gradient(135deg, rgba(74, 124, 89, .02) 0%, rgba(255, 255, 255, .95) 100%);--password-strength-border: 1px solid rgba(74, 124, 89, .1);--password-strength-border-radius: 12px;--password-strength-header-display: flex;--password-strength-header-justify: space-between;--password-strength-header-align: center;--password-strength-header-margin-bottom: .5rem;--password-strength-label-font-size: .85rem;--password-strength-label-color: var(--color-text-secondary);--password-strength-label-font-weight: 500;--password-strength-level-font-size: .85rem;--password-strength-level-font-weight: 600;--password-strength-level-transition: color .3s ease;--password-strength-bar-width: 100%;--password-strength-bar-height: 6px;--password-strength-bar-background: rgba(0, 0, 0, .1);--password-strength-bar-border-radius: 3px;--password-strength-bar-overflow: hidden;--password-strength-bar-margin-bottom: .75rem;--password-strength-fill-height: 100%;--password-strength-fill-border-radius: 3px;--password-strength-fill-transition: all .4s cubic-bezier(.4, 0, .2, 1);--password-strength-criteria-gap: .4rem;--password-strength-criteria-font-size: .8rem;--password-strength-criteria-icon-size: 16px;--password-strength-tip-margin-top: .75rem;--password-strength-tip-padding: .75rem;--password-strength-tip-background: rgba(16, 185, 129, .05);--password-strength-tip-border: 1px solid rgba(16, 185, 129, .2);--password-strength-tip-border-radius: 8px;--password-strength-tip-font-size: .8rem;--password-strength-tip-color: #059669;--pigeon-size-sm: 44px;--pigeon-size-md: 78px;--pigeon-size-lg: 101px;--pigeon-size-xl: 156px;--pigeon-size-xxl: 203px;--step-indicator-size: 40px;--step-indicator-size-small: 35px;--navigation-height: 60px;--navigation-logo-size: 44px;--a11y-focus-ring-width: 3px;--a11y-focus-ring-offset: 2px;--a11y-min-touch-target: 44px;--a11y-focus-ring-color: rgba(74, 124, 89, .15);--a11y-focus-ring-error-color: rgba(220, 38, 38, .1);--a11y-focus-outline: none;--a11y-focus-transition: all var(--micro-timing-quick) var(--easing-bossa);--a11y-visually-hidden-position: absolute;--a11y-visually-hidden-width: 1px;--a11y-visually-hidden-height: 1px;--a11y-visually-hidden-padding: 0;--a11y-visually-hidden-margin: -1px;--a11y-visually-hidden-overflow: hidden;--a11y-visually-hidden-clip: rect(0, 0, 0, 0);--a11y-visually-hidden-white-space: nowrap;--a11y-visually-hidden-border: 0;--texture-paper: repeating-linear-gradient(45deg, transparent, transparent 10px, rgba(74, 124, 89, .02) 10px, rgba(74, 124, 89, .02) 11px);--texture-subtle: repeating-linear-gradient(90deg, transparent, transparent 20px, rgba(74, 124, 89, .01) 20px, rgba(74, 124, 89, .01) 21px);--backdrop-blur: blur(16px) saturate(130%) brightness(1.02);--opacity-0: 0;--opacity-5: .05;--opacity-10: .1;--opacity-20: .2;--opacity-30: .3;--opacity-40: .4;--opacity-50: .5;--opacity-60: .6;--opacity-70: .7;--opacity-80: .8;--opacity-90: .9;--opacity-95: .95;--opacity-100: 1;--parallax-slow: .3;--parallax-normal: .5;--parallax-fast: .7;--stagger-title: .5s;--stagger-subtitle: .7s;--stagger-description: .9s;--stagger-feature-1: 1.1s;--stagger-feature-2: 1.2s;--stagger-feature-3: 1.3s}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Inter,system-ui,-apple-system,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;color:#2d4a3e;line-height:1.6;overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:Playfair Display,serif;font-weight:700;line-height:1.2}.container{max-width:800px;margin:0 auto;padding:0 1rem;position:relative}:focus{outline:2px solid #4a7c59;outline-offset:3px;border-radius:2px}:focus:not(:focus-visible){outline:none}::selection{background:#4a7c5933;color:#2d4a3e}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#4a7c594d;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#4a7c5980}
