/* Three cinematic paths. Imagery stays on composited layers; reading stays clear. */
.title-reveal{transform-origin:left center}
.title-reveal.title-arrived{animation:title-widen 1.9s cubic-bezier(.16,.65,.25,1) both}
.section-label.title-arrived,.seam-title.title-arrived{animation-duration:2.3s}
@keyframes title-widen{from{transform:scaleX(.76);opacity:.45}to{transform:scaleX(1);opacity:1}}
.worlds-intro{max-width:36rem;color:#d4c4a3;margin:1.7rem 0 2.5rem;line-height:1.8}
.universe-doors{gap:1.15rem;border:0;align-items:stretch}
.invitation.world-door,.invitation.world-door:first-child{--world-color:#edbd67;position:relative;padding:0;overflow:hidden;border:1px solid #caa26744;background:#100e0b;display:flex;isolation:isolate;transition:border-color .6s,box-shadow .6s}
.world-door[data-world=club]{--world-color:#89dccc}.world-door[data-world=director]{--world-color:#c7b2f3}
.world-door:hover,.world-door:focus-within{border-color:var(--world-color);box-shadow:0 0 45px color-mix(in srgb,var(--world-color) 14%,transparent)}
.door-art{position:relative;width:100%;aspect-ratio:1.17;overflow:hidden;background:#121a19}
.door-art img{width:100%;height:100%;object-fit:cover;opacity:.8;transition:transform 2.8s cubic-bezier(.18,.6,.23,1),opacity 1.5s;user-select:none;-webkit-user-drag:none}
.door-art:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#100e0b 0%,transparent 60%)}
.world-door:hover .door-art img,.world-door:focus-within .door-art img{transform:scale(1.09);opacity:1}
.door-art .invitation-number{position:absolute;top:1rem;left:1.3rem;color:#fff1cc;text-shadow:0 2px 20px #000}
.door-realm{position:absolute;bottom:1rem;left:1.3rem;z-index:1;font:clamp(2.7rem,4.3vw,4.6rem)/1 var(--blockbuster);letter-spacing:.13em;color:var(--world-color)}
.door-orbit{position:absolute;inset:12% 20%;border:1px solid #fbe7b65c;border-radius:50%;transform:rotate(-28deg) scaleX(.7);opacity:0;transition:opacity .8s,transform 2s;box-shadow:0 0 25px #efd09833}
.world-door:hover .door-orbit,.world-door:focus-within .door-orbit{opacity:.7;transform:rotate(28deg) scaleX(1.2)}
.door-copy{padding:.4rem 1.4rem 1.7rem;flex:1;display:flex;flex-direction:column;width:100%}
.door-kicker{font:600 .65rem/1.7 Arial,sans-serif;letter-spacing:.2em;color:var(--world-color,#e9c87e);text-transform:uppercase}
.invitation .door-copy h3{font-size:clamp(1.65rem,2.4vw,2.8rem);margin:1rem 0;letter-spacing:.02em}
.invitation .door-copy p:not(.door-kicker){font-size:.98rem;color:#d1c5ae;line-height:1.75;margin:0 0 2rem}
.invitation .door-copy .door-kicker{font-size:.63rem;margin:0}
.invitation .world-launch{display:flex;justify-content:space-between;width:100%;gap:.7rem;margin-top:auto;white-space:normal;min-height:48px;align-items:center;color:#fff0ca;border-bottom-color:var(--world-color);line-height:1.45;font-size:.93rem}
.worlds-after{display:flex;justify-content:space-between;gap:1.3rem;align-items:center;padding:2rem 0 0}.worlds-after p{font:italic 1.65rem/1.3 var(--poster);color:#e7d8b9}.worlds-after .text-link{font-size:.9rem;white-space:normal}
.contact-promise{max-width:35rem;font-size:1.1rem;line-height:1.8;margin:1.5rem 0 0;color:#decda9}.contact-reassurance{margin-top:1rem;max-width:32rem;color:#bcb29a;font-size:.85rem;line-height:1.7}
.world-dialog,.conversation-dialog{--world-color:#edbd67;border:1px solid #ac8d505c;background:#090b0c;color:#f9ecd0;padding:0;overscroll-behavior:contain;scrollbar-color:#92763c #101216;isolation:isolate}
.world-dialog::backdrop,.conversation-dialog::backdrop{background:#050708eb}
.world-dialog{width:100%;height:100%;max-width:none;max-height:none;margin:0;border:0;overflow:auto;scroll-behavior:auto}
body.worlds-open{overflow:hidden}
body.worlds-open #cinema-cursor,body.worlds-open #spotlight-field,body.worlds-open #spotlight-shade,body.worlds-open #spotlight-light{visibility:hidden}
body.cursor-active .world-dialog,body.cursor-active .world-dialog *,body.cursor-active .conversation-dialog,body.cursor-active .conversation-dialog *{cursor:auto}
body.cursor-active .world-dialog :is(a,button,label),body.cursor-active .conversation-dialog :is(a,button,label){cursor:pointer}
.world-dialog :is(input,textarea),.conversation-dialog :is(input,textarea){cursor:text!important}
.world-dialog button,.conversation-dialog button{font:inherit}
.world-topbar{position:sticky;top:0;z-index:8;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 2.5rem;background:#080b0ef2;border-bottom:1px solid #d7b77033}
.world-brand{font:600 .8rem/1.4 Arial,sans-serif;letter-spacing:.17em}.world-brand span{color:var(--world-color);margin-left:1.2rem}
.world-tools{display:flex;gap:1rem;align-items:center}.world-tools button,.conversation-back{border:0;color:#ecddb9;background:transparent;min-height:44px;font-size:.78rem;padding:.4rem}
.world-tools button:hover,.conversation-back:hover{color:#fff;box-shadow:0 1px var(--world-color)}
.world-hero{position:relative;min-height:min(850px,calc(100svh - 76px));isolation:isolate;overflow:hidden;background:#0a1013;display:flex;align-items:center}
#world-art{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-3;opacity:.74;transform:scale(1.02);object-position:60% 50%}
.world-dialog[open] #world-art{animation:world-drift 12s ease-out both}
@keyframes world-drift{from{transform:scale(1.075) translateX(1%)}to{transform:scale(1.02) translateX(0)}}
.world-hero:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#070b10eb 0%,#070b10b0 38%,#070b1015 78%),linear-gradient(0deg,#090b0c,transparent 35%)}
.world-atmosphere{position:absolute;inset:0;z-index:-2;background:radial-gradient(ellipse at var(--world-x,70%) var(--world-y,45%),color-mix(in srgb,var(--world-color) 38%,transparent),transparent 60%);mix-blend-mode:screen;opacity:.5}
.world-stardust{position:absolute;inset:0;z-index:0;pointer-events:none;background-image:radial-gradient(circle,#fff5cbb0 1px,transparent 2px),radial-gradient(circle,#efcc7370 1px,transparent 2px);background-size:149px 163px,213px 227px;mask-image:linear-gradient(90deg,transparent 35%,#000);opacity:.3}
.world-dialog[open] .world-stardust{animation:world-dust 14s ease-out both}@keyframes world-dust{from{transform:translate(0,20px);opacity:0}to{transform:translate(-14px,-20px);opacity:.35}}
.world-hero-copy{position:relative;z-index:1;max-width:52rem;padding:5rem clamp(1.5rem,6vw,6.5rem) 7rem}
#world-realm{margin-bottom:1.6rem;font-size:.72rem}
#world-name{font:400 clamp(1.15rem,2vw,1.5rem)/1.45 var(--poster);letter-spacing:.025em;color:#f7e7c4;margin:0 0 1.2rem}
#world-line{font:400 clamp(3rem,5.4vw,6.5rem)/1.08 var(--blockbuster);text-transform:uppercase;letter-spacing:.015em;white-space:pre-line;overflow-wrap:break-word;text-wrap:balance;color:#fff1d1;margin:0 0 1.5rem;transform-origin:left center;animation:title-widen 1.8s ease-out both}
#world-intro{max-width:33rem;color:#ece1cd;font-size:1.05rem;line-height:1.85;margin:0 0 2rem}
.world-primary{display:inline-flex;align-items:center;justify-content:space-between;gap:1.7rem;min-height:52px;padding:.95rem 1.4rem;border:1px solid var(--world-color,#e9c87e);background:var(--world-color,#e9c87e);color:#101313;text-decoration:none;font:600 .9rem/1.4 Arial,sans-serif;border-radius:0;transition:box-shadow .5s,background .4s,transform .4s}
.world-primary:hover{box-shadow:0 0 35px color-mix(in srgb,var(--world-color,#e9c87e) 28%,transparent);background:#fff1ca}.world-primary:active{transform:scale(.98)}
.world-signals{position:absolute;bottom:2.5rem;left:clamp(1.5rem,6vw,6.5rem);display:flex;gap:2rem;color:#e1d2b4;text-transform:uppercase;letter-spacing:.2em;font-size:.65rem}.world-signals span:before{content:'✦';margin-right:.7rem;color:var(--world-color)}
.world-art-caption{position:absolute;bottom:2.5rem;right:2.5rem;color:#bfb7a6;letter-spacing:.13em;font-size:.52rem}
.world-content{max-width:1200px;margin:auto;padding:4rem clamp(1.5rem,6vw,5rem) 3rem}.world-path-heading{margin-bottom:2.2rem}.world-path-heading h3{font:400 clamp(2rem,4vw,3.5rem)/1.2 var(--poster);margin:.7rem 0;color:#eadac1}
.world-steps{list-style:none;counter-reset:journey;display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;padding:0;margin:0 0 4rem}.world-steps li{counter-increment:journey;border-top:1px solid #a5916c55;padding-top:1.5rem}.world-steps li:before{content:'0' counter(journey);font:2.5rem/1 var(--blockbuster);color:var(--world-color)}.world-steps h4{font:1.25rem/1.3 var(--poster);margin:1.2rem 0 .8rem}.world-steps p{font-size:.92rem;line-height:1.85;color:#c6c3b9}
.world-choice{padding:2rem 0 1rem;margin:0;border:0;scroll-margin-top:6rem}.world-choice legend{font:400 clamp(1.65rem,3vw,2.6rem)/1.25 var(--poster);color:#f1e4cc;max-width:100%}
#world-options{display:grid;grid-template-columns:repeat(3,1fr);gap:.8rem;margin-top:.8rem}.world-option{position:relative;display:flex;align-items:center;min-height:70px;padding:1rem;background:#11181b;border:1px solid #59645c;color:#d7ded6;cursor:pointer;gap:.7rem;font-size:.94rem;transition:background .6s,border-color .6s,box-shadow .6s}.world-option input{accent-color:var(--world-color);width:16px;height:16px;flex-shrink:0}.world-option:has(input:checked){border-color:var(--world-color);background:color-mix(in srgb,var(--world-color) 10%,#091012);box-shadow:inset 0 0 30px color-mix(in srgb,var(--world-color) 8%,transparent);color:#fff1d3}.world-option:focus-within{outline:2px solid var(--world-color);outline-offset:3px}
#world-selection{min-height:1.6rem;margin:1rem 0 0;font-size:.83rem;color:var(--world-color)}
.world-invitation{position:relative;padding:2.8rem 0 3rem;text-align:center;border-bottom:1px solid #d6bb7533}.world-invitation:before{content:'';position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse,color-mix(in srgb,var(--world-color) 10%,transparent),transparent 70%)}
#world-prompt{font:italic clamp(1.6rem,2.8vw,2.7rem)/1.5 var(--poster);max-width:42rem;margin:0 auto 1.8rem}#world-note{font-size:.76rem;color:#aaa99d;max-width:42rem;line-height:1.7;margin:1.2rem auto 0}
.world-navigation{display:grid;grid-template-columns:repeat(3,1fr);gap:.8rem;margin-top:2rem}.world-navigation button{border:1px solid #b1a08044;background:#10171a;color:#e9d9b7;padding:1rem;min-height:70px;text-align:left;font-size:.85rem;line-height:1.4}.world-navigation button[aria-current=true]{border-color:var(--world-color);color:var(--world-color)}
.conversation-dialog{width:min(710px,calc(100% - 1.5rem));max-height:calc(100svh - 2rem);margin:auto;padding:2.3rem clamp(1.2rem,5vw,3.5rem) 2rem;background:radial-gradient(ellipse at 100% 0,#283636,#0a0e12 60%)}
.conversation-back{display:block;margin:0 0 1.7rem auto}#conversation-title{font:400 clamp(3rem,7vw,4.7rem)/1.06 var(--blockbuster);letter-spacing:.025em;text-transform:uppercase;margin:.7rem 0 1rem}#conversation-title em{font:italic .83em/1.3 var(--poster);text-transform:none;letter-spacing:-.03em}#conversation-intro{font-size:.95rem;color:#ddd6c4;line-height:1.7;margin-bottom:1.3rem}
.mail-service,#welcome-mail-status{font-size:.83rem;line-height:1.65;padding:.85rem 1rem;background:#162326;border-left:2px solid #8bd8c5;color:#d5e4da;margin:1rem 0 1.5rem}
#welcome-mail-status:empty{display:none}.conversation-dialog label{display:flex;flex-direction:column;gap:.5rem;font-size:.85rem;color:#e3d9c6;margin-bottom:1rem}.conversation-fields{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.conversation-dialog :is(input:not([type=checkbox]),textarea,select){width:100%;min-height:46px;border:1px solid #68736d;background:#080f13;color:#f9efdd;padding:.75rem;font:1rem/1.45 Arial,sans-serif;border-radius:0}.conversation-dialog textarea{resize:vertical}.conversation-dialog select{color-scheme:dark}
.conversation-dialog .conversation-consent{flex-direction:row;align-items:flex-start;line-height:1.6;gap:.7rem}.conversation-consent input{margin-top:.2rem;width:18px;height:18px;flex-shrink:0;accent-color:#e4bc75}
#conversation-privacy,#conversation-direct{font-size:.76rem;line-height:1.7;color:#afbbb5;margin:0 0 1.25rem}#conversation-result{font-size:.9rem;line-height:1.7;margin:1rem 0;color:#f1d49a}#conversation-direct{margin:1.7rem 0 0;overflow-wrap:anywhere}#conversation-send{width:100%}#conversation-new{margin:1rem 0 0;border:1px solid #ad925d;background:transparent;color:#f8e5b9;padding:.8rem;min-height:44px}.conversation-dialog [hidden]{display:none!important}
body.worlds-open .experience-controls{visibility:hidden}
.motion-paused .title-reveal,.effects-off .title-reveal{animation:none!important;transform:none!important;opacity:1!important}
.motion-paused .world-dialog *,.effects-off .world-dialog *,.motion-paused .world-door *,.effects-off .world-door *{animation:none!important;transition:none!important;transform:none!important}
@media(max-width:900px){.universe-doors{gap:.65rem}.door-copy{padding:.4rem 1rem 1.4rem}.world-topbar{padding:.6rem 1rem}.world-brand{font-size:.65rem}.world-brand span{display:none}.world-tools{gap:.5rem}.world-art-caption{display:none}.world-hero-copy{max-width:46rem}.world-steps{gap:1.2rem}}
@media(max-width:700px){.universe-doors{grid-template-columns:1fr;gap:1.5rem}.door-art{aspect-ratio:1.55}.door-copy{padding:.3rem 1.4rem 1.6rem}.door-realm{font-size:3.7rem}.invitation .door-copy h3{font-size:2.6rem}.worlds-after{display:block}.worlds-after .text-link{margin-top:1.3rem}.world-hero{min-height:720px}.world-hero-copy{padding:4rem 1.5rem 7rem}.world-hero:after{background:linear-gradient(90deg,#070b10d9,#070b1077),linear-gradient(0deg,#090b0c,transparent 60%)}#world-line{font-size:clamp(3rem,11vw,4.5rem)}#world-intro{font-size:.98rem}.world-signals{left:1.5rem;gap:1rem;font-size:.58rem}.world-topbar{flex-wrap:wrap;gap:.15rem}.world-tools{flex:1;justify-content:flex-end}.world-tools button{font-size:.7rem}.world-steps{grid-template-columns:1fr;gap:1.7rem;margin-bottom:2.5rem}.world-steps h4{margin:.75rem 0}.world-content{padding-top:2.5rem}#world-options{grid-template-columns:1fr 1fr}.world-option{font-size:.85rem;padding:.75rem;min-height:76px}.world-navigation{grid-template-columns:1fr}.world-navigation button{min-height:52px}.conversation-fields{grid-template-columns:1fr;gap:0}.world-primary{white-space:normal;text-align:left}.conversation-dialog{padding:1.25rem}.worlds-intro{font-size:.95rem}}
@media(prefers-reduced-motion:reduce){.title-reveal{transform:none!important;opacity:1!important}.world-dialog *, .world-door *{animation:none!important;transition:none!important;transform:none!important}}

#conversation-form .form-trap{display:none!important}
#hero-title.title-reveal{transform-origin:center}

.contact{color:#f4e5c1}.contact .section-label{color:#dcb566}
