.navbar{position:fixed;top:0;left:0;right:0;z-index:1000;height:var(--nav-height);display:flex;align-items:center;background:var(--glass-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border-bottom:1px solid var(--glass-border);transition:background var(--transition-base),border-color var(--transition-base)}.navbar .container{display:flex;align-items:center;justify-content:space-between}.nav-logo{display:flex;align-items:center;gap:var(--space-2);font-family:var(--font-headline);font-size:var(--text-lg);font-weight:700;letter-spacing:-.02em;color:var(--text-primary);transition:opacity var(--transition-fast)}.nav-logo:hover{opacity:.7}.nav-logo-mark{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:var(--accent-primary);color:var(--text-inverse);font-size:var(--text-sm);font-weight:800;border-radius:var(--radius-sm)}.nav-logo-mark.has-image,.footer-logo-mark.has-image{background:transparent;padding:0;overflow:hidden}.nav-logo-mark img,.footer-logo-mark img{width:100%;height:100%;object-fit:contain;display:block}.nav-right{display:flex;align-items:center;gap:var(--space-8)}.nav-links{display:flex;align-items:center;gap:var(--space-6)}.nav-link{font-family:var(--font-body);font-size:var(--text-sm);font-weight:500;text-transform:uppercase;letter-spacing:.1em;color:var(--text-secondary);position:relative;padding:var(--space-1) 0;transition:color var(--transition-fast)}.nav-link:after{content:"";position:absolute;bottom:-2px;left:0;width:0;height:1px;background:var(--text-primary);transition:width var(--transition-base)}.nav-link:hover,.nav-link.active{color:var(--text-primary)}.nav-link:hover:after,.nav-link.active:after{width:100%}.theme-toggle{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:var(--radius-full);border:1px solid var(--border-color);background:transparent;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast)}.theme-toggle:hover{border-color:var(--text-primary);color:var(--text-primary);background:var(--accent-subtle)}.theme-toggle svg{width:18px;height:18px;transition:transform var(--transition-base)}.theme-toggle:hover svg{transform:rotate(15deg)}.theme-toggle .icon-sun{display:none}.theme-toggle .icon-moon,[data-theme=light] .theme-toggle .icon-sun{display:block}[data-theme=light] .theme-toggle .icon-moon{display:none}.nav-hamburger{display:none;flex-direction:column;gap:5px;width:24px;cursor:pointer;padding:var(--space-2);background:none;border:none}.nav-hamburger span{display:block;width:100%;height:1.5px;background:var(--text-primary);transition:all var(--transition-fast);transform-origin:center}.nav-hamburger.active span:nth-child(1){transform:rotate(45deg) translate(4px,5px)}.nav-hamburger.active span:nth-child(2){opacity:0}.nav-hamburger.active span:nth-child(3){transform:rotate(-45deg) translate(4px,-5px)}.nav-mobile{display:none;position:fixed;top:var(--nav-height);left:0;right:0;bottom:0;background:var(--bg-primary);z-index:999;padding:var(--space-12) var(--container-padding);opacity:0;transform:translateY(-10px);transition:all var(--transition-base);pointer-events:none}.nav-mobile.open{opacity:1;transform:translateY(0);pointer-events:all}.nav-mobile-links{display:flex;flex-direction:column;gap:var(--space-6)}.nav-mobile-link{font-family:var(--font-headline);font-size:var(--text-3xl);font-weight:700;color:var(--text-primary);transition:color var(--transition-fast)}.nav-mobile-link:hover{color:var(--text-secondary)}@media(max-width:768px){.nav-links{display:none}.nav-hamburger{display:flex}.nav-mobile{display:block}}.footer{border-top:1px solid var(--border-color);padding-top:var(--space-16);padding-bottom:var(--space-8);margin-top:var(--space-16)}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:var(--space-12);margin-bottom:var(--space-12)}.footer-brand{display:flex;flex-direction:column;gap:var(--space-4)}.footer-logo{display:flex;align-items:center;gap:var(--space-2);font-family:var(--font-headline);font-size:var(--text-xl);font-weight:700;color:var(--text-primary)}.footer-logo-mark{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:var(--accent-primary);color:var(--text-inverse);font-size:var(--text-xs);font-weight:800;border-radius:var(--radius-sm)}.footer-brand p{font-size:var(--text-sm);color:var(--text-secondary);line-height:1.7;max-width:300px}.footer-col-title{font-family:var(--font-mono);font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.15em;color:var(--text-muted);margin-bottom:var(--space-5)}.footer-links{display:flex;flex-direction:column;gap:var(--space-3)}.footer-link{font-size:var(--text-sm);color:var(--text-secondary);transition:color var(--transition-fast)}.footer-link:hover{color:var(--text-primary)}.footer-social{display:flex;gap:var(--space-3);margin-top:var(--space-4)}.footer-social-link{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border:1px solid var(--border-color);border-radius:var(--radius-full);color:var(--text-secondary);transition:all var(--transition-fast)}.footer-social-link:hover{border-color:var(--text-primary);color:var(--text-primary);background:var(--accent-subtle)}.footer-social-link svg{width:16px;height:16px}.footer-bottom{display:flex;align-items:center;justify-content:space-between;padding-top:var(--space-6);border-top:1px solid var(--border-color)}.footer-copyright{font-size:var(--text-xs);color:var(--text-muted);font-family:var(--font-mono)}.footer-bottom-links{display:flex;gap:var(--space-6)}.footer-bottom-link{font-size:var(--text-xs);color:var(--text-muted);transition:color var(--transition-fast)}.footer-bottom-link:hover{color:var(--text-secondary)}@media(max-width:968px){.footer-grid{grid-template-columns:1fr 1fr;gap:var(--space-8)}}@media(max-width:480px){.footer-grid{grid-template-columns:1fr}.footer-bottom{flex-direction:column;gap:var(--space-4);text-align:center}}.status-indicator{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);border:1px solid var(--border-color);border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:500;text-transform:uppercase;letter-spacing:.1em;color:var(--text-secondary)}.status-dot{width:8px;height:8px;border-radius:var(--radius-full);background:var(--text-muted)}.status-indicator.available .status-dot{background:var(--success);box-shadow:0 0 8px #4ade8066;animation:pulse 2s infinite}.status-indicator.unavailable .status-dot{background:var(--error)}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}
