:root{color-scheme:light;--purple:#6328e8;--deep:#26104f;--ink:#201531;--muted:#6f657c;--lavender:#f6f2ff;--soft:#ebe1ff;--font:'Plus Jakarta Sans',Arial,sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scrollbar-gutter:stable}
body{margin:0;background:#fff;color:var(--ink);font-family:var(--font);-webkit-font-smoothing:antialiased}
button,a{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}em{font-style:normal;color:var(--purple)}
:focus-visible{outline:3px solid #9a74ff;outline-offset:4px}.skip-link{position:absolute;top:-60px;left:16px;background:var(--deep);color:#fff;padding:12px 16px;z-index:20}.skip-link:focus{top:16px}
.site-header{position:absolute;z-index:5;top:0;left:0;width:100%;height:88px;padding:0 clamp(24px,5vw,88px);display:flex;align-items:center;justify-content:space-between}.nav-brand{display:flex;align-items:center;gap:10px;font-size:18px;font-weight:800;letter-spacing:-.045em}.nav-brand img{width:38px;height:38px;object-fit:cover;border-radius:50%}.site-header nav{display:flex;align-items:center;gap:38px;font-size:13px;font-weight:700}.site-header nav>a:not(.nav-cta){transition:color .2s}.site-header nav>a:not(.nav-cta):hover{color:var(--purple)}.nav-cta{background:var(--deep);color:#fff;padding:12px 18px;border-radius:11px;transition:background .22s,transform .22s}.nav-cta:hover{background:var(--purple);transform:translateY(-2px)}.nav-cta span{margin-left:12px}
.hero{min-height:780px;height:100svh;max-height:1100px;position:relative;display:grid;place-items:center;overflow:hidden;background:#fff}.hero:before{content:'';position:absolute;width:min(62vw,800px);height:min(62vw,800px);border-radius:50%;background:radial-gradient(circle,#f6f1ff 0%,#fff 67%);left:50%;top:48%;transform:translate(-50%,-50%);pointer-events:none}.hero-contour{position:absolute;border:1px solid rgba(99,40,232,.14);border-radius:50%;pointer-events:none}.hero-contour-one{width:1000px;height:1000px;top:51%;left:50%;transform:translate(-50%,-50%)}.hero-contour-two{width:1380px;height:1380px;top:51%;left:50%;transform:translate(-50%,-50%)}.hero-center{position:relative;text-align:center;margin-top:18px}.hero-lockup{display:flex;align-items:center;justify-content:center;gap:0;min-height:238px}.hero-logo-wrap{width:220px;flex:0 0 220px;transform:translateX(122px);transition:transform .85s cubic-bezier(.2,.8,.2,1)}.hero-logo{width:220px;height:220px;object-fit:cover;border-radius:50%;filter:drop-shadow(0 24px 36px rgba(99,40,232,.13));animation:logoPop .7s cubic-bezier(.16,1,.3,1) both}.hero-wordmark{text-align:left;width:0;opacity:0;overflow:hidden;white-space:nowrap;transform:translateX(-15px);transition:width .8s cubic-bezier(.2,.8,.2,1),opacity .45s ease .3s,transform .7s ease .2s}.hero-wordmark h1{font-size:clamp(58px,7vw,112px);line-height:1;letter-spacing:-.09em;margin:0 0 14px;font-weight:800;color:var(--deep)}.hero-wordmark h1 span{color:var(--purple)}.hero-wordmark p{font-size:clamp(14px,1.45vw,21px);font-weight:700;letter-spacing:.31em;text-transform:uppercase;margin:0 0 0 5px;color:#76638e}.is-ready .hero-logo-wrap{transform:translateX(0);transition-delay:.65s}.is-ready .hero-wordmark{width:clamp(295px,39vw,610px);opacity:1;transform:translateX(0);transition-delay:.65s,1s,.7s}.hero-lead{font-size:clamp(17px,1.5vw,22px);line-height:1.65;color:var(--muted);margin:26px auto 29px;opacity:0;transform:translateY(15px);transition:opacity .6s,transform .6s}.is-ready .hero-lead{opacity:1;transform:none;transition-delay:1.3s}.explore-button{border:0;background:var(--purple);color:#fff;border-radius:12px;padding:17px 22px;min-width:165px;font-weight:700;font-size:15px;box-shadow:0 13px 25px rgba(99,40,232,.17);opacity:0;transform:translateY(12px);transition:background .23s,box-shadow .23s,opacity .6s,transform .6s}.is-ready .explore-button{opacity:1;transform:none;transition-delay:0s,0s,1.55s,1.55s}.explore-button:hover{background:var(--deep);box-shadow:0 16px 31px rgba(38,16,79,.22)}.explore-button span{margin-left:28px}.hero-scroll-hint{display:block;margin-top:80px;font-size:11px;text-transform:uppercase;letter-spacing:.2em;font-weight:700;color:#a096ac;opacity:0;transition:opacity .6s}.is-ready .hero-scroll-hint{opacity:1;transition-delay:1.9s}.hero-scroll-hint span{display:block;font-size:20px;letter-spacing:0;margin-top:8px;color:var(--purple)}.hero-index{position:absolute;bottom:34px;right:clamp(24px,5vw,88px);font-size:11px;letter-spacing:.22em;font-weight:800;color:#a096ac}
.vision-section{max-width:1360px;margin:0 auto;padding:140px clamp(24px,6vw,90px) 150px;display:grid;grid-template-columns:1.15fr .85fr;gap:5%;align-items:center}.eyebrow{font-size:11px;letter-spacing:.26em;font-weight:800;color:var(--purple);margin:0 0 28px}.section-copy h2,.experience-heading h2,.closing-section h2{font-size:clamp(38px,4.8vw,68px);letter-spacing:-.07em;line-height:1.16;margin:0;font-weight:800}.section-copy>p:last-child{font-size:17px;line-height:1.8;color:var(--muted);max-width:550px;margin:30px 0 0}.vision-orbit{height:400px;position:relative;display:grid;place-items:center}.orbit-ring{position:absolute;border:1px solid rgba(99,40,232,.22);border-radius:50%;transform:rotateX(62deg) rotate(-28deg)}.ring-one{width:250px;height:250px}.ring-two{width:355px;height:355px}.ring-three{width:470px;height:470px}.orbit-core{width:106px;height:106px;border-radius:50%;overflow:hidden;box-shadow:0 22px 48px rgba(99,40,232,.2);z-index:2}.orbit-core img{width:100%;height:100%;object-fit:cover}.orbit-dot{position:absolute;width:18px;height:18px;border-radius:50%;background:var(--purple);box-shadow:0 0 0 10px #f2ebff}.dot-one{top:64px;left:28%}.dot-two{right:10%;top:50%;width:12px;height:12px}.dot-three{bottom:48px;left:20%;width:11px;height:11px;background:#b891ff}
.experience-section{padding:110px clamp(20px,5vw,80px) 125px;background:#faf8ff;scroll-margin-top:0}.experience-heading{max-width:1250px;margin:0 auto 46px;display:flex;justify-content:space-between;align-items:end;gap:50px}.experience-heading .eyebrow{margin-bottom:21px}.experience-heading>p{max-width:360px;margin:0 0 7px;color:var(--muted);line-height:1.7;font-size:14px}.experience-shell{max-width:1250px;margin:auto;background:white;border-radius:28px;overflow:hidden;box-shadow:0 36px 100px rgba(59,31,107,.11)}.experience-topbar{height:77px;display:flex;justify-content:space-between;align-items:center;padding:0 30px;position:relative;z-index:3}.scene-title{font-weight:800;font-size:13px;display:flex;align-items:center;gap:10px;letter-spacing:-.02em}.live-dot{width:8px;height:8px;border-radius:50%;background:#8e51ff;box-shadow:0 0 0 5px #f0e7ff}.concept-label{font-weight:600;color:#a495b7;margin-left:13px;font-size:11px}.view-switch{display:flex;gap:3px;background:#f4effc;padding:5px;border-radius:10px}.view-button{border:0;background:transparent;color:#847991;padding:9px 15px;border-radius:7px;font-size:12px;font-weight:800;transition:background .2s,color .2s,box-shadow .2s}.view-button.is-active{background:#fff;color:var(--purple);box-shadow:0 2px 8px rgba(58,30,104,.09)}.scene{height:540px;position:relative;overflow:hidden;background:radial-gradient(circle at 50% 45%,#fcfaff,#f5f0ff 72%,#f0e9ff);perspective:1200px}.scene-grid{position:absolute;inset:-30%;background-image:linear-gradient(rgba(99,40,232,.12) 1px,transparent 1px),linear-gradient(90deg,rgba(99,40,232,.12) 1px,transparent 1px);background-size:54px 54px;transform:rotateX(70deg) scale(1.5) translateY(27%);opacity:0;transition:opacity .9s,transform 1.2s}.scene-halo{position:absolute;border:1px solid rgba(99,40,232,.25);border-radius:50%;left:50%;top:52%;transform:translate(-50%,-50%) scale(.5);opacity:0;transition:transform 1s,opacity .8s}.halo-one{width:410px;height:410px}.halo-two{width:730px;height:730px}.scene-axis{position:absolute;background:rgba(99,40,232,.13);opacity:0;transition:opacity .7s}.axis-x{height:1px;width:100%;top:52%}.axis-y{width:1px;height:100%;left:50%}.scene-center-mark{position:absolute;width:78px;height:78px;top:52%;left:50%;border-radius:50%;overflow:hidden;transform:translate(-50%,-50%) scale(.5);opacity:0;box-shadow:0 13px 27px rgba(99,40,232,.25);transition:opacity .6s,transform .8s;z-index:2}.scene-center-mark img{width:100%;height:100%;object-fit:cover}.events-layer{position:absolute;inset:0;transform-style:preserve-3d}.event-card{position:absolute;width:225px;height:265px;background:#fff;border-radius:17px;overflow:hidden;box-shadow:0 20px 38px rgba(44,17,90,.16);left:50%;top:50%;transition:transform 1.05s cubic-bezier(.2,.75,.2,1),box-shadow 1s,opacity .7s;transform-style:preserve-3d}.event-art{height:144px;display:grid;place-items:center;overflow:hidden;position:relative}.art-symbol{font-size:105px;line-height:1;color:rgba(255,255,255,.82);text-shadow:0 10px 24px rgba(0,0,0,.12)}.art-music{background:radial-gradient(circle at 65% 20%,#e395ff,transparent 34%),linear-gradient(145deg,#421c82,#9b51ff 68%,#da9aff)}.art-art{background:radial-gradient(circle at 25% 68%,#fff1b1,transparent 32%),linear-gradient(145deg,#603fd2,#ba7df4 65%,#f6c5d5)}.art-community{background:radial-gradient(circle at 74% 25%,#eebfff,transparent 34%),linear-gradient(135deg,#3d1e83,#7654e7 55%,#aa98ff)}.event-info{padding:17px 19px}.event-info span{display:block;font-size:9px;letter-spacing:.18em;color:var(--purple);font-weight:800}.event-info h3{font-size:17px;letter-spacing:-.045em;margin:9px 0 4px}.event-info p{font-size:11px;color:#877b95;margin:0}.event-one{transform:translate(-50%,-50%) translateY(-112px) scale(.83);z-index:3}.event-two{transform:translate(-50%,-50%) translateY(4px) scale(.83);z-index:2}.event-three{transform:translate(-50%,-50%) translateY(120px) scale(.83);z-index:1}.scene-coordinate{position:absolute;font-size:10px;letter-spacing:.15em;font-weight:700;color:#aa92d0;opacity:0;transition:opacity .6s}.coordinate-one{left:30px;bottom:26px}.coordinate-two{right:30px;bottom:26px}.experience-shell[data-mode="map"] .scene-halo,.experience-shell[data-mode="world"] .scene-halo{opacity:1;transform:translate(-50%,-50%) scale(1)}.experience-shell[data-mode="map"] .scene-axis,.experience-shell[data-mode="world"] .scene-axis,.experience-shell[data-mode="map"] .scene-center-mark,.experience-shell[data-mode="world"] .scene-center-mark,.experience-shell[data-mode="map"] .scene-coordinate,.experience-shell[data-mode="world"] .scene-coordinate{opacity:1}.experience-shell[data-mode="map"] .scene-center-mark,.experience-shell[data-mode="world"] .scene-center-mark{transform:translate(-50%,-50%) scale(1)}.experience-shell[data-mode="map"] .event-one{transform:translate(-50%,-50%) translate(-270px,-90px) scale(.8)}.experience-shell[data-mode="map"] .event-two{transform:translate(-50%,-50%) translate(225px,-120px) scale(.8)}.experience-shell[data-mode="map"] .event-three{transform:translate(-50%,-50%) translate(60px,115px) scale(.8)}.experience-shell[data-mode="world"] .scene-grid{opacity:1;transform:rotateX(70deg) scale(1.5) translateY(20%)}.experience-shell[data-mode="world"] .scene-axis{opacity:0}.experience-shell[data-mode="world"] .scene-halo{transform:translate(-50%,-50%) rotateX(67deg) scale(1.15)}.experience-shell[data-mode="world"] .event-one{transform:translate(-50%,-50%) translate(-315px,-95px) rotateY(18deg) rotateX(7deg) translateZ(60px) scale(.9);box-shadow:24px 34px 45px rgba(44,17,90,.22)}.experience-shell[data-mode="world"] .event-two{transform:translate(-50%,-50%) translate(215px,-125px) rotateY(-21deg) rotateX(5deg) translateZ(5px) scale(.82);box-shadow:-20px 28px 40px rgba(44,17,90,.2)}.experience-shell[data-mode="world"] .event-three{transform:translate(-50%,-50%) translate(90px,125px) rotateY(-10deg) rotateX(11deg) translateZ(110px) scale(.85);box-shadow:-13px 30px 45px rgba(44,17,90,.21)}.experience-bottom{min-height:130px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:25px 34px}.narrative{display:flex;align-items:start;gap:23px}.narrative>span{color:var(--purple);font-size:12px;font-weight:800;letter-spacing:.1em;margin-top:6px;white-space:nowrap}.narrative h3{font-size:18px;letter-spacing:-.04em;margin:0 0 5px}.narrative p{color:var(--muted);font-size:12px;line-height:1.5;margin:0;max-width:560px}.replay-button{border:0;background:#f2ebff;color:var(--purple);border-radius:10px;padding:12px 15px;white-space:nowrap;font-size:12px;font-weight:800;transition:background .2s}.replay-button:hover{background:#e7d9ff}.replay-button span{font-size:17px;vertical-align:-1px;margin-left:9px}
.closing-section{text-align:center;padding:150px 24px 140px}.closing-section h2{font-size:clamp(42px,5.6vw,76px)}.closing-section>p:not(.eyebrow){color:var(--muted);font-size:17px;margin:28px 0 30px}.back-top{display:inline-block;color:var(--purple);font-weight:800;font-size:14px;padding:10px}.back-top span{margin-left:15px}footer{padding:28px clamp(24px,5vw,88px) 36px;display:flex;justify-content:space-between;color:#9d91aa;font-size:12px;font-weight:600}
@keyframes logoPop{from{opacity:0;transform:scale(.78)}to{opacity:1;transform:scale(1)}}
@media(max-width:900px){.hero{min-height:690px}.hero-lockup{min-height:185px}.hero-logo-wrap,.hero-logo{width:155px;height:155px}.hero-logo-wrap{flex-basis:155px;transform:translateX(85px)}.is-ready .hero-wordmark{width:clamp(270px,47vw,430px)}.hero-wordmark h1{font-size:clamp(52px,7.5vw,78px)}.hero-wordmark p{font-size:13px}.vision-section{padding-top:95px;padding-bottom:100px}.vision-orbit{height:330px}.ring-three{width:340px;height:340px}.ring-two{width:280px;height:280px}.ring-one{width:190px;height:190px}.experience-shell[data-mode="map"] .event-one{transform:translate(-50%,-50%) translate(-200px,-110px) scale(.7)}.experience-shell[data-mode="map"] .event-two{transform:translate(-50%,-50%) translate(190px,-115px) scale(.7)}.experience-shell[data-mode="map"] .event-three{transform:translate(-50%,-50%) translate(40px,115px) scale(.7)}.experience-shell[data-mode="world"] .event-one{transform:translate(-50%,-50%) translate(-210px,-95px) rotateY(18deg) rotateX(7deg) scale(.72)}.experience-shell[data-mode="world"] .event-two{transform:translate(-50%,-50%) translate(180px,-105px) rotateY(-21deg) rotateX(5deg) scale(.68)}.experience-shell[data-mode="world"] .event-three{transform:translate(-50%,-50%) translate(50px,125px) rotateY(-10deg) rotateX(11deg) scale(.7)}}
@media(max-width:680px){.site-header{height:72px;padding:0 20px}.nav-brand{font-size:16px}.nav-brand img{width:32px;height:32px}.site-header nav{gap:0}.site-header nav>a:not(.nav-cta){display:none}.nav-cta{font-size:12px;padding:10px 14px}.hero{height:100svh;min-height:630px;max-height:850px}.hero-center{width:100%;padding:0 18px}.hero-lockup{display:block;min-height:235px;position:relative}.hero-logo-wrap{width:128px;height:128px;margin:0 auto;transform:none}.hero-logo{width:128px;height:128px}.is-ready .hero-logo-wrap{transform:translateX(-101px)}.hero-wordmark{position:absolute;left:50%;top:37px;white-space:nowrap}.is-ready .hero-wordmark{width:240px;transform:translateX(-43px)}.hero-wordmark h1{font-size:48px;margin-bottom:8px}.hero-wordmark p{font-size:9px;letter-spacing:.25em;margin-left:3px}.hero-lead{font-size:16px;margin:0 auto 24px;line-height:1.6}.hero-scroll-hint{margin-top:65px}.hero-contour-one{width:650px;height:650px}.hero-contour-two{width:880px;height:880px}.hero-index{right:20px;bottom:23px}.vision-section{display:block;padding:95px 24px 85px}.section-copy h2,.experience-heading h2{font-size:clamp(37px,9vw,52px)}.section-copy>p:last-child{font-size:15px;margin-top:22px}.vision-orbit{height:280px;margin-top:28px}.ring-three{width:300px;height:300px}.ring-two{width:235px;height:235px}.ring-one{width:170px;height:170px}.orbit-core{width:78px;height:78px}.experience-section{padding:82px 14px 86px}.experience-heading{display:block;padding:0 10px;margin-bottom:27px}.experience-heading>p{font-size:13px;margin-top:20px}.experience-shell{border-radius:20px}.experience-topbar{height:65px;padding:0 14px}.scene-title{font-size:11px}.concept-label{display:none}.view-button{font-size:10px;padding:8px 9px}.scene{height:490px}.event-card{width:170px;height:207px;border-radius:13px}.event-art{height:110px}.art-symbol{font-size:78px}.event-info{padding:12px 13px}.event-info span{font-size:7px}.event-info h3{font-size:14px;margin:6px 0 3px}.event-info p{font-size:9px}.event-one{transform:translate(-50%,-50%) translateY(-100px) scale(.84)}.event-two{transform:translate(-50%,-50%) translateY(0) scale(.84)}.event-three{transform:translate(-50%,-50%) translateY(100px) scale(.84)}.experience-shell[data-mode="map"] .event-one{transform:translate(-50%,-50%) translate(-87px,-116px) scale(.69)}.experience-shell[data-mode="map"] .event-two{transform:translate(-50%,-50%) translate(92px,-61px) scale(.69)}.experience-shell[data-mode="map"] .event-three{transform:translate(-50%,-50%) translate(-9px,112px) scale(.69)}.experience-shell[data-mode="world"] .event-one{transform:translate(-50%,-50%) translate(-92px,-107px) rotateY(18deg) scale(.73)}.experience-shell[data-mode="world"] .event-two{transform:translate(-50%,-50%) translate(91px,-60px) rotateY(-20deg) scale(.7)}.experience-shell[data-mode="world"] .event-three{transform:translate(-50%,-50%) translate(-7px,117px) rotateX(8deg) scale(.72)}.halo-one{width:270px;height:270px}.halo-two{width:430px;height:430px}.scene-center-mark{width:53px;height:53px}.experience-bottom{padding:20px;display:block;min-height:155px}.narrative{gap:13px}.narrative h3{font-size:15px}.narrative p{font-size:10px}.replay-button{margin:17px 0 0 45px;padding:9px 12px;font-size:11px}.closing-section{padding:110px 20px}.closing-section h2{font-size:43px}.closing-section>p:not(.eyebrow){font-size:15px}footer{padding:20px;gap:10px;font-size:10px}}
@media(max-width:390px){.is-ready .hero-logo-wrap{transform:translateX(-88px)}.is-ready .hero-wordmark{transform:translateX(-42px)}.hero-wordmark h1{font-size:42px}.hero-wordmark p{font-size:8px}.hero-logo-wrap,.hero-logo{width:112px;height:112px}.hero-logo-wrap{margin-top:8px}.hero-lockup{min-height:215px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}.hero-logo-wrap{transform:none}.hero-wordmark{width:clamp(295px,39vw,610px);opacity:1;transform:none}.hero-lead,.explore-button,.hero-scroll-hint{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce) and (max-width:680px){.hero-wordmark{width:240px;transform:translateX(-43px)}.hero-logo-wrap{transform:translateX(-101px)}}

/* The opening frame is a white canvas with the symbol centered in the viewport. */
.site-header,.hero-index{opacity:0;transition:opacity .5s ease,transform .5s ease}
.site-header{transform:translateY(-8px)}
.is-ready .site-header,.is-ready .hero-index{opacity:1;transition-delay:1.45s}
.is-ready .site-header{transform:none}
.hero:before,.hero-contour{opacity:0;transition:opacity .85s ease}
.is-ready .hero:before,.is-ready .hero-contour{opacity:1;transition-delay:.9s}
.hero-center{width:100%;height:238px;margin-top:0}
.hero-logo-wrap{transform:none}
.is-ready .hero-logo-wrap{transform:none}
.hero-logo{filter:none}
.hero-lead{position:absolute;top:calc(100% + 12px);left:50%;width:min(90vw,580px);margin:0;transform:translate(-50%,15px)}
.is-ready .hero-lead{transform:translate(-50%,0)}
.explore-button{position:absolute;top:calc(100% + 112px);left:50%;transform:translate(-50%,12px)}
.is-ready .explore-button{transform:translate(-50%,0)}
.hero-scroll-hint{position:absolute;top:calc(100% + 210px);left:50%;width:300px;margin:0;transform:translateX(-50%)}
@media(max-width:900px){.hero-center{height:185px}.hero-logo-wrap{transform:none}}
@media(max-width:680px){
  .hero-center{height:128px;padding:0 18px}
  .hero-lockup{display:flex;align-items:center;justify-content:center;min-height:128px}
  .hero-logo-wrap{margin:0;flex:0 0 128px}
  .hero-wordmark{top:50%;transform:translate(-43px,-50%)}
  .is-ready .hero-wordmark{transform:translate(-43px,-50%)}
  .hero-lead{top:calc(100% + 26px);width:calc(100vw - 36px)}
  .explore-button{top:calc(100% + 128px)}
  .hero-scroll-hint{top:calc(100% + 220px)}
}
@media(max-width:390px){.hero-center{height:112px}.hero-lockup{min-height:112px}.hero-logo-wrap{flex-basis:112px;margin:0}.hero-wordmark,.is-ready .hero-wordmark{transform:translate(-42px,-50%)}}
@media(prefers-reduced-motion:reduce){.site-header,.hero-index,.hero:before,.hero-contour{opacity:1}.site-header{transform:none}.hero-lead,.is-ready .hero-lead{transform:translate(-50%,0)}.explore-button,.is-ready .explore-button{transform:translate(-50%,0)}}
@media(max-width:680px){.is-ready .hero-logo-wrap{transform:translateX(-101px)}}
@media(max-width:390px){.is-ready .hero-logo-wrap{transform:translateX(-88px)}}
@media(prefers-reduced-motion:reduce) and (max-width:680px){.hero-logo-wrap{transform:translateX(-101px)}}
@media(prefers-reduced-motion:reduce) and (max-width:390px){.hero-logo-wrap{transform:translateX(-88px)}}

/* Horizon artwork reveals only after the white logo opening. */
.hero:before,.hero-contour{display:none}
.hero-horizon{position:absolute;inset:0;background:#fff url('/eventbind-horizon.jpg') center bottom/cover no-repeat;opacity:0;pointer-events:none;transition:opacity 1.1s ease;will-change:opacity}
.hero-horizon:after{content:'';position:absolute;inset:0;background:linear-gradient(to bottom,#fff 0%,rgba(255,255,255,.9) 24%,rgba(255,255,255,.68) 52%,rgba(255,255,255,.46) 76%,rgba(255,255,255,.12) 100%)}
.is-ready .hero-horizon{opacity:1;transition-delay:.9s}
@media(max-width:680px){.hero-horizon{background-position:center bottom}.hero-horizon:after{background:linear-gradient(to bottom,#fff 0%,rgba(255,255,255,.88) 25%,rgba(255,255,255,.75) 56%,rgba(255,255,255,.5) 83%,rgba(255,255,255,.15) 100%)}}
@media(prefers-reduced-motion:reduce){.hero-horizon{opacity:1}}
.hero-logo{mix-blend-mode:normal}
.site-header .nav-cta{background:transparent;color:var(--deep);padding:12px 0;border-radius:0;box-shadow:none}
.site-header .nav-cta:hover{background:transparent;color:var(--purple);transform:none}
.site-header .nav-login{color:var(--deep);font-weight:800;white-space:nowrap}
@media(max-width:680px){.site-header nav{gap:18px}.site-header nav>a.nav-login{display:inline-flex;font-size:12px}.site-header .nav-cta{white-space:nowrap}}
@media(max-width:390px){.site-header{padding:0 14px}.site-header nav{gap:12px}.site-header .nav-cta{padding:10px 0}}
.hero-scroll-hint{top:calc(100% + 124px);width:auto;min-width:225px;border:0;background:transparent;padding:12px 16px;color:#5b4678;font-size:12px;line-height:1.4;transition:opacity .6s,color .2s,transform .2s}
.is-ready .hero-scroll-hint{transition-delay:1.55s,0s,0s}
.hero-scroll-hint:hover{color:var(--purple)}
.hero-scroll-hint span{transition:transform .2s}
.hero-scroll-hint:hover span{transform:translateY(4px)}
@media(max-width:680px){.hero-scroll-hint{top:calc(100% + 128px)}}

/* Scroll-driven story: a flat guest list becomes a shared 3D table. */
.vision-story{height:430svh;position:relative;background:#fff}
.vision-stage{height:100svh;min-height:620px;position:sticky;top:0;overflow:clip;isolation:isolate;background:radial-gradient(circle at 52% 58%,#f9f5ff 0%,#fff 62%);--table-opacity:0;--table-x:20vw;--final-opacity:0;--copy-opacity:1}
.vision-stage:before,.vision-stage:after{content:'';position:absolute;left:50%;top:58%;width:min(93vw,1100px);aspect-ratio:1;border:1px solid rgba(105,56,220,.1);border-radius:50%;transform:translate(-50%,-50%);pointer-events:none}
.vision-stage:after{width:min(70vw,770px);border-color:rgba(105,56,220,.07)}
.vision-stage-copy{position:absolute;z-index:8;left:50%;top:6.5%;width:min(92vw,1080px);text-align:center;transform:translateX(-50%);opacity:var(--copy-opacity)}
.vision-stage-copy .eyebrow{margin:0 0 12px}
.vision-stage-copy h2{font-size:clamp(28px,3.35vw,49px);letter-spacing:-.065em;line-height:1.15;margin:0;font-weight:800}
.vision-stage-copy>p:last-child{font-size:13px;color:var(--muted);margin:13px 0 0;line-height:1.5}
.vision-scene{position:absolute;inset:0;perspective:1200px}
.vision-ambient{position:absolute;inset:18% 0 0;background:radial-gradient(ellipse at 62% 50%,rgba(148,97,255,.11),transparent 47%);pointer-events:none}
.vision-three{position:absolute;inset:0;opacity:var(--table-opacity);transform:translateX(var(--table-x));z-index:1;pointer-events:none;transition:opacity .12s linear}
.vision-three canvas{display:block;width:100%;height:100%}
.guest-list{position:absolute;left:50%;top:57%;width:min(370px,78vw);height:455px;background:linear-gradient(155deg,#fff,#faf7ff);border-radius:25px;box-shadow:0 33px 80px rgba(50,19,103,.16),0 6px 20px rgba(50,19,103,.06);z-index:4;transform:translate(-50%,-50%) translateX(var(--list-x,0px)) rotateY(var(--list-rotate,0deg)) scale(var(--list-scale,1));transform-style:preserve-3d;will-change:transform,opacity;overflow:hidden}
.guest-list:after{content:'✦';position:absolute;inset:0;display:grid;place-items:center;background:linear-gradient(135deg,#8f57f3,#3b196f);font-size:92px;color:#e9d6ff;transform:rotateY(180deg) translateZ(1px);backface-visibility:hidden;pointer-events:none}
.guest-list-top,.guest-list-foot{position:relative;z-index:2;display:flex;align-items:center;gap:11px;padding:0 24px}.guest-list-top{height:70px;font-size:10px;font-weight:800;letter-spacing:.16em;color:var(--deep);background:#fff}.guest-list-symbol{display:grid;place-items:center;width:32px;height:32px;border-radius:10px;background:#6c31dc;color:#fff;font-size:20px}.guest-list-count{margin-left:auto;letter-spacing:0;color:#8b7a9b;font-weight:700;font-size:10px}.guest-list-viewport{position:relative;height:329px;overflow:hidden;padding:9px 16px;background:#faf7ff}.guest-list-rows{will-change:transform}.guest-row{height:66px;display:flex;align-items:center;gap:13px;padding:7px 11px;border-radius:12px;background:#fff;margin-bottom:5px;box-shadow:0 4px 13px rgba(66,25,128,.035)}.guest-row img,.guest-flyer{width:44px;height:44px;object-fit:cover;border-radius:50%;box-shadow:0 3px 9px rgba(51,23,88,.13)}.guest-row strong,.guest-row small{display:block}.guest-row strong{font-size:12px;color:#2e1b4b;letter-spacing:-.02em}.guest-row small{font-size:10px;color:#9c82b7;margin-top:3px}.guest-row b{margin-left:auto;font-size:10px;color:#baa9cc}.guest-list-foot{height:56px;justify-content:space-between;font-size:10px;color:#a699b5;font-weight:700}.guest-list-foot span:last-child{font-size:19px;color:var(--purple)}
.guest-flyers{position:absolute;inset:0;pointer-events:none;z-index:5}.guest-flyer{position:absolute;width:69px;height:69px;opacity:0;border:4px solid white;box-shadow:0 10px 25px rgba(54,20,112,.25);will-change:left,top,transform,opacity}
.vision-final{position:absolute;z-index:6;left:50%;top:57%;width:min(420px,84vw);margin:0;transform:translate(-50%,-50%);text-align:center;font-size:clamp(20px,2.3vw,31px);font-weight:700;line-height:1.27;letter-spacing:-.055em;color:#fff;text-shadow:0 2px 13px rgba(24,0,76,.5);opacity:var(--final-opacity);pointer-events:none}.vision-final strong{font-weight:800}
.vision-step{position:absolute;z-index:7;left:clamp(22px,5vw,85px);bottom:38px;display:flex;align-items:center;gap:13px;color:#8c6cb6;font-size:11px;font-weight:800;letter-spacing:.1em}.vision-step-line{width:64px;height:2px;background:linear-gradient(90deg,#6e36d8,#e3d8f7)}.vision-scroll-cue{position:absolute;z-index:7;right:clamp(22px,5vw,85px);bottom:29px;color:#886fa8;font-size:10px;font-weight:800;letter-spacing:.2em}.vision-scroll-cue span{font-size:19px;margin-left:8px;color:var(--purple)}.vision-complete .vision-scroll-cue{opacity:0}
.vision-no-webgl .vision-three:before{content:'';position:absolute;left:50%;top:57%;width:min(430px,72vw);aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 35% 30%,#a874ef,#5523ba 65%,#381471);box-shadow:0 35px 55px rgba(56,15,129,.27);transform:translate(-50%,-50%) scaleY(.62)}
@media(max-width:680px){.vision-story{height:390svh}.vision-stage{min-height:590px}.vision-stage-copy{top:9%;width:calc(100vw - 30px)}.vision-stage-copy h2{font-size:clamp(27px,7vw,36px)}.vision-stage-copy>p:last-child{font-size:11px}.guest-list{top:55%;width:min(335px,76vw);height:415px;border-radius:19px}.guest-list-top{height:62px}.guest-list-viewport{height:300px}.guest-row{height:62px}.guest-list-foot{height:53px}.guest-flyer{width:53px;height:53px;border-width:3px}.vision-final{top:59%;font-size:clamp(18px,5vw,24px);width:65vw}.vision-step{bottom:22px}.vision-scroll-cue{bottom:13px;font-size:8px;letter-spacing:.12em}.vision-scroll-cue span{font-size:15px;margin-left:3px}}
@media(prefers-reduced-motion:reduce){.vision-story{height:100svh}.vision-stage-copy,.guest-list,.vision-scroll-cue{display:none}.vision-final{opacity:1}.vision-three{opacity:1;transform:none}}

.vision-final{top:49%;width:min(370px,70vw);font-size:clamp(18px,2.2vw,27px)}
@media(max-width:680px){.vision-final{top:51%;width:64vw;font-size:clamp(16px,4.7vw,23px)}}
.guest-list{overflow:visible;backface-visibility:hidden}
.guest-list:after{display:none}
.guest-list-top,.guest-list-viewport,.guest-list-foot{backface-visibility:hidden}
.guest-list-top{border-radius:25px 25px 0 0}.guest-list-foot{border-radius:0 0 25px 25px;background:#faf7ff}
.guest-list-back{position:absolute;inset:0;z-index:3;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:7px;border-radius:25px;background:radial-gradient(circle at 35% 25%,#ae83fa,#6c32d4 64%,#4a1a9e);color:#fff;transform:rotateY(180deg) translateZ(2px);backface-visibility:hidden;box-shadow:0 30px 80px rgba(52,18,118,.2)}
.guest-list-back span{font-size:86px;line-height:1;text-shadow:0 10px 30px rgba(39,0,102,.22)}.guest-list-back strong{font-size:30px;letter-spacing:-.06em}.guest-list-back small{font-size:9px;letter-spacing:.21em;font-weight:800;color:#e8d8ff}
@media(max-width:680px){.guest-list-top{border-radius:19px 19px 0 0}.guest-list-foot{border-radius:0 0 19px 19px}.guest-list-back{border-radius:19px}.guest-list-back span{font-size:70px}}
@media(max-width:680px){.vision-final{top:40%}}
.guest-list{backface-visibility:visible;background:transparent}
.guest-list-front{position:absolute;inset:0;backface-visibility:hidden;transform:translateZ(3px);border-radius:inherit;overflow:hidden;background:#fff}
.guest-list-back{transform:rotateY(180deg) translateZ(3px);backface-visibility:visible}

/* The vision scene plays on entry; the list grows into a six-sided box. */
.vision-story{height:100svh;min-height:620px}
.vision-stage{position:relative;height:100%;min-height:620px}
.guest-list{--box-depth:0px;--list-tilt:0deg;transform:translate(-50%,-50%) translateX(var(--list-x,0px)) rotateY(var(--list-rotate,0deg)) rotateX(var(--list-tilt)) scale(var(--list-scale,1))}
.guest-list-front{transform:translateZ(calc(var(--box-depth) / 2))}
.guest-list-back{transform:rotateY(180deg) translateZ(calc(var(--box-depth) / 2))}
.guest-box-face{position:absolute;display:block;pointer-events:none;backface-visibility:visible;opacity:0;background:linear-gradient(135deg,#9e6af0,#6231c1 58%,#42178d);box-shadow:inset 0 0 0 1px rgba(255,255,255,.35),inset 0 0 24px rgba(42,7,108,.2)}
.guest-box-face{z-index:5}
.guest-list-front,.guest-list-back{z-index:1}
.guest-box-left,.guest-box-right{top:0;width:var(--box-depth);height:100%;transform:translateX(-50%) rotateY(90deg)}
.guest-box-left{left:0;background:linear-gradient(90deg,#4a1a9b,#8854e4)}
.guest-box-right{left:100%;background:linear-gradient(90deg,#a071f1,#5123a4)}
.guest-box-top,.guest-box-bottom{left:0;width:100%;height:var(--box-depth);transform:translateY(-50%) rotateX(90deg)}
.guest-box-top{top:0;background:linear-gradient(90deg,#c6a3ff,#8451de)}
.guest-box-bottom{top:100%;background:linear-gradient(90deg,#4c199e,#8652dd)}
.guest-box-face{backface-visibility:hidden}
.guest-box-left{transform:translateX(-50%) rotateY(-90deg)}
.guest-box-top{transform:translateY(-50%) rotateX(-90deg)}
.guest-row{height:51px;margin-bottom:3px}
.guest-row img{width:38px;height:38px}
.vision-replay{position:absolute;z-index:9;right:clamp(22px,5vw,85px);bottom:28px;border:0;background:transparent;color:#6c3abb;font:800 10px 'Plus Jakarta Sans',Arial,sans-serif;letter-spacing:.14em;cursor:pointer;opacity:0;pointer-events:none;transition:opacity .25s ease}
.vision-replay{bottom:88px}
.vision-box-three{position:absolute;inset:0;z-index:4;opacity:0;pointer-events:none}
.vision-box-three canvas{display:block;width:100%;height:100%}
.vision-gesture-zone{position:absolute;z-index:7;left:50%;top:49%;width:min(650px,84vw);height:min(480px,61vh);transform:translate(-50%,-50%);pointer-events:none;touch-action:none;outline:none}
.vision-interactive .vision-gesture-zone{pointer-events:auto;cursor:grab}
.vision-interactive .vision-gesture-zone:active{cursor:grabbing}
.vision-interactive .vision-gesture-zone:focus-visible{outline:2px solid #7040c6;outline-offset:5px;border-radius:50%}
.vision-interactive .guest-flyer{opacity:0!important;transition:opacity .35s ease}
.vision-inspecting .vision-final{opacity:0!important;transition:opacity .3s ease}
.vision-interact-hint{position:absolute;z-index:8;right:clamp(22px,5vw,85px);bottom:122px;margin:0;color:#8a6cba;font-size:10px;font-weight:800;letter-spacing:.12em;opacity:0;pointer-events:none;transition:opacity .3s ease}
.vision-interact-hint span{font-size:16px;margin-left:5px}
.vision-interactive .vision-interact-hint{opacity:1}
.vision-replay span{font-size:20px;margin-left:5px;vertical-align:middle}
.vision-complete .vision-replay{opacity:1;pointer-events:auto}
.vision-replay:focus-visible{outline:2px solid #6c3abb;outline-offset:5px;border-radius:4px}
.vision-scroll-cue{display:none}
@media(max-width:680px){.vision-story,.vision-stage{min-height:590px}.guest-row{height:46px;margin-bottom:3px}.guest-box-left,.guest-box-right,.guest-box-top,.guest-box-bottom{border-radius:3px}.vision-replay{bottom:82px;font-size:9px}.vision-interact-hint{bottom:115px;font-size:8px}.vision-gesture-zone{top:40%;width:94vw;height:340px}}
@media(max-width:680px){.vision-final{top:49%;width:58vw;font-size:clamp(15px,4.2vw,20px)}.vision-gesture-zone{top:49%}}
@media(prefers-reduced-motion:reduce){.vision-story{height:100svh}.vision-replay{display:none}}
.guest-list-top .guest-list-symbol{display:block;width:32px;height:32px;flex:0 0 32px;object-fit:cover;border-radius:8px;background:#fff}
.guest-list-back img{display:block;width:96px;height:96px;object-fit:cover;border-radius:20px;box-shadow:0 10px 30px rgba(34,8,91,.22)}
@media(max-width:680px){.guest-list-back img{width:78px;height:78px;border-radius:17px}}
.guest-statuses{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.vision-final{top:37.5%}
@media(max-width:680px){.vision-final{top:43%}}
/* Open up the display typography while keeping the established font family. */
body{letter-spacing:.005em}
.nav-brand,.scene-title,.guest-row strong,.guest-list-back strong,.narrative h3,.event-info h3{letter-spacing:.005em}
.hero-wordmark h1{letter-spacing:-.025em;font-weight:700}
.section-copy h2,.experience-heading h2,.closing-section h2,.vision-stage-copy h2{letter-spacing:-.012em;font-weight:700}
.vision-final{letter-spacing:0;font-weight:600}
.vision-final strong{font-weight:700}
.hero-lead,.section-copy>p:last-child,.experience-heading>p,.closing-section>p:not(.eyebrow){letter-spacing:.012em}
.guest-list-back img{overflow:hidden;box-shadow:0 12px 26px rgba(34,8,91,.18)}
.page-transition{position:fixed;inset:0;z-index:50;display:grid;place-items:center;background:#fff;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .38s ease,visibility 0s linear .38s}
.page-transition.is-active{opacity:1;visibility:visible;pointer-events:auto;transition:opacity .38s ease,visibility 0s}
.page-transition.is-active.is-leaving{opacity:0;transition:opacity .45s ease}
.page-transition-ring{position:absolute;width:min(76vw,700px);aspect-ratio:1;border:1px solid rgba(99,40,232,.24);border-radius:50%;box-shadow:0 0 0 100px rgba(155,112,242,.025),0 0 0 230px rgba(155,112,242,.018);transform:scale(.35);transition:transform .82s cubic-bezier(.18,.7,.2,1)}
.page-transition.is-active .page-transition-ring{transform:scale(1)}
.page-transition img{position:relative;width:82px;height:82px;object-fit:cover;border-radius:21px;transform:scale(.72);transition:transform .55s cubic-bezier(.18,.7,.2,1)}
.page-transition.is-active img{transform:scale(1)}
@media(prefers-reduced-motion:reduce){.page-transition{display:none}}
