@import"https://fonts.googleapis.com/css2?family=Lalezar&display=swap";@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-border-style:solid;--tw-font-weight:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-duration:initial;--tw-ease:initial;--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-gradient-position:initial;--tw-gradient-from:#0000;--tw-gradient-via:#0000;--tw-gradient-to:#0000;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%}}}@layer theme{:root,:host{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--color-red-50:oklch(97.1% .013 17.38);--color-red-200:oklch(88.5% .062 18.334);--color-red-300:oklch(80.8% .114 19.571);--color-red-400:oklch(70.4% .191 22.216);--color-red-500:oklch(63.7% .237 25.331);--color-red-600:oklch(57.7% .245 27.325);--color-red-800:oklch(44.4% .177 26.899);--color-red-900:oklch(39.6% .141 25.723);--color-yellow-400:oklch(85.2% .199 91.936);--color-green-400:oklch(79.2% .209 151.711);--color-gray-100:oklch(96.7% .003 264.542);--color-gray-200:oklch(92.8% .006 264.531);--color-gray-300:oklch(87.2% .01 258.338);--color-gray-400:oklch(70.7% .022 261.325);--color-gray-500:oklch(55.1% .027 264.364);--color-gray-600:oklch(44.6% .03 256.802);--color-gray-700:oklch(37.3% .034 259.733);--color-gray-800:oklch(27.8% .033 256.848);--color-gray-900:oklch(21% .034 264.665);--color-white:#fff;--spacing:.25rem;--container-md:28rem;--container-6xl:72rem;--container-7xl:80rem;--text-xs:.75rem;--text-xs--line-height:calc(1/.75);--text-sm:.875rem;--text-sm--line-height:calc(1.25/.875);--text-lg:1.125rem;--text-lg--line-height:calc(1.75/1.125);--text-2xl:1.5rem;--text-2xl--line-height:calc(2/1.5);--text-3xl:1.875rem;--text-3xl--line-height: 1.2 ;--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5/2.25);--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--radius-lg:.5rem;--ease-out:cubic-bezier(0,0,.2,1);--animate-spin:spin 1s linear infinite;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-primary:#1d3548;--color-primary-50:#e8edf0;--color-primary-100:#c5d2d9;--color-primary-200:#9fb5c0;--color-primary-300:#7898a7;--color-primary-400:#5a8193;--color-primary-500:#3c6a7f;--color-primary-600:#365f72;--color-primary-700:#2d5160;--color-primary-800:#25434e;--color-primary-900:#152530;--color-primary-dark:#152530;--font-family-sans:"Lalezar",system-ui,sans-serif}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}:root{--color-primary:#1d3548;--color-primary-light:#2a4a5f;--color-primary-dark:#152530;--color-white:#fff}*{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;box-sizing:border-box}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-overflow-scrolling:touch;width:100%;max-width:100%;overflow-x:hidden}body{background-color:var(--color-white);font-family:var(--font-sans);color:var(--color-gray-900);transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.3s;transition-duration:.3s}@media(prefers-color-scheme:dark){body{background-color:var(--color-gray-900);color:var(--color-gray-100)}}body{background-color:#fff;width:100%;max-width:100%;min-height:100vh;position:relative;overflow-x:hidden}html.light,html:not(.dark){background-color:var(--color-white);color:var(--color-gray-900);background-color:#fff!important}html.light body,html:not(.dark) body{background-color:#fff!important}html.dark{background-color:var(--color-gray-900);color:var(--color-gray-100);background-color:#111827}html.dark body{background-color:#111827}section{z-index:1;box-sizing:border-box;will-change:transform;contain:layout style paint;width:100%;max-width:100%;position:relative;overflow-x:hidden}img,video,iframe,embed,object{loading:lazy;will-change:auto;max-width:100%;height:auto}img.loaded{will-change:auto}}@layer components{.btn-primary{border-radius:var(--radius-lg);background-color:var(--color-primary);padding-inline:calc(var(--spacing)*6);padding-block:calc(var(--spacing)*3);--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);color:var(--color-white)}@media(hover:hover){.btn-primary:hover{background-color:var(--color-primary-700)}}.btn-primary:active{background-color:var(--color-primary-800)}.btn-primary{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.2s;transition-duration:.2s}.btn-primary:focus{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(2px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);--tw-ring-color:var(--color-primary);--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,)0 0 0 var(--tw-ring-offset-width)var(--tw-ring-offset-color);--tw-outline-style:none;outline-style:none}.btn-secondary{border-radius:var(--radius-lg);background-color:var(--color-gray-200);padding-inline:calc(var(--spacing)*6);padding-block:calc(var(--spacing)*3);--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);color:var(--color-gray-900)}@media(prefers-color-scheme:dark){.btn-secondary{background-color:var(--color-gray-700);color:var(--color-gray-100)}}@media(hover:hover){.btn-secondary:hover{background-color:var(--color-gray-300)}}@media(prefers-color-scheme:dark){@media(hover:hover){.btn-secondary:hover{background-color:var(--color-gray-600)}}}.btn-secondary{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.2s;transition-duration:.2s}.btn-secondary:focus{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(2px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);--tw-ring-color:var(--color-gray-400);--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,)0 0 0 var(--tw-ring-offset-width)var(--tw-ring-offset-color);--tw-outline-style:none;outline-style:none}.card{border-radius:var(--radius-lg);background-color:var(--color-white);padding:calc(var(--spacing)*6);--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a),0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}@media(prefers-color-scheme:dark){.card{background-color:var(--color-gray-800)}}.card{border-style:var(--tw-border-style);border-width:1px;border-color:var(--color-gray-200)}@media(prefers-color-scheme:dark){.card{border-color:var(--color-gray-700)}}.card{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.3s;transition-duration:.3s}.card:hover{--tw-translate-y:calc(var(--spacing)*-1);translate:var(--tw-translate-x)var(--tw-translate-y);transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,);--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a),0 8px 10px -6px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.floating-navbar{z-index:1000;pointer-events:none;width:100%;max-width:100%;position:fixed;top:0;left:0;right:0;overflow-x:hidden}.navbar-main{z-index:10;-webkit-backdrop-filter:blur(10px);pointer-events:auto;background:#fffffff2;border-bottom:none;width:100%;max-width:100%;transition:background .3s;position:relative;overflow-x:hidden}.dark .navbar-main{background:#111827f2;border-bottom:none}.navbar-inner{box-sizing:border-box;width:100%;max-width:1280px;margin:0 auto;padding:0 1rem}@media(min-width:640px){.navbar-inner{padding:0 1.5rem}}@media(min-width:1024px){.navbar-inner{padding:0 2rem}}.navbar-content{box-sizing:border-box;justify-content:space-between;align-items:center;gap:1rem;width:100%;max-width:100%;min-height:64px;display:flex}@media(min-width:768px){.navbar-content{gap:2rem;min-height:72px}}.navbar-logo{flex-shrink:0}.logo-link{align-items:center;gap:.5rem;text-decoration:none;transition:opacity .2s;display:flex}@media(min-width:640px){.logo-link{gap:.75rem}}.logo-link:hover{opacity:.8}.logo-image{object-fit:contain;border-radius:.5rem;width:2rem;height:2rem}@media(min-width:640px){.logo-image{border-radius:.625rem;width:2.5rem;height:2.5rem}}.logo-text{color:var(--color-primary);font-size:1.125rem;font-weight:400;font-family:var(--font-family-sans)}@media(min-width:640px){.logo-text{font-size:1.25rem}}.dark .logo-text{color:#fff}.navbar-desktop-nav{flex:1;justify-content:center;align-items:center;gap:.5rem;display:none}@media(min-width:768px){.navbar-desktop-nav{gap:.75rem;display:flex}}@media(min-width:1024px){.navbar-desktop-nav{gap:1rem}}.nav-link{color:#374151;border-radius:.5rem;padding:.5rem 1rem;font-size:.875rem;font-weight:700;text-decoration:none;transition:color .2s,background .2s;position:relative}@media(min-width:1024px){.nav-link{padding:.625rem 1.25rem;font-size:.9375rem}}.dark .nav-link{color:#d1d5db}.nav-link:hover{color:var(--color-primary);background:#1d35480d}.dark .nav-link:hover{color:var(--color-primary-300);background:#ffffff0d}.nav-link-underline{background:var(--color-primary);border-radius:2px;width:0;height:2px;transition:width .2s;position:absolute;bottom:.25rem;left:50%;transform:translate(-50%)}.nav-link:hover .nav-link-underline{width:70%}.nav-dropdown{position:relative}.nav-link-dropdown{cursor:pointer}.nav-dropdown-menu{-webkit-backdrop-filter:blur(10px);opacity:0;visibility:hidden;z-index:100;background:#fffffff2;border-radius:.75rem;min-width:180px;margin-top:.5rem;padding:.5rem;transition:opacity .2s,visibility .2s,transform .2s;position:absolute;top:100%;left:50%;transform:translate(-50%)translateY(-10px);box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.dark .nav-dropdown-menu{background:#111827f2;box-shadow:0 4px 6px -1px #0000004d,0 2px 4px -1px #0003}.nav-dropdown-menu.dropdown-open{opacity:1;visibility:visible;transform:translate(-50%)translateY(0)}.nav-dropdown-item{color:#374151;border-radius:.5rem;padding:.625rem 1rem;font-size:.875rem;font-weight:500;text-decoration:none;transition:background .2s,color .2s;display:block}.dark .nav-dropdown-item{color:#d1d5db}.nav-dropdown-item:hover{color:var(--color-primary);background:#1d35480d}.dark .nav-dropdown-item:hover{color:var(--color-primary-300);background:#ffffff0d}.services-popup{z-index:1000;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .2s,visibility .2s,transform .2s;position:fixed;transform:translate(-50%)translateY(-10px)}.services-popup.popup-open{opacity:1;visibility:visible;pointer-events:auto;transform:translate(-50%)translateY(0)}.services-popup-content{-webkit-backdrop-filter:blur(10px);background:#111827f2;border-radius:.75rem;min-width:180px;padding:.5rem;box-shadow:0 4px 6px -1px #0000004d,0 2px 4px -1px #0003}html.dark .services-popup-content{background:#fffffff2;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.services-popup-item{color:#d1d5db;font-size:.875rem;font-weight:500;font-family:var(--font-family-sans);border-radius:.5rem;padding:.625rem 1rem;text-decoration:none;transition:background .2s,color .2s;display:block}html.dark .services-popup-item{color:#374151}.services-popup-item:hover{color:var(--color-primary-300);background:#ffffff1a}html.dark .services-popup-item:hover{color:var(--color-primary);background:#1d35481a}.navbar-actions{flex-shrink:0;align-items:center;gap:.5rem;display:flex}@media(min-width:640px){.navbar-actions{gap:.75rem}}.action-button{color:#374151;cursor:pointer;background:0 0;border:none;border-radius:.5rem;justify-content:center;align-items:center;width:2.5rem;height:2.5rem;padding:0;transition:background .2s,color .2s;display:flex}.dark .action-button{color:#d1d5db}.action-button:hover{color:var(--color-primary);background:#1d35480d}.dark .action-button:hover{color:var(--color-primary-300);background:#ffffff0d}.action-button:active{opacity:.7}.theme-icon,.menu-icon{width:1.25rem;height:1.25rem}@media(max-width:767px){.theme-icon{width:1.75rem;height:1.75rem}.action-button.theme-toggle,.action-button.background-animation-toggle{width:3rem;min-width:3rem;height:3rem;min-height:3rem}}@media(min-width:640px){.theme-icon,.menu-icon{width:1.5rem;height:1.5rem}}.floating-menu-btn{width:3.5rem;height:3.5rem;color:var(--color-primary);border:2px solid var(--color-primary);cursor:pointer;z-index:997;background:#fff;border-radius:50%;justify-content:center;align-items:center;padding:0;transition:all .3s;display:flex;position:fixed;bottom:1.5rem;right:1.5rem;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.dark .floating-menu-btn{background:var(--color-primary);color:#fff;border-color:var(--color-primary-300)}.floating-menu-btn:hover{background:var(--color-primary-50);border-color:var(--color-primary-600);transform:scale(1.05);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d}.dark .floating-menu-btn:hover{background:var(--color-primary-700);border-color:var(--color-primary-400)}.floating-menu-btn:active{transform:scale(.95)}.floating-menu-btn.menu-open{color:#fff;background:#dc2626;border-color:#dc2626}.floating-menu-btn.menu-open:hover{background:#b91c1c;border-color:#b91c1c}.floating-menu-btn .menu-icon{width:1.5rem;height:1.5rem;transition:transform .3s}@media(min-width:768px){.floating-menu-btn{display:none}}.mobile-menu-backdrop{-webkit-backdrop-filter:blur(8px);opacity:0;visibility:hidden;pointer-events:none;background:#0009;transition:opacity .3s,visibility .3s;z-index:9999!important;position:fixed!important;inset:0!important}.mobile-menu-backdrop.backdrop-open{opacity:1!important;visibility:visible!important;pointer-events:auto!important}@media(min-width:768px){.mobile-menu-backdrop{display:none!important}}.mobile-menu-popup{opacity:0;visibility:hidden;pointer-events:none;background:#fff;border-radius:1rem;flex-direction:column;width:90%;max-width:400px;max-height:80vh;transition:opacity .3s,visibility .3s,transform .3s;overflow:hidden;transform:translate(-50%,-50%)scale(.9);box-shadow:0 25px 50px -12px #00000040;z-index:10000!important;display:flex!important;position:fixed!important;top:50%!important;left:50%!important}@media(min-width:768px){.mobile-menu-popup{display:none!important}}.dark .mobile-menu-popup{background:#1f2937;box-shadow:0 20px 25px -5px #0000004d,0 10px 10px -5px #0003}.mobile-menu-popup.popup-open{opacity:1!important;visibility:visible!important;pointer-events:auto!important;transform:translate(-50%,-50%)scale(1)!important}.mobile-popup-header{border-bottom:1px solid #0000001a;justify-content:space-between;align-items:center;min-height:64px;padding:1.25rem 1.5rem;display:flex}.dark .mobile-popup-header{border-bottom:1px solid #ffffff1a}.mobile-popup-title{color:var(--color-primary);font-size:1.5rem;font-weight:600;font-family:var(--font-family-sans);margin:0}.dark .mobile-popup-title{color:#fff}.mobile-popup-close-btn{width:2.5rem;height:2.5rem;color:var(--color-primary);cursor:pointer;background:0 0;border:none;border-radius:.5rem;justify-content:center;align-items:center;padding:0;transition:background .2s,color .2s;display:flex}.dark .mobile-popup-close-btn{color:var(--color-primary-300)}.mobile-popup-close-btn:hover{color:var(--color-primary);background:#1d35480d}.dark .mobile-popup-close-btn:hover{color:var(--color-primary-200);background:#ffffff0d}.mobile-popup-content{flex-direction:column;flex:1;gap:.5rem;padding:1.5rem;display:flex;overflow-y:auto}.mobile-popup-link{color:var(--color-primary);text-align:left;cursor:pointer;width:100%;font-weight:500;font-family:var(--font-family-sans);background:0 0;border:none;border-radius:.75rem;justify-content:space-between;align-items:center;padding:1rem 1.25rem;line-height:1.5;text-decoration:none;transition:background .2s,color .2s,transform .2s;display:flex;font-size:1.125rem!important}.dark .mobile-popup-link{color:var(--color-primary-300)}.mobile-popup-link:hover{color:var(--color-primary);background:#1d35480d}.dark .mobile-popup-link:hover{color:var(--color-primary-200);background:#ffffff0d}.mobile-popup-dropdown{position:relative}.mobile-popup-dropdown-toggle{text-align:left;cursor:pointer;width:100%;color:var(--color-primary);font-family:var(--font-family-sans);background:0 0;border:none;border-radius:.75rem;justify-content:space-between;align-items:center;padding:1rem 1.25rem;font-weight:500;line-height:1.5;text-decoration:none;transition:background .2s,color .2s,transform .2s;display:flex;position:relative;overflow:visible;font-size:1.125rem!important}.dark .mobile-popup-dropdown-toggle{color:var(--color-primary-300)}.mobile-popup-dropdown-toggle:hover{color:var(--color-primary);background:#1d35480d}.dark .mobile-popup-dropdown-toggle:hover{color:var(--color-primary-200);background:#ffffff0d}.mobile-popup-dropdown-toggle[aria-expanded=true]{background:#1d354814;animation:3s ease-in-out infinite gentlePulse}html.dark .mobile-popup-dropdown-toggle[aria-expanded=true]{background:#ffffff14}@keyframes gentlePulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.95;transform:scale(1.02)}}.mobile-popup-dropdown-toggle:hover{transform:scale(1.02)}.mobile-popup-dropdown-toggle[aria-expanded=true]:hover{animation:none;transform:scale(1.05)}.mobile-popup-dropdown-toggle .dropdown-arrow{flex-shrink:0;transition:transform .3s}.mobile-popup-dropdown-toggle[aria-expanded=true] .dropdown-arrow{transform:rotate(180deg)}.mobile-popup-dropdown-menu{opacity:0;box-sizing:border-box;background:#1d35480d;border-radius:.5rem;width:100%;max-height:0;margin-top:0;margin-left:0;margin-right:0;padding:0;transition:max-height .3s,opacity .2s,padding .2s,margin .2s;overflow:hidden}.dark .mobile-popup-dropdown-menu{background:#ffffff0d}.mobile-popup-dropdown-menu.dropdown-open{opacity:1;max-height:200px;margin-top:.5rem;margin-left:0;margin-right:0;padding:.5rem 0}.mobile-popup-dropdown-item{color:var(--color-primary);font-size:1rem;font-weight:500;font-family:var(--font-family-sans);text-align:left;box-sizing:border-box;border-radius:.5rem;width:100%;padding:.75rem 1.25rem .75rem 2rem;text-decoration:none;transition:background .2s,color .2s;display:block}.dark .mobile-popup-dropdown-item{color:var(--color-primary-300)}.mobile-popup-dropdown-item:hover{color:var(--color-primary);background:#1d35481a}.dark .mobile-popup-dropdown-item:hover{color:var(--color-primary-200);background:#ffffff1a}}@layer utilities{.visible{visibility:visible}.relative{position:relative}.static{position:static}.z-10{z-index:10}.container{width:100%}@media(min-width:40rem){.container{max-width:40rem}}@media(min-width:48rem){.container{max-width:48rem}}@media(min-width:64rem){.container{max-width:64rem}}@media(min-width:80rem){.container{max-width:80rem}}@media(min-width:96rem){.container{max-width:96rem}}.mx-auto{margin-inline:auto}.mt-1{margin-top:calc(var(--spacing)*1)}.mt-2{margin-top:calc(var(--spacing)*2)}.mt-3{margin-top:calc(var(--spacing)*3)}.mt-4{margin-top:calc(var(--spacing)*4)}.mt-6{margin-top:calc(var(--spacing)*6)}.mr-2{margin-right:calc(var(--spacing)*2)}.mb-0{margin-bottom:calc(var(--spacing)*0)}.mb-1{margin-bottom:calc(var(--spacing)*1)}.mb-2{margin-bottom:calc(var(--spacing)*2)}.mb-3{margin-bottom:calc(var(--spacing)*3)}.mb-4{margin-bottom:calc(var(--spacing)*4)}.mb-6{margin-bottom:calc(var(--spacing)*6)}.mb-8{margin-bottom:calc(var(--spacing)*8)}.mb-12{margin-bottom:calc(var(--spacing)*12)}.ml-4{margin-left:calc(var(--spacing)*4)}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-block{display:inline-block}.h-4{height:calc(var(--spacing)*4)}.h-4\.5{height:calc(var(--spacing)*4.5)}.h-5{height:calc(var(--spacing)*5)}.h-6{height:calc(var(--spacing)*6)}.h-10{height:calc(var(--spacing)*10)}.h-12{height:calc(var(--spacing)*12)}.h-24{height:calc(var(--spacing)*24)}.h-48{height:calc(var(--spacing)*48)}.min-h-\[80px\]{min-height:80px}.min-h-screen{min-height:100vh}.w-4{width:calc(var(--spacing)*4)}.w-4\.5{width:calc(var(--spacing)*4.5)}.w-5{width:calc(var(--spacing)*5)}.w-6{width:calc(var(--spacing)*6)}.w-10{width:calc(var(--spacing)*10)}.w-12{width:calc(var(--spacing)*12)}.w-24{width:calc(var(--spacing)*24)}.w-48{width:calc(var(--spacing)*48)}.w-64{width:calc(var(--spacing)*64)}.w-full{width:100%}.max-w-6xl{max-width:var(--container-6xl)}.max-w-7xl{max-width:var(--container-7xl)}.max-w-md{max-width:var(--container-md)}.min-w-0{min-width:calc(var(--spacing)*0)}.flex-1{flex:1}.flex-shrink-0{flex-shrink:0}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.animate-spin{animation:var(--animate-spin)}.resize{resize:both}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-col{flex-direction:column}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-2{gap:calc(var(--spacing)*2)}.gap-3{gap:calc(var(--spacing)*3)}.gap-4{gap:calc(var(--spacing)*4)}.gap-6{gap:calc(var(--spacing)*6)}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*1)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*1)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*2)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*2)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*3)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*3)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*4)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*4)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-6>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*6)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*6)*calc(1 - var(--tw-space-y-reverse)))}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.border{border-style:var(--tw-border-style);border-width:1px}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-gray-200{border-color:var(--color-gray-200)}.border-gray-300{border-color:var(--color-gray-300)}.border-red-200{border-color:var(--color-red-200)}.border-white\/20{border-color:#fff3}@supports (color:color-mix(in lab,red,red)){.border-white\/20{border-color:color-mix(in oklab,var(--color-white)20%,transparent)}}.bg-primary{background-color:var(--color-primary)}.bg-red-50{background-color:var(--color-red-50)}.bg-white{background-color:var(--color-white)}.bg-white\/10{background-color:#ffffff1a}@supports (color:color-mix(in lab,red,red)){.bg-white\/10{background-color:color-mix(in oklab,var(--color-white)10%,transparent)}}.bg-white\/20{background-color:#fff3}@supports (color:color-mix(in lab,red,red)){.bg-white\/20{background-color:color-mix(in oklab,var(--color-white)20%,transparent)}}.object-cover{object-fit:cover}.p-2{padding:calc(var(--spacing)*2)}.p-3{padding:calc(var(--spacing)*3)}.p-4{padding:calc(var(--spacing)*4)}.p-6{padding:calc(var(--spacing)*6)}.p-8{padding:calc(var(--spacing)*8)}.px-3{padding-inline:calc(var(--spacing)*3)}.px-4{padding-inline:calc(var(--spacing)*4)}.px-6{padding-inline:calc(var(--spacing)*6)}.py-2{padding-block:calc(var(--spacing)*2)}.py-2\.5{padding-block:calc(var(--spacing)*2.5)}.py-4{padding-block:calc(var(--spacing)*4)}.py-8{padding-block:calc(var(--spacing)*8)}.py-12{padding-block:calc(var(--spacing)*12)}.pt-4{padding-top:calc(var(--spacing)*4)}.pt-16{padding-top:calc(var(--spacing)*16)}.text-center{text-align:center}.font-sans{font-family:var(--font-sans)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.text-gray-500{color:var(--color-gray-500)}.text-gray-600{color:var(--color-gray-600)}.text-gray-700{color:var(--color-gray-700)}.text-green-400{color:var(--color-green-400)}.text-red-400{color:var(--color-red-400)}.text-red-500{color:var(--color-red-500)}.text-red-600{color:var(--color-red-600)}.text-white{color:var(--color-white)}.text-white\/80{color:#fffc}@supports (color:color-mix(in lab,red,red)){.text-white\/80{color:color-mix(in oklab,var(--color-white)80%,transparent)}}.text-yellow-400{color:var(--color-yellow-400)}.opacity-25{opacity:.25}.opacity-75{opacity:.75}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-xl{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a),0 8px 10px -6px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}@media(hover:hover){.hover\:border-primary:hover{border-color:var(--color-primary)}.hover\:bg-gray-100:hover{background-color:var(--color-gray-100)}.hover\:bg-primary\/10:hover{background-color:#1d35481a}@supports (color:color-mix(in lab,red,red)){.hover\:bg-primary\/10:hover{background-color:color-mix(in oklab,var(--color-primary)10%,transparent)}}.hover\:bg-red-500\/20:hover{background-color:#fb2c3633}@supports (color:color-mix(in lab,red,red)){.hover\:bg-red-500\/20:hover{background-color:color-mix(in oklab,var(--color-red-500)20%,transparent)}}.hover\:bg-white\/20:hover{background-color:#fff3}@supports (color:color-mix(in lab,red,red)){.hover\:bg-white\/20:hover{background-color:color-mix(in oklab,var(--color-white)20%,transparent)}}.hover\:text-gray-700:hover{color:var(--color-gray-700)}.hover\:underline:hover{text-decoration-line:underline}.hover\:shadow-lg:hover{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a),0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}@media(min-width:48rem){.md\:hidden{display:none}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:pt-20{padding-top:calc(var(--spacing)*20)}.md\:text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}}@media(min-width:64rem){.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(prefers-color-scheme:dark){.dark\:border-gray-600{border-color:var(--color-gray-600)}.dark\:border-gray-700{border-color:var(--color-gray-700)}.dark\:border-primary-300{border-color:var(--color-primary-300)}.dark\:border-primary\/20{border-color:#1d354833}@supports (color:color-mix(in lab,red,red)){.dark\:border-primary\/20{border-color:color-mix(in oklab,var(--color-primary)20%,transparent)}}.dark\:border-red-800{border-color:var(--color-red-800)}.dark\:bg-gray-700{background-color:var(--color-gray-700)}.dark\:bg-gray-800{background-color:var(--color-gray-800)}.dark\:bg-gray-900{background-color:var(--color-gray-900)}.dark\:bg-primary{background-color:var(--color-primary)}.dark\:bg-primary-600{background-color:var(--color-primary-600)}.dark\:bg-primary\/10{background-color:#1d35481a}@supports (color:color-mix(in lab,red,red)){.dark\:bg-primary\/10{background-color:color-mix(in oklab,var(--color-primary)10%,transparent)}}.dark\:bg-primary\/20{background-color:#1d354833}@supports (color:color-mix(in lab,red,red)){.dark\:bg-primary\/20{background-color:color-mix(in oklab,var(--color-primary)20%,transparent)}}.dark\:bg-red-900\/20{background-color:#82181a33}@supports (color:color-mix(in lab,red,red)){.dark\:bg-red-900\/20{background-color:color-mix(in oklab,var(--color-red-900)20%,transparent)}}.dark\:text-gray-300{color:var(--color-gray-300)}.dark\:text-gray-400{color:var(--color-gray-400)}.dark\:text-primary-300{color:var(--color-primary-300)}.dark\:text-primary-400{color:var(--color-primary-400)}.dark\:text-primary-600{color:var(--color-primary-600)}.dark\:text-red-300{color:var(--color-red-300)}.dark\:text-red-400{color:var(--color-red-400)}.dark\:text-white{color:var(--color-white)}@media(hover:hover){.dark\:hover\:border-primary-400:hover{border-color:var(--color-primary-400)}.dark\:hover\:bg-gray-700:hover{background-color:var(--color-gray-700)}.dark\:hover\:bg-gray-700\/50:hover{background-color:#36415380}@supports (color:color-mix(in lab,red,red)){.dark\:hover\:bg-gray-700\/50:hover{background-color:color-mix(in oklab,var(--color-gray-700)50%,transparent)}}.dark\:hover\:bg-primary\/20:hover{background-color:#1d354833}@supports (color:color-mix(in lab,red,red)){.dark\:hover\:bg-primary\/20:hover{background-color:color-mix(in oklab,var(--color-primary)20%,transparent)}}.dark\:hover\:bg-red-500\/10:hover{background-color:#fb2c361a}@supports (color:color-mix(in lab,red,red)){.dark\:hover\:bg-red-500\/10:hover{background-color:color-mix(in oklab,var(--color-red-500)10%,transparent)}}.dark\:hover\:text-gray-200:hover{color:var(--color-gray-200)}}}.text-primary{color:var(--color-primary)}@media(prefers-color-scheme:dark){.text-primary{color:var(--color-primary-300)}}.bg-primary-gradient{--tw-gradient-position:to right in oklab;background-image:linear-gradient(var(--tw-gradient-stops));--tw-gradient-from:var(--color-primary);--tw-gradient-to:var(--color-primary-700);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}}.home-section{isolation:isolate;position:relative}.space-canvas{z-index:0;pointer-events:none;width:100%;height:100%;position:fixed;top:0;left:0}.home-cards-container{flex-direction:column;gap:2rem;width:100%;max-width:1200px;margin:0 auto;display:flex}@media(min-width:1024px){.home-cards-container{flex-direction:row;justify-content:center;align-items:center;gap:3rem}}@media(max-width:1023px){.home-cards-container{gap:2rem;padding:0 1rem}}@media(max-width:640px){.home-cards-container{gap:1.5rem;padding:0 .75rem}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInLeft{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:translate(0)}}@keyframes fadeInRight{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.home-card{background:var(--color-primary);-webkit-backdrop-filter:blur(20px);border:1px solid var(--color-primary-300);opacity:0;border-radius:2rem;transition:all .3s;animation:.8s ease-out forwards fadeInUp;overflow:hidden;box-shadow:0 8px 32px #1d354826,0 4px 16px #1d35481a}.home-card.animate-in{opacity:1}.home-card-photo{animation-delay:.2s}@media(min-width:1024px){.home-card-photo{animation:.8s ease-out .2s forwards fadeInLeft}.home-card-description{animation:.8s ease-out .4s forwards fadeInRight}}.dark .home-card{background:var(--color-white);border:1px solid var(--color-primary-200);box-shadow:0 8px 32px #00000026,0 4px 16px #0000001a}.home-card:hover{border-color:var(--color-primary-200);transform:translateY(-4px);box-shadow:0 12px 40px #1d354833,0 6px 20px #1d354826}.dark .home-card:hover{border-color:var(--color-primary-300);box-shadow:0 12px 40px #0003,0 6px 20px #00000026}.home-card-photo{flex:none;justify-content:center;align-items:center;width:100%;max-width:400px;margin:0 auto;padding:0;display:flex}@media(min-width:1024px){.home-card-photo{max-width:450px;margin:0}}.home-photo{object-fit:cover;opacity:0;border-radius:2rem;width:100%;height:auto;transition:transform .5s;animation:.8s ease-out .3s forwards scaleIn;display:block}.home-photo.animate-in{opacity:1}.home-card-photo:hover .home-photo{transform:scale(1.05)}.home-card-description{opacity:0;text-align:center;flex-direction:column;flex:1;gap:1.5rem;padding:2.5rem;display:flex;position:relative}.home-card-description>.home-card-title-wrapper{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;width:100%;display:flex}@media(max-width:1023px){.home-card-description{animation:.8s ease-out .4s forwards fadeInUp}}@media(min-width:640px){.home-card-description{text-align:left;padding:3rem}}@media(min-width:1024px){.home-card-description{max-width:600px}}.home-card-title{color:var(--color-white);font-size:2rem;font-weight:900;font-family:var(--font-family-sans);opacity:0;text-align:center;margin:0;padding:0;line-height:.95;animation:.6s ease-out .5s forwards fadeInUp;display:inline-block}@media(min-width:640px){.home-card-title{text-align:left;margin-bottom:0;padding-bottom:0;font-size:2.5rem;font-weight:900;line-height:.95}}.dark .home-card-title{color:var(--color-primary)}.home-card-title{display:inline-block}.home-card-title .role-text{margin-left:.5rem}.role-text{letter-spacing:.025em;color:#1d3548;opacity:0;clip-path:inset(0 100% 0 0);background-color:#fffffff2;border-radius:15px;margin:0;padding:.375rem .75rem;font-size:.875rem;font-style:normal;font-weight:600;transition:background-color .3s,color .3s;animation:.6s ease-out .6s forwards roleWriteIn;display:inline-block}@media(min-width:640px){.role-text{padding:.5rem 1rem;font-size:1rem}}html.dark .role-text{color:#fff;background-color:#111827f2}@keyframes roleWriteIn{0%{opacity:0;clip-path:inset(0 100% 0 0)}50%{opacity:1;clip-path:inset(0 50% 0 0)}to{opacity:1;clip-path:inset(0 0% 0 0)}}@keyframes roleWriteOut{0%{opacity:1;clip-path:inset(0 0% 0 0)}50%{opacity:.5;clip-path:inset(0 50% 0 0)}to{opacity:0;clip-path:inset(0 100% 0 0)}}.role-text.fade-out{animation:.5s ease-out forwards roleWriteOut}.home-card-text{color:var(--color-primary-100);opacity:0;margin:0;font-size:1rem;line-height:1.7;animation:.6s ease-out forwards fadeInUp}.home-card-text:first-of-type{animation-delay:.7s}.home-card-text:nth-of-type(2){animation-delay:.9s}@media(min-width:640px){.home-card-text{font-size:1.125rem}}.dark .home-card-text{color:var(--color-primary-700)}@media(max-width:1023px){.home-card{border-radius:1.5rem;width:100%;max-width:100%}.home-card-photo{order:1;width:100%;box-shadow:none!important;-webkit-backdrop-filter:none!important;background:0 0!important;border:none!important}.home-card-description{text-align:center;order:2;width:100%;padding:2rem 1.5rem}.home-photo{border-radius:1.5rem;width:100%;max-width:280px;height:auto;margin:0 auto}.home-card-title{margin-bottom:1rem;font-size:1.75rem}.home-card-roles{margin-bottom:1.5rem}.role-text{font-size:1rem}.home-card-text{margin-bottom:1rem;font-size:.95rem;line-height:1.6}.home-card-text:last-child{margin-bottom:0}}@media(max-width:640px){.home-card{border-radius:1.25rem;padding:0}.home-card-photo{box-shadow:none!important;-webkit-backdrop-filter:none!important;background:0 0!important;border:none!important}.home-card-description{padding:1.5rem}.home-card-title{font-size:1.5rem}.home-card-text{font-size:.9rem;line-height:1.5}.home-photo{max-width:240px}}.portfolio-loading-spinner{justify-content:center;align-items:center;width:100%;min-height:200px;display:flex}.loading-spinner-container{flex-direction:column;justify-content:center;align-items:center;gap:1.5rem;display:flex}.loading-spinner{width:64px;height:64px;position:relative}.spinner-ring{border:4px solid #0000;border-top-color:var(--color-primary);border-radius:50%;width:100%;height:100%;animation:1.2s cubic-bezier(.5,0,.5,1) infinite spin;position:absolute}.spinner-ring:first-child{border-top-color:var(--color-primary);opacity:1;animation-delay:-.45s}.spinner-ring:nth-child(2){border-top-color:var(--color-primary-300);opacity:.8;width:80%;height:80%;animation-delay:-.3s;top:10%;left:10%}.spinner-ring:nth-child(3){border-top-color:var(--color-primary-200);opacity:.6;width:60%;height:60%;animation-delay:-.15s;top:20%;left:20%}.spinner-ring:nth-child(4){border-top-color:var(--color-primary-100);opacity:.4;width:40%;height:40%;animation-delay:0s;top:30%;left:30%}@keyframes spin{to{transform:rotate(360deg)}}.loading-text{font-family:var(--font-family-sans);color:var(--color-primary);margin:0;font-size:1rem;font-weight:500;animation:2s ease-in-out infinite pulse}.dark .loading-text{color:#fff}@keyframes pulse{50%{opacity:.5}}@media(prefers-reduced-motion:reduce){.spinner-ring{border-top-color:var(--color-primary);animation:none;transform:rotate(0)}.loading-text{animation:none}.home-card,.home-card-photo,.home-card-description,.home-photo,.home-card-title,.home-card-text{opacity:1;animation:none;transform:none}.home-card-photo:hover .home-photo{transform:none}.space-canvas{display:none}.home-card{transition:none}.home-card:hover{transform:none}}.study-level-section{transition:background-color .3s;position:relative}.study-level-container{z-index:1;position:relative}.study-level-title{font-weight:900;font-family:var(--font-family-sans);color:var(--color-primary);opacity:0;animation:.6s ease-out .2s forwards fadeInUp}html.dark .study-level-title{color:#fff}.study-roadmap{flex-direction:column;gap:4rem;min-height:600px;padding:2rem 0 4rem;display:flex;position:relative}.study-roadmap-line{z-index:0;pointer-events:none;opacity:.3;width:100%;height:100%;position:absolute;top:0;left:0}.roadmap-path{color:var(--color-primary-500);stroke-dasharray:1500;stroke-dashoffset:1500px;transition:stroke .3s;animation:2.5s cubic-bezier(.4,0,.2,1) .3s forwards drawPath}html.dark .roadmap-path{color:var(--color-primary-400)}@keyframes drawPath{to{stroke-dashoffset:0}}.study-item{opacity:0;z-index:1;width:100%;max-width:100%;transition:all .4s cubic-bezier(.4,0,.2,1);animation:.8s cubic-bezier(.4,0,.2,1) forwards fadeInUp;position:relative}.study-item-left{text-align:left;align-self:flex-start}.study-item-right{text-align:right;align-self:flex-end}.study-item:nth-child(2){animation-delay:.6s}.study-item:nth-child(3){animation-delay:1s}.study-item:nth-child(4){animation-delay:1.4s}@media(min-width:768px){.study-roadmap{gap:5rem;min-height:700px;padding:3rem 0 5rem}.study-item{max-width:45%}.study-item-left{margin-right:auto}.study-item-right{margin-left:auto}}.study-item-content{background:var(--color-primary);border:2px solid var(--color-primary-300);z-index:1;border-radius:1.5rem;flex-direction:column;justify-content:center;padding:2rem;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;position:relative;box-shadow:0 8px 16px -4px #1d35481a,0 4px 8px -2px #1d35480d}html.dark .study-item-content{background:var(--color-white);border:2px solid var(--color-primary-200);box-shadow:0 8px 16px -4px #0000001a,0 4px 8px -2px #0000000d}.study-item-content:hover{border-color:var(--color-primary-400);transform:translateY(-6px)scale(1.02);box-shadow:0 12px 24px -6px #1d354826,0 6px 12px -3px #1d35481a}html.dark .study-item-content:hover{box-shadow:0 12px 24px -6px #00000026,0 6px 12px -3px #0000001a}@media(min-width:768px){.study-item-content{border-radius:2rem;padding:2.5rem}}.study-item-title{color:var(--color-white);font-size:1.125rem;font-weight:700;font-family:var(--font-family-sans);margin:0 0 1rem;line-height:1.3}html.dark .study-item-title{color:var(--color-primary)}@media(min-width:640px){.study-item-title{font-size:1.25rem}}.study-item-institution{color:#ffffffd9;font-size:1rem;font-weight:500;font-family:var(--font-family-sans);margin:0 0 .75rem}html.dark .study-item-institution{color:var(--color-primary-600)}.study-item-year{color:#ffffffb3;font-size:.875rem;font-weight:600;font-family:var(--font-family-sans);letter-spacing:.05em;margin:0}html.dark .study-item-year{color:var(--color-primary-500)}.skills-section{justify-content:center;align-items:center;transition:background-color .3s;display:flex;position:relative}.skills-container{z-index:1;flex-direction:column;justify-content:center;align-items:center;width:100%;max-width:72rem;margin:0 auto;display:flex;position:relative;overflow:visible}.skills-title{font-weight:900;font-family:var(--font-family-sans);color:var(--color-primary);opacity:0;text-align:center;width:100%;animation:.6s ease-out .2s forwards fadeInUp}html.dark .skills-title{color:#fff}.skills-tabs-wrapper{width:100%;margin-bottom:3rem;position:relative}.skills-tabs{z-index:2;border-bottom:none;flex-wrap:wrap;justify-content:center;align-items:center;gap:.5rem;width:100%;padding-bottom:1rem;display:flex;position:relative}.skills-tab{font-size:1rem;font-weight:600;font-family:var(--font-family-sans);color:#6b7280;cursor:pointer;background:0 0;border:none;border-bottom:3px solid #0000;border-radius:.5rem .5rem 0 0;padding:.75rem 1.5rem;transition:all .3s;position:relative}html.dark .skills-tab{color:#9ca3af}.skills-tab:hover{color:var(--color-primary);background:#1d35480d}html.dark .skills-tab:hover{color:var(--color-primary-300);background:#ffffff0d}.skills-tab.active{color:var(--color-primary);border-bottom-color:var(--color-primary);background:#1d35480d}html.dark .skills-tab.active{color:var(--color-primary-300);border-bottom-color:var(--color-primary-300);background:#ffffff0d}.skills-tab:focus{ring:2px;ring-color:var(--color-primary-400);ring-offset:2px;outline:none}.skills-connections{pointer-events:none;z-index:0;width:100%;height:100%;color:var(--color-primary);opacity:.3;position:absolute;top:0;left:0}html.dark .skills-connections{color:var(--color-primary-300);opacity:.4}.skill-connection-line{stroke-dasharray:1000;stroke-dashoffset:1000px}@keyframes skillConnectionDraw{to{stroke-dashoffset:0}}.skills-tab-content{z-index:1;justify-content:center;align-items:center;width:100%;min-height:400px;display:flex;position:relative}.skills-panel{opacity:0;width:100%;transition:opacity .3s;display:none}.skills-panel.active{opacity:1;flex-direction:column;justify-content:center;align-items:center;animation:.5s ease-out forwards fadeInUp;display:flex}.skills-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));justify-content:center;place-items:center;gap:1.5rem;width:100%;max-width:1200px;margin:0 auto;display:grid}@media(min-width:480px){.skills-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));justify-content:center}}@media(min-width:768px){.skills-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));justify-content:center}}@media(min-width:1024px){.skills-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));justify-content:center}}@media(min-width:1280px){.skills-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));justify-content:center}}.skill-card{background:var(--color-primary);border:2px solid var(--color-primary-300);cursor:pointer;opacity:0;border-radius:1.5rem;flex-direction:column;justify-content:center;align-items:center;gap:1rem;width:100%;min-width:150px;max-width:150px;height:150px;margin:0 auto;padding:1.5rem;transition:all .3s;animation:.6s ease-out forwards fadeInUp;display:flex;box-shadow:0 4px 12px -2px #1d354826,0 2px 6px -1px #1d35481a}html.dark .skill-card{background:var(--color-white);border:2px solid var(--color-primary-200);box-shadow:0 4px 12px -2px #00000026,0 2px 6px -1px #0000001a}.skill-card:hover{border-color:var(--color-primary-200);transform:scale(1.05);box-shadow:0 8px 24px -4px #1d354833,0 4px 12px -2px #1d354826}html.dark .skill-card:hover{border-color:var(--color-primary-300);box-shadow:0 8px 24px -4px #0003,0 4px 12px -2px #00000026}.skill-icon{object-fit:contain;filter:brightness(0)invert();width:64px;height:64px;transition:all .3s}html.dark .skill-icon{filter:brightness(0)invert(0);opacity:.8}.skill-card:hover .skill-icon{transform:scale(1.1)}.skill-name{font-size:1rem;font-weight:600;font-family:var(--font-family-sans);color:var(--color-white);text-align:center;word-wrap:break-word;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;width:100%;margin:0;line-height:1.3}html.dark .skill-name{color:var(--color-primary)}.skill-card:first-child{animation-delay:.1s}.skill-card:nth-child(2){animation-delay:.2s}.skill-card:nth-child(3){animation-delay:.3s}.skill-card:nth-child(4){animation-delay:.4s}.skill-card:nth-child(5){animation-delay:.5s}.skill-card:nth-child(6){animation-delay:.6s}.skill-card:nth-child(7){animation-delay:.7s}.skill-card:nth-child(8){animation-delay:.8s}@media(max-width:767px){.skills-section{padding:2rem 1rem}.skills-container{padding:0}.skills-title{text-align:center;margin-bottom:2rem;font-size:2rem}.skills-tabs{grid-template-columns:repeat(2,1fr);justify-content:center;gap:.5rem;width:100%;max-width:100%;margin-bottom:2rem;padding-bottom:0;display:grid}.skills-tab{white-space:nowrap;text-align:center;border-bottom:3px solid #0000;border-radius:.75rem;width:100%;padding:.75rem 1rem;font-size:.875rem;font-weight:600}.skills-tab.active{border-bottom-color:var(--color-primary);border-radius:.75rem}html.dark .skills-tab.active{border-bottom-color:var(--color-primary-300)}.skills-tab-content{width:100%;min-height:300px}.skills-panel{width:100%}.skills-grid{grid-template-columns:repeat(2,1fr);gap:1rem;width:100%;max-width:100%}.skill-card{width:100%;max-width:100%;padding:1rem}.skill-icon{width:48px;height:48px}.skill-name{font-size:.8125rem}}@media(max-width:480px){.skills-tabs{grid-template-columns:1fr;gap:.5rem}.skills-tab{padding:.625rem .875rem;font-size:.8125rem}.skills-grid{grid-template-columns:1fr;gap:1rem}.skill-card{padding:1rem}.skill-icon{width:44px;height:44px}.skill-name{font-size:.75rem}}@media(prefers-reduced-motion:reduce){.skills-panel,.skill-card{opacity:1;animation:none!important}.skill-card:hover{transform:none}}@media(max-width:767px){body{font-size:16px;line-height:1.6}button,a,input,select,textarea{min-width:44px;min-height:44px}section{padding:2rem 1rem}h1{font-size:2rem}h2{font-size:1.75rem}h3{font-size:1.5rem}p{font-size:1rem;line-height:1.6}*{animation-duration:.3s;animation-timing-function:ease-out}}@media(max-width:640px){section{padding:1.5rem .75rem}.card{border-radius:.75rem;padding:1.25rem}button{padding:.5rem 1rem;font-size:.9rem}}.services-section{padding:2rem 1rem;transition:background-color .3s;position:relative}@media(min-width:640px){.services-section{padding:3rem 1.5rem}}@media(min-width:768px){.services-section{padding:4rem 2rem}}@media(min-width:1024px){.services-section{padding:6rem 2rem}}.services-container{z-index:1;position:relative}.services-title{font-weight:900;font-family:var(--font-family-sans);color:var(--color-primary);opacity:0;animation:.6s ease-out .2s forwards fadeInUp}html.dark .services-title{color:#fff}@media(max-width:767px){.services-title{text-align:center;margin-bottom:2rem;font-size:2rem}.services-carousel-wrapper{padding:1rem 0 2rem}.carousel-container{perspective:1000px;height:400px}.service-card{gap:1rem;width:280px;height:380px;margin-top:-190px;margin-left:-140px;padding:1.5rem}.service-card-title{text-align:center;font-size:1.25rem}.service-card-description{text-align:center;font-size:.875rem;line-height:1.5}.service-card-image{flex-shrink:0;width:80px;height:80px}.service-image{object-fit:contain;width:100%;height:100%}.carousel-indicators{gap:.875rem;margin-top:1rem;padding:.5rem 0}.carousel-dot{border-width:2px;width:.875rem;min-width:.875rem;height:.875rem;min-height:.875rem}.carousel-dot.active{width:1.125rem;min-width:1.125rem;height:1.125rem;min-height:1.125rem}}@media(max-width:640px){.carousel-container{height:350px}.service-card{width:240px;height:330px;margin-top:-165px;margin-left:-120px;padding:1rem}.service-card-title{font-size:1.125rem}.service-card-description{font-size:.8125rem}.service-card-image{width:60px;height:60px}}.services-carousel-wrapper{width:100%;max-width:1200px;margin:0 auto;padding:2rem 0 4rem;position:relative;overflow:visible}.carousel-container{perspective:1500px;perspective-origin:50%;width:100%;height:600px;margin:0 auto;position:relative;overflow:visible}.carousel-track{width:100%;height:100%;transform-style:preserve-3d;will-change:transform;transition:transform .8s cubic-bezier(.4,0,.2,1);position:relative}.service-card{width:400px;height:550px;transform-style:preserve-3d;transform-origin:50%;backface-visibility:hidden;background:var(--color-primary);border:2px solid var(--color-primary-300);border-radius:2rem;flex-direction:column;justify-content:center;align-items:center;gap:1.5rem;margin-top:-275px;margin-left:-200px;padding:2rem;transition:opacity .6s cubic-bezier(.4,0,.2,1),transform .6s cubic-bezier(.4,0,.2,1);display:flex;position:absolute;top:50%;left:50%;overflow:hidden;box-shadow:0 12px 24px -6px #1d354826,0 6px 12px -3px #1d35481a}html.dark .service-card{background:var(--color-white);border:2px solid var(--color-primary-200);box-shadow:0 12px 24px -6px #00000026,0 6px 12px -3px #0000001a}.service-card:first-child{transform:rotateY(0)translateZ(450px)}.service-card:nth-child(2){transform:rotateY(120deg)translateZ(450px)}.service-card:nth-child(3){transform:rotateY(240deg)translateZ(450px)}.service-card.card-side{opacity:.2}.service-card-image{background:0 0;border:none;border-radius:0;flex-shrink:0;justify-content:center;align-items:center;width:100%;min-height:380px;max-height:380px;padding:0;transition:all .5s cubic-bezier(.4,0,.2,1);display:flex;overflow:hidden}.service-image{object-fit:contain;border-radius:1.5rem;width:auto;max-width:100%;height:auto;max-height:100%;transition:all .5s cubic-bezier(.4,0,.2,1);display:block}.service-card:hover .service-card-image{align-self:flex-start;min-height:200px;max-height:200px;margin-top:0}.service-card:hover .service-image{transform:scale(.85)}.service-card-title{color:var(--color-white);font-size:1.5rem;font-weight:700;font-family:var(--font-family-sans);text-align:center;align-self:flex-start;width:100%;margin:0;transition:all .5s cubic-bezier(.4,0,.2,1)}html.dark .service-card-title{color:var(--color-primary)}.service-card:hover .service-card-title{margin-top:0;margin-bottom:0}.service-card-description{color:#ffffffe6;font-size:.9rem;font-weight:400;font-family:var(--font-family-sans);text-align:center;opacity:0;pointer-events:none;flex:1;justify-content:center;align-items:center;width:100%;max-height:0;margin:0;padding:0 1.5rem;line-height:1.5;transition:max-height .5s cubic-bezier(.4,0,.2,1),opacity .5s cubic-bezier(.4,0,.2,1);display:flex;overflow:hidden}html.dark .service-card-description{color:var(--color-primary-700)}.service-card:hover .service-card-description{opacity:1;pointer-events:auto;max-height:300px}@media(max-width:768px){.service-card.active .service-card-description{opacity:1;pointer-events:auto;max-height:300px}.service-card.active .service-card-image{align-self:flex-start;min-height:200px;max-height:200px;margin-top:0}.service-card.active .service-image{transform:scale(.85)}.service-card.active .service-card-title{margin-top:0;margin-bottom:0}}.carousel-btn{background:var(--color-primary);border:2px solid var(--color-primary-300);width:3rem;height:3rem;color:var(--color-white);cursor:pointer;z-index:10;border-radius:50%;justify-content:center;align-items:center;transition:all .3s cubic-bezier(.4,0,.2,1);display:none;position:absolute;top:50%;transform:translateY(-50%);box-shadow:0 4px 12px #1d354833}html.dark .carousel-btn{background:var(--color-white);border:2px solid var(--color-primary-200);color:var(--color-primary);box-shadow:0 4px 12px #0000004d}.carousel-btn:hover{background:var(--color-primary-600);transform:translateY(-50%)scale(1.1);box-shadow:0 6px 16px #1d35484d}html.dark .carousel-btn:hover{background:var(--color-primary-100);box-shadow:0 6px 16px #0006}.carousel-btn:active{transform:translateY(-50%)scale(.95)}.carousel-btn:focus{ring:2px;ring-color:var(--color-primary-400);ring-offset:2px;outline:none}.carousel-btn-prev{left:-1rem}.carousel-btn-next{right:-1rem}@media(max-width:768px){.carousel-btn{display:none!important}}.carousel-indicators{z-index:10;justify-content:center;align-items:center;gap:1rem;width:100%;margin-top:2rem;padding:.5rem 0;display:flex;position:relative}.carousel-dot{background:var(--color-primary-300);border:2px solid var(--color-primary-400);cursor:pointer;box-sizing:border-box;border-radius:50%;width:1rem;min-width:1rem;height:1rem;min-height:1rem;padding:0;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:visible}html.dark .carousel-dot{background:var(--color-primary-600);border-color:var(--color-primary-400)}.carousel-dot:hover{background:var(--color-primary-500);transform:scale(1.3);box-shadow:0 0 0 4px #1d35481a}html.dark .carousel-dot:hover{box-shadow:0 0 0 4px #ffffff1a}.carousel-dot.active{background:var(--color-primary);border-color:var(--color-primary);width:1.25rem;min-width:1.25rem;height:1.25rem;min-height:1.25rem;animation:2s ease-in-out infinite wavePulse}html.dark .carousel-dot.active{background:var(--color-primary-500);border-color:var(--color-primary-500);animation:2s ease-in-out infinite wavePulseDark}.carousel-dot:focus{ring:2px;ring-color:var(--color-primary-400);ring-offset:2px;outline:none}@keyframes wavePulse{0%,to{transform:scale(1);box-shadow:0 0 #1d354866}50%{transform:scale(1.1);box-shadow:0 0 0 8px #1d354800}}@keyframes wavePulseDark{0%,to{transform:scale(1);box-shadow:0 0 #ffffff4d}50%{transform:scale(1.1);box-shadow:0 0 0 8px #fff0}}@media(max-width:768px){.carousel-container{perspective:1000px;height:500px}.service-card{width:320px;height:420px;margin-top:-210px;margin-left:-160px}.service-card:first-child{transform:rotateY(0)translateZ(350px)}.service-card:nth-child(2){transform:rotateY(120deg)translateZ(350px)}.service-card:nth-child(3){transform:rotateY(240deg)translateZ(350px)}.service-card{cursor:pointer;-webkit-tap-highlight-color:transparent;border-radius:1.5rem;padding:1.5rem}.service-card-image{min-height:250px;max-height:250px}.service-card-title{font-size:1.25rem}.service-card-description{padding:0 1rem;font-size:.85rem}}@media(prefers-reduced-motion:reduce){.carousel-track,.service-card,.carousel-btn{transition:none}}@media(min-width:768px){@keyframes fadeInLeft{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:translate(0)}}.study-item:nth-child(2n){animation-name:fadeInRight}@keyframes fadeInRight{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}}@media(prefers-reduced-motion:reduce){.study-level-title,.study-item{opacity:1;animation:none}.study-item-content,.study-item-indicator{transition:none}}.projects-section{transition:background-color .3s;position:relative}.projects-container{z-index:1;flex-direction:column;justify-content:center;align-items:center;width:100%;display:flex;position:relative}.projects-title{font-weight:900;font-family:var(--font-family-sans);color:var(--color-primary);opacity:0;animation:.6s ease-out .2s forwards fadeInUp}html.dark .projects-title{color:#fff}.projects-carousel-wrapper{width:100%;max-width:1200px;margin:0 auto;padding:2rem 0 4rem;position:relative;overflow:visible}.projects-carousel-wrapper .carousel-container{perspective:1500px;perspective-origin:50%;width:100%;height:600px;margin:0 auto;position:relative;overflow:visible}.projects-carousel-wrapper .carousel-track{width:100%;height:100%;transform-style:preserve-3d;backface-visibility:visible;transition:transform .6s cubic-bezier(.4,0,.2,1);position:absolute}.project-card{width:400px;height:auto;min-height:550px;transform-style:preserve-3d;transform-origin:50%;background:var(--color-primary);border:2px solid var(--color-primary-300);cursor:pointer;-webkit-tap-highlight-color:transparent;backface-visibility:visible;border-radius:1.5rem;flex-direction:column;justify-content:flex-start;align-items:center;gap:0;margin-top:-275px;margin-left:-200px;padding:1.5rem 1.5rem 0;transition:opacity .6s cubic-bezier(.4,0,.2,1),transform .6s cubic-bezier(.4,0,.2,1);display:flex;position:absolute;top:50%;left:50%;overflow:visible;box-shadow:0 12px 24px -6px #1d354826,0 6px 12px -3px #1d35481a}html.dark .project-card{background:var(--color-white);border:2px solid var(--color-primary-200);box-shadow:0 12px 24px -6px #00000026,0 6px 12px -3px #0000001a}.project-card:first-child{transform:rotateY(0)translateZ(450px)}.project-card:nth-child(2){transform:rotateY(90deg)translateZ(450px)}.project-card:nth-child(3){transform:rotateY(180deg)translateZ(450px)}.project-card:nth-child(4){transform:rotateY(270deg)translateZ(450px)}.project-card.card-side{opacity:.2;z-index:1;pointer-events:none}.project-card.card-center{will-change:transform,opacity;transform-style:preserve-3d;position:relative;z-index:20!important;pointer-events:auto!important}.project-card.card-center:nth-child(3),.project-card.card-center:nth-child(4){backface-visibility:visible}.project-card-image{background:0 0;border-radius:1rem;flex-shrink:0;justify-content:center;align-items:center;width:100%;min-height:200px;max-height:200px;margin-bottom:1rem;display:flex;overflow:hidden}.project-image{object-fit:cover;border-radius:1rem;width:100%;height:100%}.project-card-title{color:var(--color-white);font-size:1.5rem;font-weight:700;font-family:var(--font-family-sans);text-align:center;align-self:flex-start;width:100%;margin:0;transition:all .5s cubic-bezier(.4,0,.2,1)}html.dark .project-card-title{color:var(--color-primary)}.project-card-title{margin-bottom:.75rem}.project-card-description{color:#ffffffe6;font-size:.9rem;font-weight:400;font-family:var(--font-family-sans);text-align:center;opacity:0;width:100%;margin:0 0 1rem;padding:0 .5rem;line-height:1.6;transform:translateY(10px)}.project-card.card-center .project-card-description{animation:.6s ease-out .2s forwards fadeInUp}html.dark .project-card-description{color:var(--color-primary-700)}.project-technologies{opacity:0;flex-wrap:wrap;justify-content:center;align-items:center;gap:.75rem;width:100%;margin-bottom:1rem;display:flex;transform:translateY(10px)}.project-card.card-center .project-technologies{animation:.6s ease-out .4s forwards fadeInUp}.project-tech-logo{background:#ffffff1a;border-radius:.5rem;justify-content:center;align-items:center;width:40px;height:40px;padding:.5rem;transition:transform .2s,background .2s;display:flex}html.dark .project-tech-logo{background:#1d35481a}.project-tech-logo:hover{background:#fff3;transform:scale(1.1)}html.dark .project-tech-logo:hover{background:#1d354833}.project-tech-icon{object-fit:contain;filter:brightness(0)invert();width:100%;height:100%}html.dark .project-tech-icon{filter:none}.project-preview-btn{background:var(--color-white);color:var(--color-primary);font-family:var(--font-family-sans);border:2px solid var(--color-white);opacity:0;border-radius:.75rem;justify-content:center;align-items:center;gap:.5rem;width:100%;margin-top:.5rem;margin-bottom:1.5rem;padding:.75rem 1.5rem;font-size:1rem;font-weight:600;text-decoration:none;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;transform:translateY(10px)}.project-card.card-center .project-preview-btn{animation:.6s ease-out .6s forwards fadeInUp}html.dark .project-preview-btn{background:var(--color-primary);color:var(--color-white);border-color:var(--color-primary)}.project-preview-btn:hover{background:#fffffff2;transform:translateY(-2px);box-shadow:0 4px 12px #00000026}html.dark .project-preview-btn:hover{background:var(--color-primary-700);box-shadow:0 4px 12px #0000004d}.project-preview-btn svg{transition:transform .3s}.project-preview-btn:hover svg{transform:translate(2px,-2px)}@media(max-width:768px){.projects-carousel-wrapper .carousel-container{perspective:1000px;height:auto;min-height:600px}.project-card{border-radius:1.25rem;width:90%;max-width:340px;min-height:auto;margin-top:-50%;margin-left:-45%;padding:1.25rem 1.25rem 0}.project-card:first-child{transform:rotateY(0)translateZ(350px)}.project-card:nth-child(2){transform:rotateY(90deg)translateZ(350px)}.project-card:nth-child(3){transform:rotateY(180deg)translateZ(350px)}.project-card:nth-child(4){transform:rotateY(270deg)translateZ(350px)}.project-card-image{min-height:160px;max-height:160px;margin-bottom:.75rem}.project-card-title{margin-bottom:.5rem;font-size:1.25rem}.project-card-description{margin-bottom:.75rem;padding:0;font-size:.85rem;line-height:1.5}.project-technologies{gap:.5rem;margin-bottom:.75rem}.project-tech-logo{width:32px;height:32px;padding:.375rem}.project-preview-btn{margin-top:.25rem;margin-bottom:1.25rem;padding:.625rem 1.25rem;font-size:.9rem}}@media(prefers-reduced-motion:reduce){.projects-carousel-wrapper .carousel-track,.project-card,.project-preview-btn{transition:none}.coming-soon-icon-svg{animation:none!important}}.contact-section{transition:background-color .3s;position:relative}.contact-container{z-index:1;position:relative}.contact-title{font-weight:900;font-family:var(--font-family-sans);color:var(--color-primary);opacity:0;animation:.6s ease-out .2s forwards fadeInUp}html.dark .contact-title{color:#fff}.contact-hub-wrapper{justify-content:center;align-items:center;width:100%;padding:2rem 0;display:flex}.contact-hub-container{justify-content:center;align-items:center;width:700px;height:700px;margin:0 auto;display:flex;position:relative}@media(max-width:768px){.contact-hub-container{flex-direction:column;gap:2rem;width:100%;height:auto;min-height:auto;padding:2rem 0}}.contact-central-card-wrapper{z-index:30;pointer-events:none;justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:absolute;top:0;left:0}.contact-central-card{background:var(--color-primary);-webkit-backdrop-filter:blur(20px);border:2px solid var(--color-primary-300);text-align:center;opacity:0;pointer-events:auto;z-index:30;border-radius:2rem;min-width:220px;max-width:280px;margin:0;padding:2.5rem 3rem;transition:all .3s;animation:.8s ease-out .3s forwards fadeInUp;position:relative;box-shadow:0 8px 32px #1d354826,0 4px 16px #1d35481a}html.dark .contact-central-card{background:var(--color-white);border:2px solid var(--color-primary-200);box-shadow:0 8px 32px #00000026,0 4px 16px #0000001a}.contact-central-card:hover{transform-origin:50%;border-color:var(--color-primary-200);transform:scale(1.05);box-shadow:0 12px 40px #1d354833,0 6px 20px #1d354826}html.dark .contact-central-card:hover{box-shadow:0 12px 40px #0006,0 6px 20px #0000004d}.contact-central-title{color:var(--color-white);font-size:2rem;font-weight:700;font-family:var(--font-family-sans);margin:0 0 .5rem}html.dark .contact-central-title{color:var(--color-primary)}.contact-central-text{color:var(--color-primary-100);font-size:1rem;font-family:var(--font-family-sans);margin:0}html.dark .contact-central-text{color:var(--color-primary-700)}.contact-platforms{width:100%;height:100%;position:relative;overflow:visible}.contact-platform-btn{cursor:pointer;z-index:10;opacity:0;width:80px;height:80px;top:var(--btn-top,50%);left:var(--btn-left,50%);border-radius:50%;justify-content:center;align-items:center;text-decoration:none;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;position:absolute;transform:translate(-50%,-50%);box-shadow:0 4px 12px #00000026,0 2px 6px #0000001a}.contact-platform-btn:first-child{animation:.6s ease-out .5s forwards fadeInUp,4s ease-in-out 1.1s infinite floatButton1}.contact-platform-btn:nth-child(2){animation:.6s ease-out .6s forwards fadeInUp,5s ease-in-out 1.2s infinite floatButton2}.contact-platform-btn:nth-child(3){animation:.6s ease-out .7s forwards fadeInUp,4.5s ease-in-out 1.3s infinite floatButton3}.contact-platform-btn:nth-child(4){animation:.6s ease-out .8s forwards fadeInUp,5.5s ease-in-out 1.4s infinite floatButton4}.contact-platform-btn:nth-child(5){animation:.6s ease-out .9s forwards fadeInUp,4.8s ease-in-out 1.5s infinite floatButton5}.contact-platform-btn:nth-child(6){animation:.6s ease-out 1.1s forwards fadeInUp,5.2s ease-in-out 1.7s infinite floatButton6}@keyframes floatButton1{0%,to{transform:translate(-50%,-50%)translateY(0)rotate(0)}50%{transform:translate(-50%,-50%)translateY(-30px)rotate(5deg)}}@keyframes floatButton2{0%,to{transform:translate(-50%,-50%)translateY(0)rotate(0)}50%{transform:translate(-50%,-50%)translateY(35px)rotate(-6deg)}}@keyframes floatButton3{0%,to{transform:translate(-50%,-50%)translateY(0)rotate(0)}50%{transform:translate(-50%,-50%)translateY(-25px)rotate(-4deg)}}@keyframes floatButton4{0%,to{transform:translate(-50%,-50%)translateY(0)rotate(0)}50%{transform:translate(-50%,-50%)translateY(40px)rotate(7deg)}}@keyframes floatButton5{0%,to{transform:translate(-50%,-50%)translateY(0)rotate(0)}50%{transform:translate(-50%,-50%)translateY(-28px)rotate(-5deg)}}@keyframes floatButton6{0%,to{transform:translate(-50%,-50%)translateY(0)rotate(0)}50%{transform:translate(-50%,-50%)translateY(24px)rotate(6deg)}}.contact-platform-facebook{color:#fff;background:#1877f2}.contact-platform-instagram{color:#fff;background:linear-gradient(135deg,#e4405f,#fcaf45)}.contact-platform-telegram{color:#fff;background:#08c}.contact-platform-whatsapp{color:#fff;background:#25d366}.contact-platform-email{background:var(--color-primary);color:#fff}html.dark .contact-platform-email{background:var(--color-primary-300);color:var(--color-primary-dark)}.contact-platform-linkedin{color:#fff;background:#0077b5}.contact-platform-icon{justify-content:center;align-items:center;width:40px;height:40px;transition:transform .3s;display:flex}.contact-platform-icon svg{width:100%;height:100%}.contact-platform-label{color:var(--color-primary);font-size:.875rem;font-weight:600;font-family:var(--font-family-sans);white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .3s;position:absolute;bottom:-2.5rem;left:50%;transform:translate(-50%)}html.dark .contact-platform-label{color:var(--color-primary-300)}@media(min-width:769px){.contact-platform-btn:hover{z-index:20;animation-play-state:paused;box-shadow:0 8px 24px #00000040,0 4px 12px #00000026;transform:translate(-50%,-50%)scale(1.15)!important}.contact-platform-btn:hover .contact-platform-icon{transform:scale(1.1)rotate(5deg)}.contact-platform-btn:hover .contact-platform-label{opacity:1}}@media(max-width:768px){.contact-hub-container{flex-direction:column;gap:2rem;width:100%;height:auto;min-height:auto;padding:2rem 0}.contact-central-card-wrapper{order:-1;width:100%;height:auto;margin-bottom:2rem;position:relative}.contact-central-card{max-width:100%;margin:0 auto;padding:1.5rem 2rem;position:relative;transform:none}.contact-central-card:hover{transform:scale(1.02)}.contact-platforms{grid-template-columns:repeat(3,1fr);place-items:center;gap:3.5rem 2.5rem;width:100%;max-width:450px;height:auto;margin:0 auto;display:grid;position:relative}.contact-platform-btn{flex-direction:column;justify-content:center;align-items:center;width:80px;height:80px;margin:0;display:flex;opacity:1!important;animation:none!important;position:relative!important;top:auto!important;left:auto!important;transform:none!important}.contact-platform-btn:hover{transform:scale(1.1)!important}.contact-platform-label{opacity:0;white-space:nowrap;pointer-events:none;font-size:.75rem;transition:opacity .3s;position:absolute;bottom:-1.5rem;left:50%;transform:translate(-50%)}.contact-platform-btn:hover .contact-platform-label,.contact-platform-btn:active .contact-platform-label{opacity:1}.contact-platform-icon{width:32px;height:32px}}@media(prefers-reduced-motion:reduce){.contact-title,.contact-central-card,.contact-platform-btn{opacity:1;animation:none!important}.contact-platform-btn{transform:translate(-50%,-50%)!important}.contact-platform-btn:hover{transform:translate(-50%,-50%)scale(1.05)!important}@media(max-width:768px){.contact-platform-btn:hover{transform:scale(1.05)!important}}}.splash-screen{z-index:9999;background-color:var(--color-white);justify-content:center;align-items:center;width:100%;height:100%;transition:opacity .5s ease-out,visibility .5s ease-out;display:flex;position:fixed;inset:0}html.dark .splash-screen{background-color:#111827}.splash-screen-fade-out{opacity:0;visibility:hidden}.splash-content{flex-direction:column;justify-content:center;align-items:center;gap:2rem;animation:.6s ease-out forwards splashFadeIn;display:flex}@keyframes splashFadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.splash-logo-wrapper{opacity:0;justify-content:center;align-items:center;animation:.8s ease-out .2s forwards splashLogoScale;display:flex}@keyframes splashLogoScale{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.splash-logo{object-fit:contain;filter:drop-shadow(0 4px 8px #0000001a);border-radius:20px;width:120px;height:auto;transition:transform .3s}html.dark .splash-logo{filter:drop-shadow(0 4px 8px #0000004d)}@media(min-width:640px){.splash-logo{width:150px}}.splash-loader{opacity:0;justify-content:center;align-items:center;margin-top:1rem;animation:.6s ease-out .5s forwards splashLoaderFadeIn;display:flex}@keyframes splashLoaderFadeIn{0%{opacity:0}to{opacity:1}}.splash-loader-spinner{border:3px solid var(--color-primary-200);border-top-color:var(--color-primary);border-radius:50%;width:40px;height:40px;animation:1s linear infinite splashSpin}html.dark .splash-loader-spinner{border-color:var(--color-primary-700);border-top-color:var(--color-primary-400)}@keyframes splashSpin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.splash-content,.splash-logo-wrapper,.splash-loader{opacity:1;animation:none}.splash-loader-spinner{animation:none}.splash-screen-fade-out{transition:none}}.footer-section{background:0 0;width:100%;padding:2rem 1rem}.footer-container{max-width:1200px;margin:0 auto}.footer-content{flex-direction:column;justify-content:center;align-items:center;gap:1rem;display:flex}.footer-logo{justify-content:center;align-items:center;display:flex}.footer-logo-image{object-fit:contain;filter:drop-shadow(0 2px 4px #0000001a);border-radius:8px;width:40px;height:40px;transition:transform .3s}.dark .footer-logo-image{filter:drop-shadow(0 2px 4px #0000004d)}.footer-logo-image:hover{transform:scale(1.05)}.footer-text{justify-content:center;align-items:center;display:flex}.footer-copyright{font-family:var(--font-family-sans);color:var(--color-primary);text-align:center;flex-wrap:wrap;justify-content:center;align-items:center;gap:.5rem;margin:0;font-size:.875rem;font-weight:400;transition:color .3s;display:flex}.dark .footer-copyright{color:#fffc}.footer-version-badge{background:var(--color-primary);color:var(--color-white);font-size:.75rem;font-weight:600;font-family:var(--font-family-sans);border-radius:9999px;justify-content:center;align-items:center;margin-left:.5rem;padding:.25rem .625rem;transition:all .3s;display:inline-flex}.dark .footer-version-badge{background:var(--color-primary-300);color:var(--color-primary-900)}.footer-version-badge:hover{transform:scale(1.05);box-shadow:0 2px 8px #1d354833}.dark .footer-version-badge:hover{box-shadow:0 2px 8px #7898a74d}@media(min-width:640px){.footer-section{padding:2.5rem 1.5rem}.footer-content{flex-direction:row;gap:1.5rem}.footer-logo-image{width:48px;height:48px}.footer-copyright{font-size:1rem}}@media(min-width:768px){.footer-section{padding:3rem 2rem}.footer-content{gap:2rem}}.auth-page{background:linear-gradient(135deg,#f9fafb,#f3f4f6);transition:background .3s}.dark .auth-page{background:linear-gradient(135deg,#111827,#1f2937)}.auth-card{-webkit-backdrop-filter:blur(10px);animation:.6s ease-out fadeInUp}.auth-card:hover{transform:translateY(-2px);box-shadow:0 20px 40px #0000001a}.dark .auth-card:hover{box-shadow:0 20px 40px #0000004d}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-gradient-position{syntax:"*";inherits:false}@property --tw-gradient-from{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-via{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-to{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-stops{syntax:"*";inherits:false}@property --tw-gradient-via-stops{syntax:"*";inherits:false}@property --tw-gradient-from-position{syntax:"<length-percentage>";inherits:false;initial-value:0%}@property --tw-gradient-via-position{syntax:"<length-percentage>";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"<length-percentage>";inherits:false;initial-value:100%}
