.header{position:sticky;top:0;z-index:100;background:#ffffffeb;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--color-border)}.header-inner{display:flex;align-items:center;justify-content:space-between;height:72px}.header-logo{text-decoration:none;display:flex;align-items:center}.header-logo-img{height:40px;width:auto;display:block}.header-nav{display:flex;align-items:center;gap:var(--space-6)}.header-nav a{color:var(--color-text);font-weight:var(--weight-medium);font-size:var(--text-base);text-decoration:none;position:relative;padding:var(--space-1) 0;transition:color var(--transition-fast)}.header-nav a:after{content:"";position:absolute;bottom:-2px;left:0;right:0;height:2px;background:var(--color-accent);transform:scaleX(0);transition:transform var(--transition-base);border-radius:var(--radius-full)}.header-nav a:hover,.header-nav a.active{color:var(--color-accent)}.header-nav a:hover:after,.header-nav a.active:after{transform:scaleX(1)}.lang-toggle{display:flex;align-items:center;gap:2px;background:var(--color-warm-bg);border-radius:var(--radius-full);padding:4px 8px;font-size:13px;font-weight:var(--weight-semibold);letter-spacing:.02em}.lang-btn{background:none;border:none;padding:3px 6px;border-radius:var(--radius-full);cursor:pointer;color:var(--color-text-muted);font-size:13px;font-weight:var(--weight-semibold);transition:all var(--transition-fast);line-height:1}.lang-btn.active{background:var(--color-primary);color:#fff}.lang-btn:hover:not(.active){color:var(--color-primary)}.lang-divider{color:var(--color-text-muted);font-size:12px;opacity:.4;-webkit-user-select:none;user-select:none}.header-right-mobile{display:none;align-items:center;gap:var(--space-3)}.header-hamburger{display:none;background:none;border:none;width:32px;height:32px;position:relative;cursor:pointer}.header-hamburger span,.header-hamburger span:before,.header-hamburger span:after{display:block;width:24px;height:2px;background:var(--color-primary);position:absolute;transition:all var(--transition-base);left:4px}.header-hamburger span{top:15px}.header-hamburger span:before{content:"";top:-7px}.header-hamburger span:after{content:"";top:7px}.header-hamburger span.open{background:transparent}.header-hamburger span.open:before{top:0;transform:rotate(45deg)}.header-hamburger span.open:after{top:0;transform:rotate(-45deg)}@media(max-width:768px){.header{background:#fff;-webkit-backdrop-filter:none;backdrop-filter:none}.header-right-mobile{display:flex}.header-hamburger{display:block}.header-nav{position:fixed;inset:72px 0 0;background:#fff;flex-direction:column;padding:var(--space-8) var(--space-6);gap:var(--space-6);transform:translate(100%);transition:transform var(--transition-base);z-index:99}.header-nav.open{transform:translate(0)}.header-nav a{font-size:var(--text-xl)}.header-nav .lang-toggle{display:none}}.footer{background:var(--color-primary);color:var(--color-primary-fg);padding:var(--space-16) 0 var(--space-8);margin-top:auto}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:var(--space-10);margin-bottom:var(--space-10)}.footer-brand p{color:#f8fafcb3;margin-top:var(--space-4);max-width:280px;line-height:var(--leading-relaxed)}.footer-logo{font-size:var(--text-xl);font-weight:var(--weight-bold);text-decoration:none}.footer-logo .logo-live{color:#fff}.footer-logo .logo-ivents{color:var(--color-accent)}.footer-links{display:flex;flex-direction:column;gap:var(--space-3)}.footer-links h4{color:#fff;font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.1em;margin-bottom:var(--space-2)}.footer-links a{color:#f8fafcb3;font-size:var(--text-base);transition:color var(--transition-fast)}.footer-links a:hover{color:var(--color-accent)}.footer-bottom{border-top:1px solid hsla(210,40%,98%,.15);padding-top:var(--space-6);text-align:center}.footer-bottom p{color:#f8fafc80;font-size:var(--text-sm)}@media(max-width:768px){.footer-grid{grid-template-columns:1fr 1fr;gap:var(--space-8)}.footer-brand{grid-column:1 / -1}}@media(max-width:480px){.footer-grid{grid-template-columns:1fr}}.modal-overlay{position:fixed;inset:0;background:var(--color-overlay);z-index:200;display:flex;align-items:center;justify-content:center;padding:var(--space-6);animation:modalFadeIn .2s ease}@keyframes modalFadeIn{0%{opacity:0}to{opacity:1}}.modal-container{background:#fff;border-radius:var(--radius-2xl);max-width:480px;width:100%;max-height:90vh;overflow-y:auto;padding:var(--space-8);position:relative;animation:modalSlideUp .3s ease;box-shadow:var(--shadow-2xl)}@keyframes modalSlideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-close{position:absolute;top:var(--space-4);right:var(--space-4);background:none;border:none;font-size:var(--text-2xl);color:var(--color-text-muted);cursor:pointer;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-full);transition:all var(--transition-fast)}.modal-close:hover{background:var(--color-secondary);color:var(--color-text)}.modal-title{font-size:var(--text-2xl);margin-bottom:var(--space-6);text-align:center}.modal-body{display:flex;flex-direction:column;gap:var(--space-4)}.auth-modal{display:flex;flex-direction:column;gap:var(--space-5)}.auth-tabs{display:flex;gap:var(--space-1);background:var(--color-secondary);border-radius:var(--radius-full);padding:var(--space-1)}.auth-tab{flex:1;padding:var(--space-3) var(--space-4);border:none;background:none;border-radius:var(--radius-full);font-weight:var(--weight-semibold);font-size:var(--text-md);cursor:pointer;transition:all var(--transition-fast);color:var(--color-text-muted)}.auth-tab.active{background:#fff;color:var(--color-text);box-shadow:var(--shadow-sm)}.auth-form{display:flex;flex-direction:column;gap:var(--space-4)}.auth-form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4)}.auth-submit{margin-top:var(--space-2);width:100%}.auth-link{background:none;border:none;color:var(--color-accent);font-size:var(--text-sm);cursor:pointer;text-align:center;padding:var(--space-2)}.auth-link:hover{text-decoration:underline}.auth-description{color:var(--color-text-muted);text-align:center;font-size:var(--text-base)}@media(max-width:480px){.auth-form-row{grid-template-columns:1fr}}.cookie-banner{position:fixed;bottom:0;left:0;right:0;z-index:999;background:#020817;color:#fff;padding:16px 24px;box-shadow:0 -4px 24px #0000002e}.cookie-banner-inner{max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}.cookie-banner-text{font-size:.875rem;line-height:1.5;color:#e0e0e0;margin:0;flex:1;min-width:200px}.cookie-banner-link{color:#fa75ff;text-decoration:underline;text-underline-offset:2px}.cookie-banner-link:hover{color:#fca8ff}.cookie-banner-actions{display:flex;gap:10px;flex-shrink:0}.cookie-btn{padding:8px 20px;border-radius:var(--radius-md, .375rem);font-size:.875rem;font-weight:500;cursor:pointer;border:none;transition:opacity .15s;white-space:nowrap}.cookie-btn:hover{opacity:.85}.cookie-btn-accept{background:#fa75ff;color:#020817}.cookie-btn-decline{background:transparent;color:#ccc;border:1px solid hsl(0,0%,45%)}@media(max-width:600px){.cookie-banner-inner{flex-direction:column;align-items:flex-start;gap:14px}.cookie-banner-actions{width:100%}.cookie-btn{flex:1;text-align:center}}:root{--color-bg: hsl(0, 0%, 100%);--color-surface: hsl(0, 0%, 100%);--color-surface-dark: hsl(0, 0%, 10%);--color-overlay: hsla(0, 0%, 0%, .5);--color-primary: hsl(222.2, 47.4%, 11.2%);--color-primary-fg: hsl(210, 40%, 98%);--color-accent: hsl(298, 100%, 73%);--color-accent-hover: hsl(298, 100%, 78%);--color-secondary: hsl(210, 40%, 96.1%);--color-secondary-fg: hsl(222.2, 47.4%, 11.2%);--color-text: hsl(222.2, 84%, 4.9%);--color-text-inverse: hsl(0, 0%, 100%);--color-text-muted: hsl(215.4, 16.3%, 46.9%);--color-text-subtle: hsl(0, 0%, 60%);--color-border: hsl(214.3, 31.8%, 91.4%);--color-border-strong: hsl(0, 0%, 0%);--color-success: hsl(142, 71%, 45%);--color-warning: hsl(38, 92%, 50%);--color-error: hsl(0, 84.2%, 60.2%);--color-error-fg: hsl(210, 40%, 98%);--color-input-bg: hsla(0, 0%, 100%, .1);--color-input-border: hsla(0, 0%, 100%, .2);--color-input-focus: hsl(298, 100%, 73%);--color-warm-bg: hsl(30, 40%, 96%);--color-warm-accent: hsl(24, 80%, 55%);--color-earthy: hsl(30, 25%, 42%);--color-sand: hsl(38, 35%, 90%);--color-terracotta: hsl(14, 55%, 52%);--color-olive: hsl(85, 25%, 42%);--color-lavender: hsl(270, 35%, 75%);--font-sans: "Host Grotesk", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono: "JetBrains Mono", "Fira Code", monospace;--text-xs: .6875rem;--text-sm: .8125rem;--text-base: .875rem;--text-md: 1rem;--text-lg: 1.0625rem;--text-xl: 1.5rem;--text-2xl: 2rem;--text-3xl: 2.5rem;--text-4xl: 3rem;--text-5xl: 3.75rem;--weight-normal: 400;--weight-medium: 500;--weight-semibold: 600;--weight-bold: 700;--leading-tight: 1.2;--leading-normal: 1.5;--leading-relaxed: 1.625;--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;--radius-none: 0;--radius-sm: .125rem;--radius-md: .375rem;--radius-lg: .5rem;--radius-xl: .75rem;--radius-2xl: 1rem;--radius-full: 9999px;--shadow-sm: 0 1px 2px hsla(0, 0%, 0%, .05);--shadow-md: 0 4px 6px hsla(0, 0%, 0%, .1);--shadow-lg: 0 10px 15px hsla(0, 0%, 0%, .1);--shadow-xl: 0 20px 25px hsla(0, 0%, 0%, .15);--shadow-2xl: 0 25px 50px hsla(0, 0%, 0%, .25);--shadow-warm: 0 4px 20px hsla(30, 50%, 30%, .12);--transition-fast: .15s ease;--transition-base: .3s ease;--transition-slow: .5s ease}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font-sans);font-size:var(--text-md);font-weight:var(--weight-normal);line-height:var(--leading-normal);color:var(--color-text);background-color:var(--color-warm-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{font-family:var(--font-sans);line-height:var(--leading-tight);color:var(--color-text)}h1{font-size:var(--text-4xl);font-weight:var(--weight-bold)}h2{font-size:var(--text-3xl);font-weight:var(--weight-bold)}h3{font-size:var(--text-2xl);font-weight:var(--weight-semibold)}h4{font-size:var(--text-xl);font-weight:var(--weight-semibold)}a{color:var(--color-accent);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-accent-hover)}img{max-width:100%;height:auto;display:block}button{font-family:var(--font-sans);cursor:pointer;border:none;outline:none}input,textarea,select{font-family:var(--font-sans);font-size:var(--text-md)}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 var(--space-6)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-6);font-size:var(--text-md);font-weight:var(--weight-semibold);border-radius:var(--radius-full);transition:all var(--transition-base);border:none;cursor:pointer;text-decoration:none;line-height:1}.btn-primary{background:var(--color-primary);color:var(--color-primary-fg)}.btn-primary:hover{background:#182544;transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-accent{background:var(--color-accent);color:var(--color-primary)}.btn-accent:hover{background:var(--color-accent-hover);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-outline{background:transparent;color:var(--color-primary);border:2px solid var(--color-primary)}.btn-outline:hover{background:var(--color-primary);color:var(--color-primary-fg)}.btn-warm{background:var(--color-terracotta);color:#fff}.btn-warm:hover{background:#b25134;transform:translateY(-1px)}.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)}.input-field{width:100%;padding:var(--space-3) var(--space-4);border:2px solid var(--color-border);border-radius:var(--radius-lg);font-size:var(--text-md);transition:border-color var(--transition-fast);background:#fff;color:var(--color-text)}.input-field:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px #fa75ff26}.input-field::placeholder{color:var(--color-text-subtle)}.form-group{display:flex;flex-direction:column;gap:var(--space-2)}.form-group label{font-weight:var(--weight-medium);font-size:var(--text-sm);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em}.section{padding:var(--space-16) 0}.section-title{text-align:center;margin-bottom:var(--space-12)}.section-title h2{margin-bottom:var(--space-3)}.section-title p{color:var(--color-text-muted);font-size:var(--text-lg);max-width:600px;margin:0 auto}.card{background:#fff;border-radius:var(--radius-2xl);overflow:hidden;box-shadow:var(--shadow-warm);transition:transform var(--transition-base),box-shadow var(--transition-base)}.card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.page-header{background:var(--color-primary);color:var(--color-primary-fg);padding:var(--space-16) 0 var(--space-12);text-align:center}.page-header h1{color:var(--color-primary-fg);margin-bottom:var(--space-4)}.page-header p{color:#f8fafccc;font-size:var(--text-lg);max-width:600px;margin:0 auto}.empty-state{text-align:center;padding:var(--space-16) var(--space-6);color:var(--color-text-muted)}.empty-state h3{color:var(--color-text-muted);margin-bottom:var(--space-3)}.loading-spinner{display:flex;align-items:center;justify-content:center;padding:var(--space-16)}.loading-spinner:after{content:"";width:40px;height:40px;border:3px solid var(--color-border);border-top-color:var(--color-accent);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.error-message{background:#fde8e8;color:var(--color-error);padding:var(--space-3) var(--space-4);border-radius:var(--radius-lg);font-size:var(--text-sm);border:1px solid hsl(0,84.2%,85%)}.success-message{background:#e9fbf0;color:#16833e;padding:var(--space-3) var(--space-4);border-radius:var(--radius-lg);font-size:var(--text-sm);border:1px solid hsl(142,71%,80%)}@media(max-width:768px){h1{font-size:var(--text-3xl)}h2{font-size:var(--text-2xl)}h3{font-size:var(--text-xl)}.container{padding:0 var(--space-4)}.section{padding:var(--space-10) 0}}
