.re-shell{--re-cream:#f5eddb;isolation:isolate;min-height:100svh;color:var(--re-cream);background:#071a20;position:relative;overflow:clip}.re-world{--gate-angle:0deg;--gate-opacity:1;--garden-scale:1;--sea-opacity:0;--sea-scale:1.025;--hall-opacity:0;--hall-scale:1.09;--entrance-progress:0;z-index:-1;position:absolute;inset:0;overflow:hidden}.re-plane{position:absolute;inset:0;overflow:hidden}.re-plane img{object-fit:cover;object-position:50% 50%}.re-garden{transform:scale(var(--garden-scale));transform-origin:50% 48%}.re-underwater{opacity:var(--sea-opacity);transform:scale(var(--sea-scale));transform-origin:50%}.re-riwaq{opacity:var(--hall-opacity);transform:scale(var(--hall-scale));transform-origin:50% 47%}.re-gates{perspective:1600px;opacity:var(--gate-opacity);pointer-events:none;position:absolute;inset:0}.re-gate-leaf{-webkit-backface-visibility:hidden;backface-visibility:hidden;width:50%;position:absolute;top:0;bottom:0;overflow:hidden}.re-gate-left{transform-origin:0;transform:rotateY(calc(-1 * var(--gate-angle)));left:0}.re-gate-right{transform-origin:100%;transform:rotateY(var(--gate-angle));right:0}.re-gate-picture{width:200%;position:absolute;inset-block:0}.re-gate-left .re-gate-picture{left:0}.re-gate-right .re-gate-picture{right:0}.re-gate-picture img{object-fit:cover;object-position:center}.re-vignette{background:linear-gradient(#02151c85,#0000 25%,#03121b3d 55%,#02151cf0),radial-gradient(#0000 20%,#01101765);position:absolute;inset:0}.re-time-line{width:100%;height:2px;transform:scaleX(var(--entrance-progress));transform-origin:0;opacity:.65;background:#e2d9b9;position:absolute;bottom:0;left:0}.re-header{justify-content:flex-end;align-items:center;gap:16px;min-height:84px;padding:20px clamp(20px,4vw,65px);display:flex}.re-brand{font:1.2rem var(--font-editorial);color:inherit;align-items:center;gap:10px;text-decoration:none;display:inline-flex}.re-brand svg{color:#eeddb5;width:44px;height:30px}.re-study{letter-spacing:.12em;text-transform:uppercase;color:#d0d6cb;font-size:.75rem}.re-leave{color:inherit;align-items:center;gap:9px;min-height:44px;font-size:.875rem;text-decoration:none;display:flex}.re-shell button{font:inherit;color:inherit;cursor:pointer}.re-shell :where(button,a):focus-visible{outline-offset:6px;outline:2px solid #f2dc9d}.re-shell h1:focus{outline:none}.re-welcome{text-align:center;flex-direction:column;justify-content:center;align-items:center;max-width:880px;min-height:calc(100svh - 156px);margin:auto;padding:clamp(45px,9vh,105px) 24px 32px;display:flex}.re-eyebrow{text-transform:uppercase;letter-spacing:.15em;color:#e3dac6;margin:0 0 22px;font-size:.8125rem;line-height:1.7}.re-welcome h1{font:400 clamp(4.6rem,8.8vw,8rem)/1.03 var(--font-editorial);letter-spacing:-.055em;text-shadow:0 4px 40px #041217;margin:0}.re-welcome h1 em{color:#e9dfc6;font-weight:400}.re-welcome-note{color:#dde0d6;margin:28px 0 32px;font-size:1.05rem;line-height:1.9}.re-entry-actions{flex-wrap:wrap;justify-content:center;gap:15px;display:flex}.re-button{border:1px solid #eee5cf85;border-radius:3px;justify-content:center;align-items:center;gap:10px;min-height:50px;padding:12px 22px;display:inline-flex;font-size:.9375rem!important}.re-shell .re-primary{color:#18251f;background:#efe6d2}.re-quiet{background:#05141cb5}.re-button:hover{filter:brightness(1.1)}.re-button:disabled{opacity:.6;cursor:wait}.re-motion{cursor:pointer;align-items:center;gap:12px;margin-top:25px;font-size:.875rem;display:inline-flex}.re-motion [data-slot=switch]{background:#61716e;border-color:#d6ddce}.re-motion [data-slot=switch][data-checked]{background:#c3b588}.re-motion [data-slot=switch-thumb]{background:#f5eddb}.re-small{color:#c3ccc7;margin:14px 0 5px;font-size:.8125rem;line-height:1.6}.re-skip{text-underline-offset:5px;background:0 0;border:0;min-height:44px;text-decoration:underline;font-size:.875rem!important}.re-passage{text-align:center;flex-direction:column;justify-content:space-between;min-height:calc(100svh - 172px);padding:10vh 24px 30px;display:flex}.re-passage-copy{text-shadow:0 2px 25px #00131b;max-width:850px;opacity:var(--passage-opacity,1);margin:0 auto}.re-passage-copy h1{font:400 clamp(2.5rem,4.5vw,4.8rem)/1.13 var(--font-editorial);letter-spacing:-.035em;text-wrap:balance;margin:0 0 20px}.re-passage-copy>p:last-child{color:#e1e5de;font-size:1rem;line-height:1.8}.re-playback{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:auto;padding-top:50px;display:flex}.re-playback button{background:#051b25c9;border:1px solid #cbd7d340;border-radius:3px;align-items:center;gap:8px;min-height:44px;padding:11px 15px;font-size:.875rem;display:inline-flex}.re-gallery-words{color:#eee9d7;grid-template-columns:1fr 1fr 1fr;gap:24px;width:100%;max-width:1000px;margin:auto;padding-top:7vh;display:grid}.re-gallery-words span{font:italic clamp(1.2rem,2.5vw,2rem)/1.4 var(--font-editorial);text-shadow:0 2px 15px #031922}.re-gallery-words small{color:#d5dcd6;grid-column:1/-1;margin-top:8px;font-size:.75rem}.re-hall-content{text-align:center;width:min(1190px,100% - 48px);min-height:calc(100svh - 155px);margin:0 auto;padding:clamp(40px,8vh,100px) 0 35px}.re-hall-content h1{font:400 clamp(4rem,8vw,7.7rem)/1.05 var(--font-editorial);letter-spacing:-.055em;color:#f1e9d7;text-shadow:0 4px 40px #072025;margin:0}.re-hall-subtitle{font:1.4rem/1.6 var(--font-editorial);margin:20px 0 45px}.re-doorways{grid-template-columns:repeat(3,minmax(0,1fr));gap:25px;display:grid}.re-doorways a{text-align:left;min-height:250px;color:inherit;background:linear-gradient(#071c2490,#061922e8);border-top:1px solid #eee0bd6b;border-bottom:1px solid #cedcd732;flex-direction:column;align-items:flex-start;padding:28px;text-decoration:none;transition:background .18s;display:flex}.re-doorways a:hover{background:#153338e8}.re-door-number{color:#ddd3b6;letter-spacing:.08em;font-size:.75rem}.re-doorways h2{font:400 clamp(1.65rem,2.6vw,2.35rem)/1.15 var(--font-editorial);letter-spacing:-.02em;margin:22px 0 14px}.re-doorways p{color:#d0dad7;margin:0 0 27px;font-size:1rem;line-height:1.7}.re-door-enter{justify-content:space-between;align-items:center;gap:12px;width:100%;margin-top:auto;font-size:.875rem;display:flex}.re-replay{background:0 0;border:0;align-items:center;gap:9px;min-height:44px;margin-top:30px;display:inline-flex;font-size:.875rem!important}.re-founder{color:#d8c8a9;font:400 1.125rem/1.6 var(--font-editorial);letter-spacing:.06em;margin:10px 0 0}.re-footnote{text-align:center;color:#bacbc8;padding:8px 24px 18px;font-size:.75rem;line-height:1.7}.re-footnote output{color:#e8ddc3;font-size:.875rem;display:block}.re-footnote p{margin:4px 0 0}@media (prefers-reduced-motion:no-preference){.re-shell:not(.re-still) .re-passage-copy{animation:1.5s backwards re-words}.re-shell:not(.re-still) .re-hall-content>:not(.re-doorways){animation:2.6s both re-words}.re-shell:not(.re-still) .re-doorways a{animation:2.2s 1.3s both re-words}.re-shell:not(.re-still) .re-doorways a:nth-child(2){animation-delay:1.7s}.re-shell:not(.re-still) .re-doorways a:nth-child(3){animation-delay:2.1s}@keyframes re-words{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}}.re-still *{transition:none!important;animation:none!important}.re-still .re-plane{transform:none}@media (prefers-reduced-motion:reduce){.re-shell *{transition:none!important;animation:none!important}}@media (max-width:760px){.re-header{gap:10px;padding:14px 18px}.re-study{display:none}.re-brand{font-size:1.1rem}.re-leave{font-size:.8125rem}.re-welcome{min-height:calc(100svh - 152px);padding:40px 20px 22px}.re-welcome h1{font-size:clamp(4rem,15vw,6rem)}.re-welcome-note{margin:24px 0;font-size:1rem}.re-entry-actions{gap:10px}.re-button{padding:12px 17px}.re-passage{min-height:calc(100svh - 158px);padding:9vh 20px 20px}.re-passage-copy h1{font-size:clamp(2.3rem,8vw,3.6rem)}.re-gallery-words{grid-template-columns:1fr;gap:15px;padding-top:25px}.re-gallery-words small{margin:0}.re-playback{gap:8px;padding-top:30px}.re-playback button{padding:10px 12px;font-size:.8125rem}.re-hall-content{width:calc(100% - 40px);padding-top:40px}.re-hall-subtitle{margin-bottom:30px}.re-doorways{grid-template-columns:1fr;gap:18px}.re-doorways a{min-height:200px;padding:23px}.re-doorways h2{margin:15px 0 10px;font-size:2rem}.re-doorways p br{display:none}.re-arrived .re-world{position:fixed}}
