@import url(https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600&family=Playfair+Display:wght@400;600&family=JetBrains+Mono:wght@400;500&display=swap);:root{--font-primary:'Inter',system-ui,-apple-system,sans-serif;--font-display:'Playfair Display',Georgia,serif;--font-mono:'JetBrains Mono','SF Mono',monospace;--type-scale:1.25;--text-xs:calc(0.75rem * var(--type-scale));--text-sm:calc(0.875rem * var(--type-scale));--text-base:1rem;--text-lg:calc(var(--text-base) * var(--type-scale));--text-xl:calc(var(--text-lg) * var(--type-scale));--text-2xl:calc(var(--text-xl) * var(--type-scale));--text-3xl:calc(var(--text-2xl) * var(--type-scale));--text-4xl:calc(var(--text-3xl) * var(--type-scale));--text-5xl:calc(var(--text-4xl) * var(--type-scale));--space-scale:1.25;--space-1:0.25rem;--space-2:calc(var(--space-1) * var(--space-scale));--space-3:calc(var(--space-2) * var(--space-scale));--space-4:calc(var(--space-3) * var(--space-scale));--space-5:calc(var(--space-4) * var(--space-scale));--space-6:calc(var(--space-5) * var(--space-scale));--space-7:calc(var(--space-6) * var(--space-scale));--space-8:calc(var(--space-7) * var(--space-scale));--bg-primary:hsl(220, 15%, 8%);--bg-secondary:hsl(220, 12%, 12%);--bg-tertiary:hsl(220, 10%, 18%);--bg-elevated:hsl(220, 11%, 15%);--text-primary:hsl(220, 10%, 92%);--text-secondary:hsl(220, 10%, 70%);--text-tertiary:hsl(220, 10%, 50%);--text-inverse:hsl(220, 15%, 8%);--accent-primary:hsl(45, 85%, 65%);--accent-secondary:hsl(200, 75%, 55%);--accent-tertiary:hsl(320, 60%, 65%);--accent-quaternary:hsl(160, 50%, 55%);--primary:var(--accent-primary);--secondary:var(--accent-secondary);--success:hsl(142, 71%, 45%);--warning:hsl(38, 92%, 50%);--error:hsl(0, 84%, 60%);--info:hsl(200, 75%, 55%);--glass-bg:hsla(220, 15%, 15%, 0.7);--glass-bg-light:hsla(220, 15%, 20%, 0.5);--glass-border:hsla(220, 20%, 25%, 0.3);--glass-shadow:0 8px 32px hsla(220, 15%, 5%, 0.3);--glass-blur:blur(10px);--shadow-sm:0 1px 2px hsla(220, 15%, 5%, 0.05);--shadow-md:0 4px 6px hsla(220, 15%, 5%, 0.07),0 2px 4px hsla(220, 15%, 5%, 0.06);--shadow-lg:0 10px 15px hsla(220, 15%, 5%, 0.1),0 4px 6px hsla(220, 15%, 5%, 0.05);--shadow-xl:0 20px 25px hsla(220, 15%, 5%, 0.1),0 10px 10px hsla(220, 15%, 5%, 0.04);--shadow-2xl:0 25px 50px hsla(220, 15%, 5%, 0.25);--duration-fast:150ms;--duration-normal:300ms;--duration-slow:500ms;--duration-slower:800ms;--ease-in-out-expo:cubic-bezier(0.87, 0, 0.13, 1);--ease-out-expo:cubic-bezier(0.16, 1, 0.3, 1);--ease-in-expo:cubic-bezier(0.7, 0, 0.84, 0);--ease-spring:cubic-bezier(0.175, 0.885, 0.32, 1.275);--z-base:0;--z-dropdown:1000;--z-sticky:1020;--z-fixed:1030;--z-modal-backdrop:1040;--z-modal:1050;--z-popover:1060;--z-tooltip:1070;--radius-sm:0.25rem;--radius-md:0.5rem;--radius-lg:0.75rem;--radius-xl:1rem;--radius-2xl:1.5rem;--radius-full:9999px}*{margin:0;padding:0;box-sizing:border-box}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}body{font-family:var(--font-primary);font-weight:400;line-height:1.6;color:var(--text-primary);background-color:var(--bg-primary);overflow-x:hidden}.heading-display{font-family:var(--font-display);font-weight:400;letter-spacing:-.02em;line-height:1.1}.heading-1{font-size:var(--text-5xl);font-weight:300;letter-spacing:-.03em;line-height:1.1}.heading-2{font-size:var(--text-4xl);font-weight:400;letter-spacing:-.02em;line-height:1.2}.heading-3{font-size:var(--text-3xl);font-weight:400;letter-spacing:-.01em;line-height:1.3}.heading-4{font-size:var(--text-2xl);font-weight:500;line-height:1.4}.body-large{font-size:var(--text-lg);line-height:1.7}.body-base{font-size:var(--text-base);line-height:1.6}.body-small{font-size:var(--text-sm);line-height:1.5}.caption{font-size:var(--text-xs);font-weight:500;letter-spacing:.05em;text-transform:uppercase}.mono{font-family:var(--font-mono);font-size:.9em}.glass-card{background:var(--glass-bg);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border-radius:var(--radius-lg);transition:all var(--duration-normal) var(--ease-out-expo)}.glass-card:hover{background:var(--glass-bg-light);transform:translateY(-2px);box-shadow:var(--shadow-xl)}.glass-button{background:var(--glass-bg);border:1px solid var(--glass-border);color:var(--text-primary);padding:var(--space-3) var(--space-5);border-radius:var(--radius-full);font-weight:500;backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);transition:all var(--duration-fast) var(--ease-out-expo);cursor:pointer}.glass-button:hover{background:hsla(220,15%,25%,.7);transform:scale(1.05)}.glass-button:active{transform:scale(.98)}.interactive{position:relative;overflow:hidden}.interactive::before{content:'';position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:radial-gradient(circle,var(--accent-primary) 0,transparent 70%);transform:translate(-50%,-50%);transition:width var(--duration-slow) var(--ease-out-expo),height var(--duration-slow) var(--ease-out-expo)}.interactive:hover::before{width:300%;height:300%;opacity:.1}.skeleton{position:relative;overflow:hidden;background:linear-gradient(90deg,var(--bg-secondary) 0,var(--bg-tertiary) 50%,var(--bg-secondary) 100%);background-size:200% 100%;animation:skeleton-loading 1.5s ease-in-out infinite}@keyframes skeleton-loading{0%{background-position:200% 0}100%{background-position:-200% 0}}:focus{outline:0}:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.museum-layout{display:grid;grid-template-columns:minmax(16rem,1fr) 3fr;grid-template-rows:auto 1fr auto;min-height:100vh;gap:var(--space-6)}.content-well{max-width:65ch;margin-inline:auto;padding:var(--space-8)}.artifact-display{position:relative;background:var(--bg-secondary);border-radius:var(--radius-lg);padding:var(--space-6);box-shadow:0 1px 3px hsla(220,15%,5%,.1),0 4px 6px hsla(220,15%,5%,.1),0 8px 12px hsla(220,15%,5%,.15),0 16px 24px hsla(220,15%,5%,.15);transition:all var(--duration-normal) var(--ease-out-expo)}.artifact-display:hover{transform:translateY(-4px);box-shadow:0 4px 6px hsla(220,15%,5%,.1),0 8px 12px hsla(220,15%,5%,.15),0 16px 24px hsla(220,15%,5%,.15),0 24px 48px hsla(220,15%,5%,.2)}.button{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-5);font-weight:500;border:none;border-radius:var(--radius-full);cursor:pointer;transition:all var(--duration-fast) var(--ease-out-expo);position:relative;overflow:hidden}.button-primary{background:var(--accent-primary);color:var(--bg-primary)}.button-primary:hover{background:#f3d371;transform:translateY(-1px);box-shadow:0 4px 12px hsla(45,85%,65%,.3)}.button-secondary{background:0 0;color:var(--text-primary);border:1px solid var(--glass-border)}.button-secondary:hover{background:var(--glass-bg);border-color:var(--accent-primary)}@media (max-width:768px){:root{--text-5xl:2.5rem;--text-4xl:2rem;--text-3xl:1.75rem;--text-2xl:1.5rem;--text-xl:1.25rem}.museum-layout{grid-template-columns:1fr}.content-well{padding:var(--space-6)}}@media (prefers-reduced-motion:reduce){*{animation-duration:0s!important;animation-iteration-count:1!important;transition-duration:0s!important;scroll-behavior:auto!important}}@media (prefers-contrast:high){:root{--glass-bg:hsla(220, 15%, 15%, 0.9);--text-secondary:hsl(220, 10%, 80%);--glass-border:hsla(220, 20%, 40%, 0.5)}}@media print{body{background:#fff;color:#000}.glass-card{background:0 0;border:1px solid #000;box-shadow:none}.no-print{display:none}}