:root{--black:#000;--dark-100:#040206;--dark-200:#08050c;--dark-300:#0e0915;--dark-400:#140e1e;--purple:#8a2be2;--purple-light:#b86cff;--purple-bright:#a855f7;--purple-deep:#4e148c;--white:#fff;--off-white:#f5f3f7;--muted:#9e96a6;--muted-dark:#5f5768;--border:#ffffff1a;--border-subtle:#ffffff0d;--border-purple:#8a2be273;--border-purple-light:#b86cff99;--border-strong:#8a2be273;--purple-glow-subtle:#8a2be226;--purple-glow-accent:#b86cff59;--font-display:"Bebas Neue", "Syne", -apple-system, sans-serif;--font-heading:"Space Grotesk", "Syne", -apple-system, sans-serif;--font-body:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono:ui-monospace, "JetBrains Mono", "SF Mono", Consolas, monospace;--nav-height:72px;--radius-sm:4px;--radius-md:8px;--radius-lg:14px;--transition-fast:.15s ease;--transition-normal:.3s cubic-bezier(.16, 1, .3, 1);--transition-slow:.6s cubic-bezier(.16, 1, .3, 1)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;background-color:var(--black);color:var(--white);font-family:var(--font-body);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px;line-height:1.6;overflow-x:hidden}body{background-color:var(--black);color:var(--white);min-height:100vh;position:relative;overflow-x:hidden}#root{flex-direction:column;width:100%;min-height:100vh;display:flex;position:relative}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);color:var(--white);letter-spacing:-.02em;font-weight:700;line-height:1.1}p{color:var(--muted);font-size:1.05rem;line-height:1.7}a{color:inherit;text-decoration:none}button{cursor:pointer;background:0 0;border:none;font-family:inherit}img{max-width:100%;height:auto;display:block}.container{width:100%;max-width:1400px;margin:0 auto;padding:0 2.5rem}@media (width<=768px){.container{padding:0 1.25rem}}.section{border-bottom:1px solid var(--border-subtle);padding:7rem 0;position:relative}@media (width<=768px){.section{padding:4.5rem 0}}.section-light{color:#0e0916;background-color:#faf8fc;border-bottom:1px solid #00000014}.section-light h1,.section-light h2,.section-light h3,.section-light h4{color:#0b0612}.section-light p{color:#4b4553}.btn{font-family:var(--font-heading);letter-spacing:.06em;text-transform:uppercase;border-radius:var(--radius-sm);transition:var(--transition-fast);white-space:nowrap;box-sizing:border-box;justify-content:center;align-items:center;gap:.65rem;max-width:100%;padding:.9rem 1.85rem;font-size:.88rem;font-weight:700;display:inline-flex}@media (width<=480px){.btn{white-space:normal;text-align:center;padding:.85rem 1.15rem;font-size:.82rem}}.btn-primary{color:#000;background:#fff;border:1px solid #fff}.btn-primary:hover{background:var(--off-white);color:#000;transform:translateY(-1px)}.btn-secondary{color:#fff;border:1px solid var(--border-purple);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0e091599}.btn-secondary:hover{border-color:var(--purple-light);color:#fff;background:#8a2be226;transform:translateY(-1px)}.btn-purple{background:var(--purple);color:#fff;border:1px solid var(--purple)}.btn-purple:hover{background:var(--purple-bright);border-color:var(--purple-bright);color:#fff;transform:translateY(-1px)}.btn:focus-visible{outline:2px solid var(--purple-light);outline-offset:3px}.section-eyebrow{font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--purple-light);align-items:center;gap:.5rem;margin-bottom:.85rem;font-size:.76rem;display:inline-flex}.section-eyebrow:before{content:"";background:var(--purple-light);width:12px;height:2px;display:inline-block}.section-title{text-transform:uppercase;letter-spacing:-.02em;margin-bottom:1.5rem;font-size:clamp(2.4rem,5.5vw,4.5rem);font-weight:800;line-height:1.05}.text-purple-highlight{color:var(--purple-light)}.tech-input{border:1px solid var(--border);border-radius:var(--radius-sm);color:#fff;width:100%;font-family:var(--font-body);transition:var(--transition-fast);background:#ffffff08;padding:.95rem 1.15rem;font-size:.92rem}.tech-input:focus{border-color:var(--purple-light);background:#8a2be214;outline:none;box-shadow:0 0 0 2px #8a2be233}select.tech-input,.tech-select{cursor:pointer;color:#fff;appearance:none;background-color:#0e0918;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23C084FC' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 1.25rem center;background-repeat:no-repeat;background-size:16px;padding-right:3rem}select.tech-input option,.tech-select option{padding:.75rem 1rem;color:#fff!important;background-color:#0e0918!important}select.tech-input option:checked,.tech-select option:checked{font-weight:600;color:#c084fc!important;background-color:#23123e!important}.subtle-blueprint-grid{pointer-events:none;background-image:linear-gradient(90deg,#8a2be208 1px,#0000 1px),linear-gradient(#8a2be208 1px,#0000 1px);background-size:50px 50px;position:absolute;inset:0}.modal-overlay{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:9999;background:#000000e0;justify-content:center;align-items:center;padding:1.5rem;animation:.2s ease-out fadeIn;display:flex;position:fixed;inset:0}.modal-content{background:var(--dark-200);border:1px solid var(--border-purple);border-radius:var(--radius-md);width:100%;max-width:540px;padding:2.75rem 2.25rem;animation:.2s cubic-bezier(.16,1,.3,1) scaleUp;position:relative;box-shadow:0 25px 60px #000c,0 0 35px #8a2be233}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleUp{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}.reveal-pop,.reveal:not(.reveal-header):not(.reveal-image-container):not(.reveal-stagger),.reveal-choreography{opacity:0;will-change:opacity, transform;transition:opacity .72s cubic-bezier(.22,1,.36,1),transform .72s cubic-bezier(.22,1,.36,1);transform:translateY(35px)scale(.96)}.reveal-pop.is-revealed,.reveal:not(.reveal-header):not(.reveal-image-container):not(.reveal-stagger).is-revealed,.reveal-choreography.is-revealed{opacity:1;transform:translateY(0)scale(1)}.reveal-card{opacity:0;will-change:opacity, transform;transition:opacity .68s cubic-bezier(.22,1,.36,1),transform .68s cubic-bezier(.22,1,.36,1);transform:translateY(30px)scale(.97)}.reveal-card.is-revealed,.is-revealed .reveal-card{opacity:1;transform:translateY(0)scale(1)}.reveal-header .section-eyebrow,.reveal-header .eyebrow-reveal,.reveal-header .page-eyebrow,.reveal-header .events-eyebrow,.reveal-header .badge-tag{opacity:0;will-change:opacity, transform;transition:opacity .65s cubic-bezier(.22,1,.36,1),transform .65s cubic-bezier(.22,1,.36,1);transform:translateY(15px)}.reveal-header .section-title,.reveal-header .title-reveal,.reveal-header .page-title,.reveal-header .events-hero-title,.reveal-header .day-header-title,.reveal-header h1,.reveal-header h2{opacity:0;will-change:opacity, transform;transition:opacity .72s cubic-bezier(.22,1,.36,1) 80ms,transform .72s cubic-bezier(.22,1,.36,1) 80ms;transform:translateY(25px)}.reveal-header .section-sub,.reveal-header .hero-sub,.reveal-header .desc-reveal,.reveal-header .page-description,.reveal-header .events-hero-sub,.reveal-header .section-desc{opacity:0;will-change:opacity, transform;transition:opacity .68s cubic-bezier(.22,1,.36,1) .16s,transform .68s cubic-bezier(.22,1,.36,1) .16s;transform:translateY(15px)}.reveal-header.is-revealed .section-eyebrow,.reveal-header.is-revealed .eyebrow-reveal,.reveal-header.is-revealed .page-eyebrow,.reveal-header.is-revealed .events-eyebrow,.reveal-header.is-revealed .badge-tag,.reveal-header.is-revealed .section-title,.reveal-header.is-revealed .title-reveal,.reveal-header.is-revealed .page-title,.reveal-header.is-revealed .events-hero-title,.reveal-header.is-revealed .day-header-title,.reveal-header.is-revealed h1,.reveal-header.is-revealed h2,.reveal-header.is-revealed .section-sub,.reveal-header.is-revealed .hero-sub,.reveal-header.is-revealed .desc-reveal,.reveal-header.is-revealed .page-description,.reveal-header.is-revealed .events-hero-sub,.reveal-header.is-revealed .section-desc{opacity:1;transform:translateY(0)}.reveal-image-container{position:relative;overflow:hidden}.reveal-image-container img,.reveal-image{opacity:0;will-change:opacity, transform;transition:opacity .8s cubic-bezier(.22,1,.36,1),transform .85s cubic-bezier(.22,1,.36,1);transform:scale(1.04)}.reveal-image-container.is-revealed img,.reveal-image.is-revealed{opacity:1;transform:scale(1)}.reveal-stagger>*{opacity:0;will-change:opacity, transform;transition:opacity .68s cubic-bezier(.22,1,.36,1),transform .68s cubic-bezier(.22,1,.36,1);transform:translateY(30px)scale(.97)}.reveal-stagger.is-revealed>*{opacity:1;transform:translateY(0)scale(1)}.reveal-stagger>:first-child{transition-delay:0s}.reveal-stagger>:nth-child(2){transition-delay:.1s}.reveal-stagger>:nth-child(3){transition-delay:.2s}.reveal-stagger>:nth-child(4){transition-delay:.3s}.reveal-stagger>:nth-child(5){transition-delay:.4s}.reveal-stagger>:nth-child(6){transition-delay:.5s}.reveal-stagger>:nth-child(7){transition-delay:.6s}.reveal-stagger>:nth-child(8){transition-delay:.7s}.reveal-delay-1{transition-delay:.1s!important}.reveal-delay-2{transition-delay:.2s!important}.reveal-delay-3{transition-delay:.3s!important}.reveal-delay-4{transition-delay:.4s!important}.btn{transition:transform .22s cubic-bezier(.16,1,.3,1),background-color .22s,border-color .22s,box-shadow .22s}.btn:hover{transform:translateY(-2px)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;transition-delay:0s!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.reveal,.reveal-pop,.reveal-choreography,.reveal-card,.reveal-image,.reveal-stagger>*,.reveal-image-container img,.reveal-header .section-eyebrow,.reveal-header .eyebrow-reveal,.reveal-header .page-eyebrow,.reveal-header .events-eyebrow,.reveal-header .badge-tag,.reveal-header .section-title,.reveal-header .title-reveal,.reveal-header .page-title,.reveal-header .events-hero-title,.reveal-header .day-header-title,.reveal-header h1,.reveal-header h2,.reveal-header .section-sub,.reveal-header .hero-sub,.reveal-header .desc-reveal,.reveal-header .page-description,.reveal-header .events-hero-sub,.reveal-header .section-desc{opacity:1!important;transition:none!important;transform:none!important}}
