.intro-room{color:#fff7ed;background:#171a1b;font-family:Arial,Helvetica,sans-serif}.intro-stage,.intro-poster,.intro-vignette{position:fixed;inset:0}.intro-stage canvas{width:100%;height:100%;display:block}.intro-poster{pointer-events:none;background:#171a1b url(/room01/poster.png) 50%/cover no-repeat;transition:opacity .7s}.intro-poster.loaded{opacity:0}.intro-vignette{pointer-events:none;z-index:1;background:linear-gradient(#0c0d0f40,#0000 18% 69%,#0c0d0f7a)}.intro-track{height:560svh}.intro-top{z-index:3;justify-content:space-between;align-items:center;padding:28px 36px;display:flex;position:fixed;top:0;left:0;right:0}.intro-top .intro-name{letter-spacing:-.8px;text-align:left;color:inherit;background:0 0;border:0;border-radius:0;flex-direction:column;gap:5px;padding:0;font-size:25px;font-weight:600;display:flex}.intro-name span{letter-spacing:.03em;color:#ded4c8;font-size:12px;font-weight:400}.intro-top a{color:inherit;border-bottom:1px solid #d0bba17a;padding-bottom:8px;font-size:14px;text-decoration:none}.intro-top a span{margin-left:22px}.intro-copy{z-index:2;pointer-events:none;text-shadow:0 2px 20px #18110da6;max-width:310px;transition:opacity .35s;animation:.45s both intro-in;position:fixed;top:126px;left:36px}.intro-copy.moving{opacity:0;animation:none}.intro-fade{z-index:1;opacity:1;pointer-events:none;background:#0b0908;position:fixed;inset:0}.intro-letterbox:before,.intro-letterbox:after{content:"";z-index:1;pointer-events:none;background:#0b0908;height:clamp(0px,50svh - 22.7273vw,9svh);transition:height .9s;position:fixed;left:0;right:0}.intro-letterbox:before{top:0}.intro-letterbox:after{bottom:0}.intro-room:not(.film) .intro-letterbox:before,.intro-room:not(.film) .intro-letterbox:after{height:0}.intro-title{z-index:2;pointer-events:none;opacity:0;color:#f3e7da;text-shadow:0 2px 24px #0b0908;flex-direction:column;justify-content:center;align-items:center;gap:10px;display:flex;position:fixed;inset:0}.intro-title span{letter-spacing:.42em;text-transform:uppercase;opacity:.8;font-size:12px}.intro-title strong{letter-spacing:-.02em;font-size:clamp(34px,5vw,64px);font-weight:600}.intro-copy .intro-eyebrow{letter-spacing:-.06em;color:#f7e3c7;margin:0 0 18px;font-size:clamp(54px,6vw,82px);font-weight:600;line-height:.9}.intro-eyebrow span{letter-spacing:.17em;margin:14px 0 0 4px;font-size:12px;font-weight:500;display:block}.intro-copy h1{letter-spacing:-1.3px;text-wrap:balance;margin:0 0 12px;font-size:clamp(26px,2.4vw,38px);font-weight:500;line-height:1.08}.intro-copy .intro-description{color:#eee3d6;max-width:300px;margin:0;font-size:15px;line-height:1.55}.intro-bottom{z-index:3;border-top:1px solid #f4dec129;justify-content:space-between;align-items:center;gap:20px;padding-top:15px;display:flex;position:fixed;bottom:26px;left:36px;right:36px}.intro-bottom p{color:#e7ddd1;min-width:145px;margin:0;font-size:12px}.intro-bottom p span{margin-left:16px}.intro-cue{opacity:.35;transition:opacity .6s}.intro-cue.ready{opacity:1}.intro-cue.ready span{animation:1.6s ease-in-out infinite intro-nudge;display:inline-block}@keyframes intro-nudge{0%,to{transform:translateY(0)}50%{transform:translateY(4px)}}@media (prefers-reduced-motion:reduce){.intro-cue.ready span{animation:none}}.intro-chapters{gap:5px;display:flex}.intro-chapters button{background:0 0;border:0;border-radius:0;padding:14px 5px}.intro-chapters button span{background:#e4d4bc55;width:28px;height:2px;transition:background .3s;display:block}.intro-chapters button[aria-current] span{background:#f0c58c}.intro-bottom .intro-motion{color:#e7ddd1;background:0 0;border:0;border-radius:0;padding:8px 0;font-size:12px}.intro-motion[aria-pressed=true]{text-decoration:underline}.intro-load{z-index:4;color:#f6dcb9;font-size:12px;position:fixed;top:90px;right:36px}.speech{z-index:2;pointer-events:none;will-change:transform;position:fixed;top:0;left:0}.speech-card{left:var(--dx,22px);color:#1c1714;opacity:0;transform-origin:0 100%;background:#fff8f0f2;border-radius:20px;width:max-content;max-width:min(340px,72vw);padding:15px 19px 16px;transition:opacity .35s,transform .5s cubic-bezier(.2,.9,.25,1.25);position:absolute;bottom:16px;transform:translateY(10px)scale(.88);box-shadow:0 22px 48px #0000005c,0 2px 6px #0003}.speech-card:after{content:"";left:var(--tail,-6px);background:inherit;border-radius:3px 0;width:20px;height:20px;position:absolute;bottom:-5px;transform:rotate(35deg)skew(12deg)}.speech-card strong{letter-spacing:-.02em;font-size:clamp(21px,2vw,28px);font-weight:600;line-height:1.1;display:block}.speech-card span{color:#5a4d43;max-width:30ch;margin-top:6px;font-size:clamp(13px,1vw,15px);line-height:1.4;display:block}.speech.show .speech-card{opacity:1;transform:none}.intro-copy.speaking h1,.intro-copy.speaking .intro-description{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}:is(.intro-room button:focus-visible,.intro-room a:focus-visible){outline-offset:6px;outline:2px solid #f4ce98}@keyframes intro-in{0%{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}@media (max-width:700px){.intro-top{padding:22px}.intro-top .intro-name{font-size:23px}.intro-top a{font-size:13px}.intro-copy{text-shadow:0 2px 20px #18110dcf;max-width:350px;inset:auto 22px 125px}.intro-copy .intro-eyebrow{letter-spacing:0;margin:0 0 15px;font-size:16px;line-height:1}.intro-eyebrow span{margin-left:17px;font-size:12px;display:inline}.intro-copy h1{letter-spacing:-1px;font-size:32px}.intro-copy .intro-description{max-width:310px;font-size:15px}.intro-vignette{background:linear-gradient(#11131670,#0000 17% 45%,#111316d4)}.intro-bottom{flex-wrap:wrap;gap:10px;bottom:20px;left:22px;right:22px}.intro-bottom p{min-width:0}.intro-chapters button span{width:20px}.intro-bottom .intro-motion{font-size:12px}.intro-load{top:85px;right:22px}.intro-track{height:480svh}}@media (prefers-reduced-motion:reduce){.intro-copy{animation:none}.intro-poster{transition:none}}@media (max-height:520px){.intro-copy{top:88px;bottom:auto}.intro-copy h1{font-size:27px}.intro-copy .intro-description{font-size:14px}.intro-copy .intro-eyebrow{display:none}.intro-top{padding:16px 24px}.intro-bottom{bottom:12px}}
