/* Luma's shared public-site identity. Real brand assets, native scrolling. */
@font-face{font-family:LumaInter;src:url('/assets/concept/inter-semibold.ttf') format('truetype');font-style:normal;font-weight:600;font-display:swap}
.site-design{--night:#08090c;--paper:#f3f3f5;--ink:#17171b;--bg:#08090c;--surface:#15151b;--text:#f5f5f7;--muted:#a2a2ad;--border:#ffffff1c;--accent:#8271ff;--cyan:#82c9ff;--pink:#82c9ff;background:var(--night);color:var(--text);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased;overflow-x:clip;line-height:1.5}
.site-design *{box-sizing:border-box}.site-design h1,.site-design h2,.site-design h3{font-family:LumaInter,Arial,sans-serif;font-weight:600;letter-spacing:-.055em;text-wrap:balance}.site-design p{text-wrap:pretty}.site-design img{max-width:100%;height:auto}.site-design a{text-decoration:none}.site-design button,.site-design input,.site-design select{font:inherit}.site-design button,.site-design a,.site-design summary{-webkit-tap-highlight-color:transparent;touch-action:manipulation}.site-design :is(a,button,input,select,summary):focus-visible{outline:3px solid #8271ff;outline-offset:5px}.site-design [hidden]{display:none!important}.site-design :is(section,[id]){scroll-margin-top:106px}
.site-design>.bg-halos,.site-design>.cosmos-canvas{display:none}.site-design .gradient-text{background:linear-gradient(105deg,#b7a9ff,#8070ed 66%,#8bcfff);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.site-design .btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:14px 25px;border:0;border-radius:100px;background:#f3f3f5;color:#15151b;font-size:15px;font-weight:600;line-height:1.35;letter-spacing:0;box-shadow:none;transition:background .2s,transform .2s;text-align:center}.site-design .btn:hover{background:#e2dcff;transform:translateY(-2px);box-shadow:none}.site-design .btn.ghost{border:1px solid currentColor;color:inherit;background:transparent}.site-design .btn:disabled{opacity:.5;cursor:default;transform:none}.site-design .glass{backdrop-filter:none;box-shadow:none}

/* Navigation floats directly over each section; only its foreground changes. */
.site-design .site-header,.site-design .site-header [data-header-tone=dark]{--header-text:#fff;--header-muted:#d8d8e0;--header-rule:#ffffff50;--wordmark-filter:none;--header-shadow:0 1px 10px #0008}
.site-design:has(.support-help) .site-header,.site-design:has(.support-faq) .site-header,.site-design .site-header.is-light,.site-design .site-header [data-header-tone=light]{--header-text:#17171b;--header-muted:#454550;--header-rule:#17171b40;--wordmark-filter:brightness(0);--header-shadow:none}
.site-design .site-header .brand-wordmark{filter:var(--wordmark-filter)}
.site-design .site-header :is(.tabs a,.lang-btn,.header-account){text-shadow:var(--header-shadow)}
.site-design .site-header .header-premium:hover,.site-design .site-header .header-premium.active{color:#17171b;background:#eee9ff;border-color:transparent}
.site-design .site-header .page-progress{display:none}
@media(min-width:851px){.site-design .site-header .motion-toggle{color:var(--header-muted);border-color:var(--header-rule)}}

/* Identical, compact navigation on every public page. */
.site-design .site-header{position:fixed;inset:0 0 auto;z-index:80;background:transparent;color:var(--header-text);border:0;backdrop-filter:none;box-shadow:none;transform:none}
.site-design .site-header::before,.site-design .site-header::after{display:none}.site-design .header-inner{display:flex;align-items:center;justify-content:space-between;gap:30px;width:auto;max-width:none;margin:0;padding:18px 4vw;min-height:78px}
.site-design .brand{display:inline-flex;align-items:center;gap:12px;flex:0 0 auto;width:auto;min-width:0;height:auto;margin:0;padding:0;font-size:0;line-height:1;background:none;filter:none;transform:none;letter-spacing:0}.site-design .brand::before,.site-design .brand::after{display:none}.site-design .brand-symbol{display:block;width:33px;height:33px;object-fit:contain}.site-design .brand-wordmark{display:block;width:156px;height:auto;object-fit:contain}
.site-design .tabs{display:flex;align-items:center;justify-content:center;gap:28px;margin:0;padding:0;border:0;border-radius:0;background:none;box-shadow:none;flex-wrap:nowrap}.site-design .tabs a{display:block;flex:0 0 auto;padding:8px 0;color:var(--header-muted);font-size:13px;font-weight:600;line-height:1.4;white-space:nowrap;border:0;border-radius:0;background:none;box-shadow:none;transform:none;transition:color .2s}.site-design .tabs a::before,.site-design .tabs a::after{display:none}.site-design .tabs a:hover,.site-design .tabs a.active{color:var(--header-text);background:none;box-shadow:none}.site-design .tabs a[aria-current=page]{text-decoration:underline;text-underline-offset:9px;text-decoration-color:#8e7dff;text-decoration-thickness:2px}
.site-design .header-actions{display:flex;align-items:center;justify-content:flex-end;gap:14px;flex:0 0 auto}.site-design .header-premium{padding:9px 17px;color:var(--header-text);background:transparent;border:1px solid var(--header-rule);border-radius:100px;font-size:12px;font-weight:600;line-height:1.4;white-space:nowrap;box-shadow:none;transform:none}.site-design .header-premium::before,.site-design .header-premium::after{display:none}.site-design .header-premium:hover,.site-design .header-premium.active{background:#eee9ff;color:#17171b;border-color:transparent;box-shadow:none}.site-design .premium-short{display:none}.site-design .header-account{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:8px 0;min-height:36px;width:auto;color:var(--header-muted);border:0;background:none;border-radius:0;font-size:12px;font-weight:400;line-height:1.3;box-shadow:none;transform:none}.site-design .header-account:hover,.site-design .header-account.active{color:var(--header-text);background:none;transform:none;border:0}.site-design .header-account svg{display:block;width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.6}.site-design .header-account span{display:block}
.site-design .lang{position:relative;z-index:10}.site-design .lang-btn{display:flex;align-items:center;justify-content:center;gap:7px;min-height:36px;padding:5px 0;border:0;background:none;color:var(--header-muted,#d2d2d9);font-size:12px;font-weight:400;line-height:1.3;box-shadow:none;border-radius:0}.site-design .lang-btn svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.6}.site-design .lang-btn .chev{display:none}.site-design .lang-menu{position:absolute;inset:auto;inset-block-start:calc(100% + 20px);inset-inline-end:0;min-width:188px;max-height:min(560px,75svh);overflow-y:auto;padding:10px;border:1px solid #ffffff24;border-radius:18px;background:#18181f;color:#fff;box-shadow:0 18px 70px #0005;opacity:0;visibility:hidden;transform:translateY(-7px);transition:opacity .15s,transform .15s}.site-design .lang.open .lang-menu{opacity:1;visibility:visible;transform:none}.site-design .lang-menu button{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:38px;padding:8px 12px;color:#b9b9c2;border:0;border-radius:9px;background:none;font-size:13px;text-align:start;cursor:pointer}.site-design .lang-menu button:hover{background:#ffffff0b;color:#fff}.site-design .lang-menu button.active{color:#c5baff;background:#8271ff13}.site-design .lang-menu .tick{opacity:0}.site-design .lang-menu .active .tick{opacity:1}
.site-design .page-progress{position:absolute;inset:auto 0 -1px;height:1px;background:#c5baff;transform:scaleX(var(--page-progress,0));transform-origin:0 50%;opacity:.6}.site-design .motion-toggle{display:grid;place-items:center;flex:none;width:27px;height:27px;padding:5px;color:#9e9ea8;border:1px solid #ffffff38;background:transparent;border-radius:50%;cursor:pointer}.site-design .motion-toggle svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.7}.site-design .motion-toggle .play-symbol{display:none}.site-design .motion-toggle[aria-pressed=true] .pause-symbol{display:none}.site-design .motion-toggle[aria-pressed=true] .play-symbol{display:block}

/* A restrained footer carries the same real wordmark and practical links. */
.site-design .site-footer{display:grid;grid-template-columns:1fr auto;align-items:start;gap:35px;padding:65px max(4vw,24px) 40px;margin:0;border-top:1px solid #ffffff18;background:#08090c;color:#8c8c99;max-width:none;font-size:12px;line-height:1.6}.site-design .footer-brand{display:flex;flex-direction:column;gap:24px}.site-design .site-footer .brand-wordmark{width:190px}.site-design .site-footer .foot-links{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:12px 26px;max-width:700px}.site-design .site-footer .foot-links a{color:#aaaab4;font-size:12px}.site-design .site-footer a:hover{color:white}.site-design .footer-note{grid-column:1/-1;color:#747480}.site-design .credits{background:#08090c;color:#92929f;padding:0 max(4vw,24px) 32px;font-size:11px;line-height:1.7}.site-design .credits a{color:inherit}.site-design .credits details{margin-top:7px}.site-design .credits p{margin-top:12px}

/* Existing legal and account utilities retain their complete workflows. */
.site-design.cinematic-auth{background:var(--paper);color:var(--ink);--text:#17171b;--muted:#686873;--border:#d8d8df;--accent:#5e49c9;--surface:white;min-height:100svh}.site-design.cinematic-auth .wrap{width:min(100%,570px);max-width:570px;padding:65px 24px 80px;margin:0 auto}.site-design.cinematic-auth .auth-brand{display:block;width:72px;height:72px;margin:0 auto 38px;object-fit:contain}.site-design.cinematic-auth .auth-lang{display:flex;justify-content:flex-end;margin-bottom:16px}.site-design.cinematic-auth .lang-btn{color:#44444f}.site-design.cinematic-auth .card{padding:42px 34px;background:white;border:0;border-radius:24px;box-shadow:0 18px 60px #17171b05;backdrop-filter:none;text-align:start}.site-design.cinematic-auth h1{font-size:clamp(30px,4vw,42px);line-height:1.1;margin:0 0 20px;color:#17171b}.site-design.cinematic-auth .sub{font-size:16px;line-height:1.6;margin-bottom:26px;color:#686873}.site-design.cinematic-auth input{min-height:49px;border:1px solid #d8d8df;border-radius:10px;background:#f8f8fa;color:#17171b;padding:12px;font-size:16px;width:100%;max-width:100%}.site-design.cinematic-auth label{display:block;font-size:14px;margin-block:18px 7px;color:#555560}.site-design.cinematic-auth .btn{background:#17171b;color:white;width:100%}.site-design.cinematic-auth .msg{font-size:14px;line-height:1.5;overflow-wrap:anywhere}.site-design.cinematic-auth .msg.err{color:#b32642}.site-design.cinematic-auth .msg.ok{color:#146845}.site-design.cinematic-auth .code{font-size:clamp(29px,8vw,46px);letter-spacing:.15em;padding:20px 12px;border:0;background:#f3f3f5;color:#17171b;-webkit-text-fill-color:currentColor;text-align:center;direction:ltr}.site-design.cinematic-auth .steps{padding:0}.site-design.cinematic-auth .steps li{font-size:14px;color:#555560}.site-design.cinematic-auth .steps .n{background:#ede9ff;color:#5e49c9}.site-design.cinematic-auth .hint{color:#686873}.site-design.cinematic-auth .auth-home{display:block;text-align:center;font-size:13px;margin-top:26px;color:#686873}
.site-design.cinematic-legal{background:var(--paper);color:var(--ink);--text:#17171b;--muted:#656571;--border:#dcdce1;--accent:#5e49c9;min-height:100vh}.site-design.cinematic-legal .legal-page{max-width:1000px;padding:140px 40px 80px;margin:auto}.site-design.cinematic-legal .legal-page>header{background:#08090c;padding:20px 26px;border:0;border-radius:15px;margin-bottom:48px}.site-design.cinematic-legal .legal-page>header a:not(.brand){color:#c6c6d0}.site-design.cinematic-legal .legal-page h1{font-size:clamp(42px,5vw,78px);line-height:1.04;margin:25px 0}.site-design.cinematic-legal .legal-page h2{font-size:27px;margin:44px 0 16px}.site-design.cinematic-legal .legal-page p,.site-design.cinematic-legal .legal-page li{font-size:16px;line-height:1.8;color:#50505b}.site-design.cinematic-legal .legal-page .updated{font-size:13px;color:#797984;margin-bottom:32px}.site-design.cinematic-legal footer{margin-top:50px;padding-top:24px;border-top:1px solid #ddd}

/* Home: the approved choreography, now signed with Luma's actual identity. */
.story-page .invitation{padding:110px 24px 125px}.story-page .invitation-word{display:flex;flex-direction:column;align-items:center;gap:60px;margin:0 auto 80px;padding:0;background:none;-webkit-text-fill-color:initial;font-size:0;line-height:1}.story-page .invitation-symbol{width:clamp(110px,12vw,240px);height:auto}.story-page .invitation-wordmark{width:min(72vw,1250px);height:auto}.story-page .opening-intro{line-height:1.5}.story-page .has-motion{line-height:1.5}
.site-design .skip-link,.site-design .skip{position:fixed;top:12px;inset-inline-start:16px;z-index:150;padding:12px 20px;background:#fff;color:#17171b;border-radius:10px;transform:translateY(-160%)}.site-design .skip-link:focus,.site-design .skip:focus{transform:none}
.site-design .reveal{opacity:1;transform:none}.site-motion [data-enter]{opacity:0;transform:translateY(35px);transition:opacity .7s ease,transform .8s cubic-bezier(.2,.65,.25,1)}.site-motion [data-enter].entered,.site-motion [data-enter]:focus-within{opacity:1;transform:none}.site-motion [data-camera]{transform:scale(var(--camera-scale,1));transform-origin:50% 50%}

@media(min-width:1800px){.site-design .header-inner{padding-block:20px}.site-design .brand-wordmark{width:180px}.site-design .tabs{gap:36px}.site-design .tabs a{font-size:14px}.site-design .header-actions{gap:20px}}
@media(max-width:1200px){.site-design .header-inner{gap:22px;padding-inline:3vw}.site-design .brand-symbol{display:none}.site-design .brand-wordmark{width:145px}.site-design .tabs{gap:22px}.site-design .header-account span{display:none}.site-design .header-account{width:30px}.site-design .site-header .lang-btn #langLabel{display:none}.site-design .header-actions{gap:12px}.site-design .header-premium{padding-inline:13px}}
@media(max-width:850px){.site-design .header-inner{display:grid;grid-template-columns:1fr auto;gap:5px 18px;padding:13px 22px 0;min-height:108px}.site-design .header-actions{grid-column:2;grid-row:1}.site-design .tabs{grid-column:1/-1;grid-row:2;justify-content:space-between;gap:24px;overflow-x:auto;max-width:100%;padding:0;min-height:47px;scrollbar-width:none}.site-design .tabs::-webkit-scrollbar{display:none}.site-design .tabs a{font-size:12px;padding-block:13px;min-height:44px}.site-design .tabs a[aria-current=page]{text-underline-offset:8px}.site-design .brand-wordmark{width:145px}.site-design .premium-full{display:none}.site-design .premium-short{display:inline}.site-design .header-premium{padding:8px 13px;font-size:11px}.site-design .site-footer{grid-template-columns:1fr;gap:28px;padding-top:48px}.site-design .site-footer .foot-links{justify-content:flex-start;gap:12px 22px}.site-design .motion-toggle{position:fixed;inset:auto 15px 18px auto;width:34px;height:34px;background:#111119e8;border-color:#ffffff44;color:#eee;box-shadow:0 4px 18px #0002}.site-design :is(section,[id]){scroll-margin-top:135px}.story-page .invitation{padding:80px 22px}.story-page .invitation-word{gap:42px;margin-bottom:50px}.story-page .invitation-wordmark{width:90vw}.story-page .has-motion .opening-intro{top:47%}.site-design .lang-menu{inset-block-start:calc(100% + 17px)}}
@media(max-width:380px){.site-design .header-inner{padding-inline:16px;gap:5px 10px}.site-design .brand-wordmark{width:126px}.site-design .header-actions{gap:8px}.site-design .header-premium{padding:8px 11px}.site-design .header-account{width:25px}.site-design .lang-btn{min-width:22px}.site-design .tabs{gap:19px}.site-design .tabs a{font-size:11px}.site-design.cinematic-auth .wrap{padding:36px 18px 55px}.site-design.cinematic-auth .card{padding:30px 23px}.site-design.cinematic-legal .legal-page{padding:50px 24px}}
@media(prefers-reduced-motion:reduce){.site-design *, .site-design *::before,.site-design *::after{animation:none!important;transition:none!important}.site-design [data-enter]{opacity:1;transform:none}.site-design [data-camera]{transform:none}}

.story-page.has-motion .opening-end{top:max(10%,102px)}.story-page.has-motion .cinema-end{top:max(9%,102px)}
@media(max-width:1000px){.story-page.has-motion .opening-end{top:max(15%,132px)}}
@media(max-width:700px){.story-page.has-motion .opening-end,.story-page.has-motion .cinema-end{top:max(16%,132px)}}
