.header[data-astro-cid-3ef6ksr2]{position:fixed;top:0;left:0;right:0;z-index:var(--z-fixed);background:#fffc;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--color-border);transition:all var(--transition-base)}.header[data-astro-cid-3ef6ksr2].scrolled{background:#fffffff2;box-shadow:var(--shadow-md)}.nav[data-astro-cid-3ef6ksr2]{display:flex;align-items:center;justify-content:space-between;padding-top:var(--space-4);padding-bottom:var(--space-4);gap:var(--space-8)}.logo-link[data-astro-cid-3ef6ksr2]{display:flex;align-items:center;flex-shrink:0;transition:transform var(--transition-base)}.logo-link[data-astro-cid-3ef6ksr2]:hover{transform:scale(1.05)}.logo[data-astro-cid-3ef6ksr2]{height:50px;width:auto;max-width:100%;object-fit:contain}.menu-toggle[data-astro-cid-3ef6ksr2]{display:none;flex-direction:column;justify-content:center;align-items:center;width:44px;height:44px;background:transparent;border:none;cursor:pointer;padding:0;z-index:var(--z-dropdown)}.hamburger[data-astro-cid-3ef6ksr2]{position:relative;width:24px;height:2px;background:var(--color-text);border-radius:2px;transition:all var(--transition-base)}.hamburger[data-astro-cid-3ef6ksr2]:before,.hamburger[data-astro-cid-3ef6ksr2]:after{content:"";position:absolute;left:0;width:24px;height:2px;background:var(--color-text);border-radius:2px;transition:all var(--transition-base)}.hamburger[data-astro-cid-3ef6ksr2]:before{top:-8px}.hamburger[data-astro-cid-3ef6ksr2]:after{bottom:-8px}.menu-toggle[data-astro-cid-3ef6ksr2][aria-expanded=true] .hamburger[data-astro-cid-3ef6ksr2]{background:transparent}.menu-toggle[data-astro-cid-3ef6ksr2][aria-expanded=true] .hamburger[data-astro-cid-3ef6ksr2]:before{top:0;transform:rotate(45deg)}.menu-toggle[data-astro-cid-3ef6ksr2][aria-expanded=true] .hamburger[data-astro-cid-3ef6ksr2]:after{bottom:0;transform:rotate(-45deg)}.nav-links[data-astro-cid-3ef6ksr2]{display:flex;align-items:center;gap:var(--space-8)}.nav-link[data-astro-cid-3ef6ksr2]{font-family:var(--font-heading);font-size:var(--text-base);font-weight:var(--weight-semibold);color:var(--color-text);text-decoration:none;position:relative;padding:var(--space-2) 0;transition:color var(--transition-base)}.nav-link[data-astro-cid-3ef6ksr2]:after{content:"";position:absolute;bottom:0;left:0;width:0;height:3px;background:var(--color-secondary);border-radius:2px;transition:width var(--transition-base)}.nav-link[data-astro-cid-3ef6ksr2]:hover{color:var(--color-primary)}.nav-link[data-astro-cid-3ef6ksr2]:hover:after,.nav-link[data-astro-cid-3ef6ksr2].active:after{width:100%}.nav-link[data-astro-cid-3ef6ksr2].active{color:var(--color-primary)}@media (max-width: 768px){.menu-toggle[data-astro-cid-3ef6ksr2]{display:flex}.nav-links[data-astro-cid-3ef6ksr2]{position:fixed;top:0;right:0;height:100vh;width:280px;flex-direction:column;align-items:flex-start;justify-content:flex-start;padding:var(--space-24) var(--space-8);background:var(--color-bg);box-shadow:var(--shadow-2xl);gap:var(--space-6);transform:translate(100%);transition:transform var(--transition-base)}.nav-links[data-astro-cid-3ef6ksr2].open{transform:translate(0)}.nav-link[data-astro-cid-3ef6ksr2]{width:100%;font-size:var(--text-lg);padding:var(--space-3) 0}}body{padding-top:82px}.footer[data-astro-cid-sz7xmlte]{background:linear-gradient(135deg,var(--color-primary-dark) 0%,var(--color-primary) 100%);color:#fff;margin-top:var(--space-32);position:relative;overflow:hidden}.footer[data-astro-cid-sz7xmlte]:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--color-secondary)}.footer-content[data-astro-cid-sz7xmlte]{padding-top:var(--space-16);padding-bottom:var(--space-8)}.footer-grid[data-astro-cid-sz7xmlte]{display:grid;grid-template-columns:2fr 1fr 1fr 1.5fr;gap:var(--space-12);margin-bottom:var(--space-12)}@media (max-width: 1024px){.footer-grid[data-astro-cid-sz7xmlte]{grid-template-columns:repeat(2,1fr);gap:var(--space-8)}}@media (max-width: 640px){.footer-grid[data-astro-cid-sz7xmlte]{grid-template-columns:1fr;gap:var(--space-8)}}.footer-section[data-astro-cid-sz7xmlte]{display:flex;flex-direction:column;gap:var(--space-4)}.brand-section[data-astro-cid-sz7xmlte]{position:relative;display:flex;flex-direction:column;align-items:flex-start}.footer-logo[data-astro-cid-sz7xmlte]{height:50px;width:auto;max-width:100%;display:block;margin-bottom:var(--space-4);object-fit:contain}.footer-tagline[data-astro-cid-sz7xmlte]{font-size:var(--text-base);line-height:var(--leading-relaxed);color:#ffffffe6;max-width:280px;margin:0}.mascot-container[data-astro-cid-sz7xmlte]{margin-top:var(--space-6)}.footer-mascot[data-astro-cid-sz7xmlte]{width:80px;height:auto;filter:drop-shadow(0 4px 12px rgba(0,0,0,.2));transition:transform var(--transition-base)}.footer-mascot[data-astro-cid-sz7xmlte]:hover{transform:scale(1.1) rotate(-5deg)}.footer-title[data-astro-cid-sz7xmlte]{font-family:var(--font-heading);font-size:var(--text-h4);font-weight:var(--weight-bold);color:#fff;margin-bottom:var(--space-2);position:relative;padding-bottom:var(--space-2)}.footer-title[data-astro-cid-sz7xmlte]:after{content:"";position:absolute;bottom:0;left:0;width:40px;height:3px;background:var(--color-secondary);border-radius:2px}.footer-links[data-astro-cid-sz7xmlte]{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--space-3)}.footer-link[data-astro-cid-sz7xmlte]{color:#ffffffd9;font-size:var(--text-base);text-decoration:none;transition:all var(--transition-base);display:inline-block;position:relative}.footer-link[data-astro-cid-sz7xmlte]:before{content:"→";position:absolute;left:-20px;opacity:0;transition:all var(--transition-base)}.footer-link[data-astro-cid-sz7xmlte]:hover{color:var(--color-secondary);transform:translate(8px)}.footer-link[data-astro-cid-sz7xmlte]:hover:before{opacity:1;left:-16px}.footer-text[data-astro-cid-sz7xmlte]{font-size:var(--text-base);line-height:var(--leading-relaxed);color:#ffffffd9;margin-bottom:var(--space-4)}.footer-social[data-astro-cid-sz7xmlte]{display:flex;gap:var(--space-3);align-items:center}.footer-social-link[data-astro-cid-sz7xmlte]{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:50%;color:#fff;transition:all var(--transition-base)}.footer-social-link[data-astro-cid-sz7xmlte]:hover{background:var(--color-secondary);border-color:var(--color-secondary);color:var(--color-text);transform:translateY(-2px);box-shadow:0 4px 12px #ffc1074d}.footer-bottom[data-astro-cid-sz7xmlte]{padding-top:var(--space-8);border-top:1px solid rgba(255,255,255,.2);display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--space-4)}@media (max-width: 640px){.footer-bottom[data-astro-cid-sz7xmlte]{flex-direction:column;text-align:center}}.copyright[data-astro-cid-sz7xmlte],.footer-credit[data-astro-cid-sz7xmlte]{font-size:var(--text-sm);color:#ffffffb3;margin:0}.footer-credit[data-astro-cid-sz7xmlte]{display:flex;align-items:center;gap:var(--space-2)}.footer-links-bottom[data-astro-cid-sz7xmlte]{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}.footer-link-small[data-astro-cid-sz7xmlte]{font-size:var(--text-sm);color:#ffffffb3;text-decoration:none;transition:color var(--transition-base)}.footer-link-small[data-astro-cid-sz7xmlte]:hover{color:var(--color-secondary)}.footer-separator[data-astro-cid-sz7xmlte]{font-size:var(--text-sm);color:#ffffff80}:root{--color-primary: #2316B7;--color-primary-dark: #1A0F8C;--color-primary-light: #4A3FD9;--color-primary-lighter: #E8E6F9;--color-primary-alpha: rgba(35, 22, 183, .1);--color-secondary: #F5DD04;--color-secondary-dark: #D4BE03;--color-secondary-light: #FFF56B;--color-secondary-lighter: #FFFBCC;--color-secondary-alpha: rgba(245, 221, 4, .15);--color-text: #0F1419;--color-text-medium: #536471;--color-text-light: #8B98A5;--color-text-lightest: #B8C5D0;--color-bg: #FFFFFF;--color-bg-secondary: #F7F9FA;--color-bg-tertiary: #EFF3F4;--color-bg-overlay: rgba(15, 20, 25, .4);--color-border: #E8ECEF;--color-border-medium: #D1D9DD;--color-border-dark: #B4BEC6;--color-success: #00BA34;--color-error: #F4212E;--color-warning: #FFAD1F;--color-info: #1D9BF0;--font-main: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-heading: "Poppins", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--text-display-xl: clamp(2.75rem, 6vw, 4.5rem);--text-display-lg: clamp(2.5rem, 5vw, 3.75rem);--text-display: clamp(2.25rem, 4vw, 3.5rem);--text-h1: clamp(2rem, 4vw, 3rem);--text-h2: clamp(1.75rem, 3vw, 2.25rem);--text-h3: clamp(1.375rem, 2.5vw, 1.75rem);--text-h4: 1.25rem;--text-lg: 1.125rem;--text-base: 1rem;--text-sm: .875rem;--text-xs: .75rem;--weight-regular: 400;--weight-medium: 500;--weight-semibold: 600;--weight-bold: 700;--weight-extrabold: 800;--leading-none: 1;--leading-tight: 1.2;--leading-snug: 1.375;--leading-normal: 1.5;--leading-relaxed: 1.625;--leading-loose: 1.75;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--space-20: 5rem;--space-24: 6rem;--space-32: 8rem;--radius-xs: .25rem;--radius-sm: .375rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--radius-2xl: 1.5rem;--radius-full: 9999px;--shadow-xs: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-sm: 0 2px 4px 0 rgba(0, 0, 0, .06);--shadow-md: 0 4px 8px 0 rgba(0, 0, 0, .08), 0 2px 4px 0 rgba(0, 0, 0, .04);--shadow-lg: 0 8px 16px 0 rgba(0, 0, 0, .1), 0 4px 8px 0 rgba(0, 0, 0, .06);--shadow-xl: 0 12px 24px 0 rgba(0, 0, 0, .12), 0 6px 12px 0 rgba(0, 0, 0, .08);--shadow-2xl: 0 20px 40px 0 rgba(0, 0, 0, .15), 0 10px 20px 0 rgba(0, 0, 0, .1);--shadow-primary: 0 8px 24px 0 rgba(35, 22, 183, .2), 0 4px 8px 0 rgba(35, 22, 183, .1);--shadow-secondary: 0 8px 24px 0 rgba(245, 221, 4, .3), 0 4px 8px 0 rgba(245, 221, 4, .15);--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-base: .25s cubic-bezier(.4, 0, .2, 1);--transition-slow: .35s cubic-bezier(.4, 0, .2, 1);--transition-bounce: .5s cubic-bezier(.68, -.55, .265, 1.55);--z-base: 1;--z-dropdown: 100;--z-sticky: 200;--z-fixed: 300;--z-modal-backdrop: 400;--z-modal: 500;--z-popover: 600;--z-tooltip: 700;--container-max: 1200px;--container-lg: 1024px;--container-md: 768px;--container-sm: 640px;--prose-max: 65ch;--bp-sm: 640px;--bp-md: 768px;--bp-lg: 1024px;--bp-xl: 1200px}*{box-sizing:border-box;margin:0;padding:0}*:before,*:after{box-sizing:border-box}html{font-family:var(--font-main);font-size:16px;line-height:var(--leading-normal);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;scroll-behavior:smooth}body{min-height:100vh;color:var(--color-text);background-color:var(--color-bg);overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);color:var(--color-text);margin-bottom:var(--space-4);line-height:var(--leading-tight);font-weight:var(--weight-bold)}.display-xl{font-size:var(--text-display-xl);line-height:var(--leading-none);font-weight:var(--weight-extrabold);letter-spacing:-.02em}.display-lg{font-size:var(--text-display-lg);line-height:var(--leading-none);font-weight:var(--weight-extrabold);letter-spacing:-.02em}.display{font-size:var(--text-display);line-height:var(--leading-tight);font-weight:var(--weight-extrabold);letter-spacing:-.01em}h1{font-size:var(--text-h1);font-weight:var(--weight-extrabold)}h2{font-size:var(--text-h2);font-weight:var(--weight-bold)}h3{font-size:var(--text-h3);font-weight:var(--weight-bold)}h4{font-size:var(--text-h4);font-weight:var(--weight-semibold)}p{margin-bottom:var(--space-4);line-height:var(--leading-relaxed)}.text-lg{font-size:var(--text-lg);line-height:var(--leading-relaxed)}.text-sm{font-size:var(--text-sm);line-height:var(--leading-normal)}.text-xs{font-size:var(--text-xs);line-height:var(--leading-normal)}.text-medium{color:var(--color-text-medium)}.text-light{color:var(--color-text-light)}strong,b{font-weight:var(--weight-bold)}em,i{font-style:italic}a{color:var(--color-primary);text-decoration:none;transition:color var(--transition-base);cursor:pointer}a:hover{color:var(--color-primary-dark)}a:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px;border-radius:var(--radius-xs)}.link-underline{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:3px;text-decoration-color:var(--color-secondary)}.link-underline:hover{text-decoration-color:var(--color-primary)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-6);font-family:var(--font-heading);font-size:var(--text-base);font-weight:var(--weight-semibold);line-height:var(--leading-snug);text-decoration:none;border:2px solid transparent;border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-base);white-space:nowrap;user-select:none}.btn:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.btn-primary{background:var(--color-primary);color:#fff;border-color:var(--color-primary);box-shadow:var(--shadow-sm)}.btn-primary:hover{background:var(--color-primary-dark);border-color:var(--color-primary-dark);transform:translateY(-2px);box-shadow:var(--shadow-lg)}.btn-primary:active{transform:translateY(0);box-shadow:var(--shadow-sm)}.btn-secondary{background:var(--color-secondary);color:var(--color-text);border-color:var(--color-secondary);box-shadow:var(--shadow-sm)}.btn-secondary:hover{background:var(--color-secondary-dark);border-color:var(--color-secondary-dark);transform:translateY(-2px);box-shadow:var(--shadow-lg)}.btn-outline{background:transparent;color:var(--color-primary);border-color:var(--color-primary)}.btn-outline:hover{background:var(--color-primary);color:#fff;transform:translateY(-2px);box-shadow:var(--shadow-md)}.btn-ghost{background:transparent;color:var(--color-primary);border-color:transparent}.btn-ghost:hover{background:var(--color-primary-alpha);color:var(--color-primary-dark)}.btn-outline-light{background:transparent;color:#fff;border-color:#fff}.btn-outline-light:hover{background:#fff;color:var(--color-primary);transform:translateY(-2px);box-shadow:var(--shadow-md)}.btn-lg{padding:var(--space-4) var(--space-8);font-size:var(--text-lg)}.btn-sm{padding:var(--space-2) var(--space-4);font-size:var(--text-sm)}.btn-icon{padding:var(--space-3);aspect-ratio:1}img,picture,video,canvas,svg{display:block;max-width:100%;height:auto}img{border-radius:var(--radius-md)}.container{width:100%;max-width:var(--container-max);margin-left:auto;margin-right:auto;padding-left:var(--space-4);padding-right:var(--space-4)}@media (min-width: 768px){.container{padding-left:var(--space-6);padding-right:var(--space-6)}}.container-lg{max-width:var(--container-lg)}.container-md{max-width:var(--container-md)}.container-sm{max-width:var(--container-sm)}.prose{max-width:var(--prose-max);margin-left:auto;margin-right:auto}.section{padding-top:var(--space-16);padding-bottom:var(--space-16)}@media (min-width: 768px){.section{padding-top:var(--space-24);padding-bottom:var(--space-24)}}.section-sm{padding-top:var(--space-12);padding-bottom:var(--space-12)}.card{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--space-6);transition:all var(--transition-base)}.card-hover:hover{transform:translateY(-4px);box-shadow:var(--shadow-xl);border-color:var(--color-border-medium)}.card-bordered{border-width:2px}.card-shadow{box-shadow:var(--shadow-md);border:none}.surface{background:var(--color-bg-secondary);border-radius:var(--radius-lg);padding:var(--space-8)}.grid{display:grid;gap:var(--space-6)}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-auto{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}@media (max-width: 768px){.grid-cols-2,.grid-cols-3,.grid-cols-4{grid-template-columns:repeat(1,minmax(0,1fr))}}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.gap-2{gap:var(--space-2)}.gap-3{gap:var(--space-3)}.gap-4{gap:var(--space-4)}.gap-6{gap:var(--space-6)}.gap-8{gap:var(--space-8)}.prose h1,.prose h2,.prose h3,.prose h4,.prose h5,.prose h6{margin-top:var(--space-8);margin-bottom:var(--space-4)}.prose h1:first-child,.prose h2:first-child,.prose h3:first-child{margin-top:0}.prose p{margin-bottom:var(--space-6);line-height:var(--leading-loose);font-size:var(--text-lg);color:var(--color-text)}.prose a{color:var(--color-primary);text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:3px;text-decoration-color:var(--color-secondary);transition:all var(--transition-base)}.prose a:hover{color:var(--color-primary-dark);text-decoration-color:var(--color-primary)}.prose strong{color:var(--color-text);font-weight:var(--weight-bold)}.prose em{font-style:italic;color:var(--color-text-medium)}.prose ul,.prose ol{margin-bottom:var(--space-6);padding-left:var(--space-6)}.prose li{margin-bottom:var(--space-3);line-height:var(--leading-relaxed);font-size:var(--text-lg)}.prose li::marker{color:var(--color-primary)}.prose blockquote{margin:var(--space-8) 0;padding:var(--space-6);padding-left:var(--space-8);border-left:4px solid var(--color-primary);background:var(--color-bg-secondary);border-radius:var(--radius-md);font-style:italic;color:var(--color-text-medium)}.prose blockquote p{margin-bottom:var(--space-4)}.prose blockquote p:last-child{margin-bottom:0}.prose code{padding:var(--space-1) var(--space-2);background:var(--color-bg-tertiary);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-family:SF Mono,Monaco,Cascadia Code,Roboto Mono,Consolas,Courier New,monospace;font-size:.9em;color:var(--color-primary-dark)}.prose pre{margin:var(--space-8) 0;padding:var(--space-6);background:var(--color-text);border-radius:var(--radius-lg);overflow-x:auto;box-shadow:var(--shadow-md)}.prose pre code{padding:0;background:transparent;border:none;color:var(--color-bg);font-size:.875rem}.prose img{margin:var(--space-8) 0;border-radius:var(--radius-xl);box-shadow:var(--shadow-lg)}.prose hr{margin:var(--space-12) 0;border:none;border-top:2px solid var(--color-border)}.prose table{width:100%;margin:var(--space-8) 0;border-collapse:collapse;font-size:var(--text-lg);line-height:var(--leading-relaxed);display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}@media (min-width: 769px){.prose table{display:table;overflow-x:visible}}.prose thead{background:var(--color-bg-secondary);border-bottom:2px solid var(--color-border);display:table-header-group}.prose tbody{display:table-row-group}.prose tr{display:table-row}.prose th,.prose td{display:table-cell;white-space:nowrap}@media (min-width: 769px){.prose th,.prose td{white-space:normal}}.prose thead{background:var(--color-bg-secondary);border-bottom:2px solid var(--color-border)}.prose th{padding:var(--space-4);text-align:left;font-weight:var(--weight-bold);color:var(--color-text);font-size:var(--text-lg)}.prose td{padding:var(--space-4);border-bottom:1px solid var(--color-border);font-size:var(--text-lg);color:var(--color-text)}.prose tr:last-child td{border-bottom:none}.prose tbody tr:hover{background:var(--color-bg-secondary)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes slideInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.animate-fadeIn{animation:fadeIn var(--transition-slow) ease-out}.animate-fadeInUp{animation:fadeInUp var(--transition-slow) ease-out}.animate-fadeInDown{animation:fadeInDown var(--transition-slow) ease-out}.animate-scaleIn{animation:scaleIn var(--transition-base) ease-out}.animate-bounce{animation:bounce 2s infinite ease-in-out}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.hidden{display:none}@media (max-width: 768px){.hidden-mobile{display:none}}@media (min-width: 769px){.hidden-desktop{display:none}}.mb-0{margin-bottom:0}.mb-2{margin-bottom:var(--space-2)}.mb-4{margin-bottom:var(--space-4)}.mb-6{margin-bottom:var(--space-6)}.mb-8{margin-bottom:var(--space-8)}.mb-12{margin-bottom:var(--space-12)}.mt-0{margin-top:0}.mt-2{margin-top:var(--space-2)}.mt-4{margin-top:var(--space-4)}.mt-6{margin-top:var(--space-6)}.mt-8{margin-top:var(--space-8)}.mt-12{margin-top:var(--space-12)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.font-normal{font-weight:var(--weight-regular)}.font-medium{font-weight:var(--weight-medium)}.font-semibold{font-weight:var(--weight-semibold)}.font-bold{font-weight:var(--weight-bold)}.font-extrabold{font-weight:var(--weight-extrabold)}.uppercase{text-transform:uppercase}.lowercase{text-transform:lowercase}.capitalize{text-transform:capitalize}.border{border:1px solid var(--color-border)}.border-2{border:2px solid var(--color-border)}.border-t{border-top:1px solid var(--color-border)}.border-b{border-bottom:1px solid var(--color-border)}.border-l{border-left:1px solid var(--color-border)}.border-r{border-right:1px solid var(--color-border)}.border-primary{border-color:var(--color-primary)}.border-secondary{border-color:var(--color-secondary)}.rounded{border-radius:var(--radius-md)}.rounded-lg{border-radius:var(--radius-lg)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-full{border-radius:var(--radius-full)}.shadow-sm{box-shadow:var(--shadow-sm)}.shadow{box-shadow:var(--shadow-md)}.shadow-lg{box-shadow:var(--shadow-lg)}.shadow-xl{box-shadow:var(--shadow-xl)}.shadow-2xl{box-shadow:var(--shadow-2xl)}.bg-primary{background-color:var(--color-primary)}.bg-secondary{background-color:var(--color-secondary)}.bg-white{background-color:var(--color-bg)}.bg-gray{background-color:var(--color-bg-secondary)}.text-primary{color:var(--color-primary)}.text-secondary{color:var(--color-secondary)}.text-white{color:#fff}.w-full{width:100%}.aspect-square{aspect-ratio:1 / 1}.aspect-video{aspect-ratio:16 / 9}.object-cover{object-fit:cover}.object-contain{object-fit:contain}.overflow-hidden{overflow:hidden}.overflow-auto{overflow:auto}.relative{position:relative}.absolute{position:absolute}.fixed{position:fixed}.sticky{position:sticky}.z-10{z-index:10}.z-20{z-index:20}.z-30{z-index:30}.z-40{z-index:40}.z-50{z-index:50}:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}::selection{background-color:var(--color-secondary);color:var(--color-text)}::-moz-selection{background-color:var(--color-secondary);color:var(--color-text)}::-webkit-scrollbar{width:12px;height:12px}::-webkit-scrollbar-track{background:var(--color-bg-secondary)}::-webkit-scrollbar-thumb{background:var(--color-border-medium);border-radius:var(--radius-full);border:3px solid var(--color-bg-secondary)}::-webkit-scrollbar-thumb:hover{background:var(--color-primary)}.floating-mascot{position:fixed;bottom:var(--space-8);right:var(--space-8);z-index:var(--z-dropdown);background:transparent;border:none;cursor:pointer;padding:0;transition:transform var(--transition-base),opacity var(--transition-base);pointer-events:auto;opacity:0;transform:translateY(20px);pointer-events:none}.floating-mascot.visible{opacity:1;transform:translateY(0);pointer-events:auto}.floating-mascot.visible:hover{transform:scale(1.1) rotate(-5deg)}.floating-mascot.visible:active{transform:scale(.95)}.mascot-decoration{width:80px;height:auto;filter:drop-shadow(0 4px 12px rgba(0,0,0,.15));animation:float 3s ease-in-out infinite}.mascot-tooltip{position:absolute;top:50%;right:100%;transform:translateY(-50%);margin-right:var(--space-3);padding:var(--space-2) var(--space-4);background:var(--color-primary);color:#fff;font-family:var(--font-heading);font-size:var(--text-sm);font-weight:var(--weight-bold);border-radius:var(--radius-full);white-space:nowrap;opacity:0;pointer-events:none;transition:opacity var(--transition-base)}.mascot-tooltip:after{content:"";position:absolute;top:50%;left:100%;transform:translateY(-50%);width:0;height:0;border-left:8px solid var(--color-primary);border-top:6px solid transparent;border-bottom:6px solid transparent}.floating-mascot:hover .mascot-tooltip{opacity:1}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:var(--color-bg-overlay);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:var(--z-modal-backdrop);display:flex;align-items:center;justify-content:center;padding:var(--space-4);opacity:0;visibility:hidden;transition:all var(--transition-base)}.modal-overlay.active{opacity:1;visibility:visible}.modal-content{position:relative;max-width:500px;width:100%;background:#fff;border:3px solid var(--color-border);border-radius:var(--radius-2xl);padding:var(--space-12);box-shadow:var(--shadow-2xl);transform:scale(.9);transition:transform var(--transition-base);text-align:center;overflow:hidden}.modal-overlay.active .modal-content{transform:scale(1)}.modal-content:before{content:"";position:absolute;top:0;left:0;width:100%;height:4px;background:linear-gradient(90deg,var(--color-primary) 0%,var(--color-secondary) 100%);border-radius:var(--radius-2xl) var(--radius-2xl) 0 0}.modal-close{position:absolute;top:var(--space-4);right:var(--space-4);width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:var(--color-bg-secondary);border:none;border-radius:var(--radius-full);cursor:pointer;color:var(--color-text);transition:all var(--transition-base)}.modal-close:hover{background:var(--color-border-medium);transform:rotate(90deg)}.modal-mascot{margin-bottom:var(--space-6)}.modal-mascot img{width:100px;height:auto;filter:drop-shadow(0 4px 12px rgba(0,0,0,.1));animation:bounce 2s ease-in-out infinite}.modal-title{font-family:var(--font-heading);font-size:var(--text-h2);font-weight:var(--weight-bold);color:var(--color-text);margin-bottom:var(--space-4)}.modal-subtitle{font-size:var(--text-base);color:var(--color-text-medium);line-height:var(--leading-relaxed);margin-bottom:var(--space-8)}.modal-form{display:flex;flex-direction:column;gap:var(--space-3)}.modal-email-input{width:100%;padding:var(--space-4) var(--space-5);font-family:var(--font-main);font-size:var(--text-base);color:var(--color-text);background:var(--color-bg-secondary);border:2px solid var(--color-border);border-radius:var(--radius-lg);transition:all var(--transition-base)}.modal-email-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-alpha)}.modal-submit-btn{width:100%;padding:var(--space-4) var(--space-8);font-family:var(--font-heading);font-size:var(--text-lg);font-weight:var(--weight-bold);color:var(--color-text);background:var(--color-secondary);border:2px solid var(--color-secondary);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-base)}.modal-submit-btn:hover{background:var(--color-secondary-dark);transform:translateY(-2px);box-shadow:var(--shadow-lg)}.modal-disclaimer{font-size:var(--text-xs);color:var(--color-text-light);margin:0}@media (max-width: 768px){.mascot-decoration{width:60px}.floating-mascot{bottom:var(--space-4);right:var(--space-4)}.mascot-tooltip{display:none}}
