:root{--dream-night:#080d1b;--dream-surface:#111b2d;--dream-pearl:#f5eedf;--dream-mist:#b5c4d2;--dream-gold:#dcc596;--dream-moon:#d3e8ef;--dream-stone:#a6b0c6;--dream-water:#101d32;--dream-dawn:#746b89}
:root{--paper:#f5f0e5;--ink:#252b26;--olive:#404e32;--muted:#596154;--border:#c4c6b6;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-6:24px;--space-8:32px;--space-12:48px;--space-16:64px;--radius:5px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}button,select{font:inherit}button,a,select{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,select:focus-visible{outline:3px solid var(--olive);outline-offset:5px}.shell{width:min(1600px,100%);margin:auto;padding:0 40px}.masthead{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:88px;border-bottom:1px solid var(--border)}.wordmark{display:inline-flex;align-items:center;min-height:44px;font-size:28px;font-weight:850;letter-spacing:-1.7px}.wordmark span{color:var(--olive);font-size:40px;line-height:1}.edition{color:var(--muted);font-size:11px;letter-spacing:.12em}.intro{display:grid;grid-template-columns:1fr .8fr;align-items:end;column-gap:64px;padding:40px 0 44px}.eyebrow{grid-column:1/-1;font-size:11px;letter-spacing:.16em;margin:0 0 12px;font-weight:650}.intro h1{margin:0;font-family:Georgia,"Times New Roman",serif;font-size:clamp(44px,4.6vw,76px);font-weight:400;line-height:1.09;letter-spacing:-.045em;word-break:keep-all}.deck{max-width:410px;margin:0 0 4px;color:var(--muted);font-size:15px;word-break:keep-all}.cast{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;align-items:start;scroll-margin-top:24px}.person:nth-child(even){margin-top:32px}.index{display:flex;justify-content:space-between;gap:8px;margin:0 0 10px;text-transform:uppercase;letter-spacing:.09em;font-size:11px;color:var(--muted)}.character-link{display:block}.portrait{position:relative;overflow:hidden;isolation:isolate;border-radius:140px 140px 5px 5px;background:#ddd8ca;aspect-ratio:2/3}.portrait img{display:block;position:relative;z-index:1;width:100%;height:100%;object-fit:cover;transition:filter .16s}.image-fallback{position:absolute;inset:0;display:grid;place-items:center;color:var(--ink);font-family:Georgia,serif;font-size:32px}.portrait.image-error img{visibility:hidden}.identity{padding:20px 0 0}.identity h2{font-size:clamp(20px,1.85vw,30px);font-weight:650;line-height:1.2;letter-spacing:-.05em;margin:0;overflow-wrap:anywhere}.real-name{margin:6px 0 0;color:var(--muted);font-size:12px}.real-name span{color:var(--ink);font-weight:600;margin-inline-start:4px}.bio{font-size:14px;line-height:1.65;color:var(--muted);margin:16px 0 18px;min-height:70px;word-break:keep-all}.visit{display:flex;justify-content:space-between;align-items:center;min-height:44px;border-top:1px solid var(--border);font-size:13px;font-weight:650}.visit span{font-size:23px;color:var(--olive)}.character-link:active{transform:translateY(1px)}footer{display:grid;grid-template-columns:1fr auto;align-items:start;column-gap:32px;row-gap:12px;border-top:1px solid var(--border);margin-top:64px;padding:24px 0 32px;color:var(--muted)}footer p{font-size:12px;max-width:480px;margin:0;word-break:keep-all}form{display:flex;align-items:center;gap:8px}label{font-size:12px}select,button{border:1px solid var(--border);border-radius:var(--radius);background:var(--paper);color:var(--ink);min-height:44px;padding:8px 12px;font-size:13px}button{background:var(--olive);color:var(--paper);border-color:var(--olive);cursor:pointer}.preview{grid-column:1/-1;font-size:11px}.skip{position:fixed;left:16px;top:-100px;z-index:10;background:var(--paper);padding:12px 16px;border:1px solid var(--olive)}.skip:focus{top:12px}@media(hover:hover){.character-link:hover .visit{color:var(--olive)}.character-link:hover img{filter:brightness(1.04)}}@media(max-width:1199px){.cast{grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 24px}.person:nth-child(even){margin-top:0}.identity h2{font-size:28px}.bio{min-height:48px}}@media(max-width:649px){.shell{padding:0 16px}.masthead{min-height:64px}.wordmark{font-size:25px}.edition{font-size:9px}.intro{display:block;padding:28px 0 32px}.intro h1{font-size:46px}.deck{margin:20px 0 0;font-size:14px;max-width:320px}.cast{grid-template-columns:1fr;gap:36px}.index{font-size:11px;margin-bottom:8px}.portrait{border-radius:160px 160px 5px 5px}.identity{padding-top:16px}.identity h2{font-size:30px;letter-spacing:-.045em}.bio{min-height:0;margin:12px 0}.visit{font-size:14px}footer{display:flex;flex-direction:column;gap:20px;margin-top:40px;padding-bottom:24px}form{width:100%;flex-wrap:wrap}select{flex:1}.preview{font-size:11px}.eyebrow{margin-bottom:12px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.portrait img{transition:none}}

/* Shared footer and readable German legal prose use the existing design tokens. */
.legal-links{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:8px 20px;width:100%;font-size:12px}.legal-links a{display:inline-flex;align-items:center;min-height:44px;text-decoration:underline;text-underline-offset:3px}.legal{max-width:760px;padding:40px 0;font-size:16px;line-height:1.8;overflow-wrap:anywhere}.legal h1{font-family:Georgia,serif;font-size:40px;line-height:1.15;font-weight:400}.legal h2{font-size:21px;line-height:1.4;margin-top:32px}.legal a{text-decoration:underline;text-underline-offset:3px}.legal address{white-space:pre-line;font-style:normal}.back{display:inline-flex;align-items:center;min-height:44px;font-size:14px}.legal-operator{margin-top:40px}select{font-size:16px}

/* BETTELZ / The door after midnight. Legal pages retain the paper system above. */
.dream-site{--dream-line:#536075;--dream-shadow:0 24px 80px #0006;background:var(--dream-night);color:var(--dream-pearl);isolation:isolate}.dream-site a:focus-visible,.dream-site button:focus-visible,.dream-site select:focus-visible{outline:3px solid var(--dream-gold);outline-offset:6px}.dream-site .skip{background:var(--dream-night);border-color:var(--dream-gold);color:var(--dream-pearl);z-index:20}.dream-backdrop{position:fixed;inset:0;z-index:-1;overflow:hidden;pointer-events:none;background:var(--dream-night)}.dream-poster{position:absolute;inset:0;background:#10182d url('/assets/dream-gateway.webp') center/cover no-repeat;transition:opacity 1.2s}.dream-backdrop canvas{display:block;width:100%;height:100%;opacity:0;transition:opacity 1.2s}.dream-site[data-scene=ready] .dream-backdrop canvas{opacity:1}.dream-site[data-scene=ready] .dream-poster{opacity:0}.threshold{position:relative;min-height:820px;height:100svh;max-height:1400px;display:flex;align-items:center;padding:150px clamp(24px,4.6vw,88px) 180px}.threshold::before{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,#080d1b8c,transparent 72%),linear-gradient(0deg,#080d1b 0%,transparent 24%)}.dream-header{background:linear-gradient(#080d1bf2,#080d1bb3 68%,transparent);position:absolute;top:0;left:0;width:100%;min-height:112px;padding:20px clamp(24px,4.6vw,88px);display:flex;align-items:center;justify-content:space-between;gap:24px;z-index:3}.dream-wordmark{display:inline-flex;align-items:center;gap:14px;min-height:44px;font-size:24px;font-weight:650;letter-spacing:.18em}.dream-wordmark span{font-size:26px;font-weight:400;color:var(--dream-gold)}.header-tools{display:flex;align-items:center;gap:32px}.dream-location{font-size:10px;line-height:1.8;letter-spacing:.1em;color:var(--dream-mist)}.motion-control{display:inline-flex;align-items:center;justify-content:center;gap:9px;border:1px solid var(--dream-line);border-radius:5px;padding:8px 13px;min-height:44px;background:#0c1421b3;color:var(--dream-pearl);font-size:12px;white-space:nowrap}.motion-control[hidden]{display:none}.motion-symbol{font-size:14px;color:var(--dream-gold)}[data-motion=paused] .motion-symbol{font-size:0}[data-motion=paused] .motion-symbol::after{content:'▷';font-size:16px}.threshold-copy{position:relative;z-index:2;width:min(52%,660px);padding-bottom:25px}.dream-eyebrow{font-size:11px;line-height:1.6;letter-spacing:.16em;font-weight:500;color:var(--dream-gold);margin:0 0 24px}.threshold h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(58px,5.8vw,96px);font-weight:400;line-height:1.08;letter-spacing:-.045em;word-break:keep-all;margin:0}.threshold-intro{font-size:15px;line-height:1.8;color:var(--dream-mist);max-width:370px;margin:28px 0 30px;word-break:keep-all}.enter-link{display:inline-flex;min-height:56px;align-items:center;gap:30px;border-bottom:1px solid var(--dream-gold);color:var(--dream-pearl);font-size:14px;letter-spacing:.02em}.enter-mark{display:inline-grid;place-items:center;width:32px;height:32px;border:1px solid var(--dream-gold);border-radius:50%;font-size:21px;color:var(--dream-gold);transition:transform .35s}.portal-hit{position:absolute;right:15%;top:17%;width:27%;height:57%;z-index:1;border-radius:48% 48% 0 0;cursor:pointer}.threshold-notes{position:absolute;bottom:40px;left:clamp(24px,4.6vw,88px);right:clamp(24px,4.6vw,88px);display:flex;align-items:center;justify-content:space-between;gap:20px;color:var(--dream-mist);font-size:10px;letter-spacing:.13em;z-index:2}.threshold-notes span:nth-child(2){font-size:12px;letter-spacing:.02em}.threshold-notes a{display:grid;place-items:center;border:1px solid var(--dream-line);border-radius:50%;width:44px;height:44px;font-size:19px}.discover{position:relative;z-index:1;padding:88px 0 0;outline:none;background:linear-gradient(#080d1bf2,#080d1b 230px);scroll-margin-top:0}.dream-shell{width:min(1600px,100%);padding:0 clamp(20px,4.6vw,88px);margin:auto}.cast-heading{display:flex;justify-content:space-between;align-items:end;gap:32px;margin-bottom:64px}.cast-heading .dream-eyebrow{margin-bottom:20px}.cast-heading h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-size:clamp(42px,4.2vw,68px);line-height:1.1;letter-spacing:-.035em;word-break:keep-all;margin:0}.cast-heading>p{color:var(--dream-mist);font-size:15px;margin:0 0 5px;max-width:260px;word-break:keep-all}.dream-site .cast{gap:26px}.dream-site .person:nth-child(even){margin-top:48px}.dream-site .index{color:var(--dream-mist);font-size:11px;letter-spacing:.12em;margin-bottom:16px}.dream-site .portrait{background:var(--dream-surface);box-shadow:var(--dream-shadow);border-radius:180px 180px 3px 3px;transition:transform .55s cubic-bezier(.2,.7,.2,1),box-shadow .4s;transform-origin:center 60%;border:1px solid #dcc59675}.dream-site .portrait::after{content:'';position:absolute;inset:0;z-index:2;pointer-events:none;border-radius:inherit;box-shadow:inset 0 0 0 4px #080d1b44,inset 0 0 24px #dcc59612}.dream-site .image-fallback{color:var(--dream-pearl)}.dream-site .identity{padding-top:24px}.dream-site .identity h3{font-size:clamp(21px,1.85vw,29px);font-weight:550;line-height:1.2;letter-spacing:-.035em;margin:0;overflow-wrap:anywhere}.dream-site .real-name{color:var(--dream-mist);font-size:12px}.dream-site .real-name span{color:var(--dream-gold)}.dream-site .bio{color:var(--dream-mist);font-size:14px;line-height:1.75;min-height:80px;margin:18px 0 20px}.dream-site .visit{border-color:var(--dream-line);font-size:13px;min-height:48px}.dream-site .visit span{color:var(--dream-gold)}.dream-site .character-link:active{transform:translateY(1px)}.dream-site footer{border-color:var(--dream-line);color:var(--dream-mist);margin-top:100px;padding:32px 0 max(30px,env(safe-area-inset-bottom))}.dream-site footer p{font-size:12px}.dream-site footer select{background:var(--dream-surface);border-color:var(--dream-line);color:var(--dream-pearl);font-size:16px}.dream-site footer button{background:var(--dream-gold);border-color:var(--dream-gold);color:var(--dream-night)}.dream-site .legal-links{color:var(--dream-mist)}.dream-site .legal-links a{min-height:44px}.dream-site[data-motion=paused] *,html[data-motion=paused]{scroll-behavior:auto}.dream-site[data-motion=paused] .portrait,.dream-site[data-motion=paused] .enter-mark,.dream-site[data-motion=paused] .dream-poster,.dream-site[data-motion=paused] canvas{transition:none}
@media(hover:hover) and (pointer:fine){.dream-site .character-link:hover .portrait{transform:perspective(1000px) rotateY(-3deg) translateY(-8px);box-shadow:0 30px 90px #0008,0 0 32px #dcc59616}.dream-site .character-link:hover .visit{color:var(--dream-gold)}.enter-link:hover .enter-mark{transform:rotate(45deg)}.motion-control:hover{border-color:var(--dream-gold)}}
@media(max-width:1199px){.threshold{min-height:760px}.threshold h1{font-size:clamp(54px,6.1vw,74px)}.header-tools{gap:20px}.dream-site .cast{gap:48px 28px}.dream-site .person:nth-child(even){margin-top:48px}.dream-site .identity h3{font-size:28px}.dream-site .bio{min-height:48px}.cast-heading{margin-bottom:48px}}
@media(max-width:699px){.dream-poster{background-image:url('/assets/dream-gateway-mobile.webp');background-position:center}.threshold{height:100svh;min-height:760px;max-height:1100px;padding:90px 24px 110px;align-items:flex-end}.threshold::before{background:linear-gradient(0deg,#080d1b 0%,#080d1bc7 14%,transparent 45%)}.dream-header{min-height:82px;padding:16px 22px;gap:16px}.dream-wordmark{font-size:20px;gap:8px;letter-spacing:.13em}.dream-wordmark span{font-size:23px}.dream-location{display:none}.motion-control{padding:8px 10px;font-size:11px;gap:6px}.threshold-copy{width:100%;padding-bottom:0}.dream-eyebrow{font-size:10px;letter-spacing:.1em;margin-bottom:16px}.threshold h1{font-size:clamp(40px,11.5vw,58px);line-height:1.08;letter-spacing:-.04em}.threshold-intro{font-size:13px;margin:20px 0 14px;max-width:310px;line-height:1.75}.enter-link{min-height:52px;font-size:14px;gap:28px}.threshold-notes{left:24px;right:24px;bottom:24px;font-size:9px}.threshold-notes span:nth-child(2){display:none}.portal-hit{left:15%;right:auto;width:70%;top:12%;height:46%}.discover{padding-top:56px}.dream-shell{padding:0 24px}.cast-heading{display:block;margin-bottom:40px}.cast-heading h2{font-size:42px}.cast-heading>p{font-size:14px;margin-top:22px}.dream-site .cast{grid-template-columns:1fr;gap:44px}.dream-site .person:nth-child(even){margin-top:0}.dream-site .index{margin-bottom:12px}.dream-site .portrait{border-radius:180px 180px 3px 3px}.dream-site .identity h3{font-size:30px}.dream-site .bio{min-height:0;margin:14px 0 18px}.dream-site footer{margin-top:56px;gap:20px}.dream-site form{flex-wrap:wrap}.dream-site .legal-links{gap:4px 20px}}
@media(max-width:359px){.threshold{padding-left:18px;padding-right:18px;min-height:740px}.dream-header{padding-left:18px;padding-right:18px}.dream-wordmark{font-size:18px}.motion-control{font-size:10px;padding:6px 8px}.threshold h1{font-size:40px}.threshold-intro{max-width:270px}.dream-shell{padding:0 18px}.cast-heading h2{font-size:38px}}
@media(max-height:580px) and (min-width:700px){.threshold{height:760px;min-height:760px}.dream-header{min-height:88px}}
@media(prefers-reduced-motion:reduce){.dream-site .portrait,.dream-site .enter-mark,.dream-poster,.dream-backdrop canvas{transition:none}.dream-site .character-link:hover .portrait{transform:none}}

.dream-site .threshold-copy,.dream-site .dream-header,.dream-site .threshold-notes{transition:opacity .5s,transform .7s}.dream-site[data-journey=entering] .threshold-copy,.dream-site[data-journey=entering] .dream-header,.dream-site[data-journey=entering] .threshold-notes{opacity:0;transform:translateY(-12px);pointer-events:none}
@media(prefers-reduced-motion:reduce){.dream-site .threshold-copy,.dream-site .dream-header,.dream-site .threshold-notes{transition:none}}

@media(max-height:580px) and (min-width:700px){.threshold{height:100svh;min-height:440px;padding:105px 32px 85px}.dream-header{min-height:76px;padding:12px 32px}.threshold h1{font-size:46px}.threshold-copy{padding-bottom:0}.threshold .dream-eyebrow{margin-bottom:12px}.threshold-intro{margin:14px 0 8px;font-size:13px}.enter-link{min-height:44px}.threshold-notes{bottom:18px}}

@media(min-width:700px) and (max-aspect-ratio:9/10){.dream-poster{background-image:url('/assets/dream-gateway-mobile.webp')}.threshold{align-items:flex-end;min-height:900px;padding:120px 40px 110px}.threshold-copy{width:100%;max-width:680px;padding-bottom:0}.threshold h1{font-size:64px}.threshold::before{background:linear-gradient(0deg,#080d1b 0%,#080d1bc7 14%,transparent 45%)}.portal-hit{left:23%;right:auto;width:54%;top:12%;height:47%}}
