h1,h2,h3,h4,p{margin:0}img{max-width:100%}




:root,.dark{--background:#121019;--foreground:#fbf9ff;--primary:#73f5de;--primary-foreground:#121019;--accent:#bb91ff;--border:#514657;--ring:#73f5de;--card:#201a2a;--card-foreground:#fbf9ff;--radius:0}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--background);color:var(--foreground);font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}a:focus-visible{outline:3px solid #73f5de;outline-offset:6px}::selection{background:#73f5de;color:#121019}.skip{position:fixed;left:20px;top:-100px;background:#73f5de;color:#121019;padding:12px;z-index:99}.skip:focus{top:20px}.topbar{position:sticky;top:0;z-index:10;background:#121019f5;backdrop-filter:blur(16px);display:flex;align-items:center;justify-content:space-between;gap:28px;padding:18px 4.5%;border-bottom:1px solid #ffffff25}.wordmark{font-size:27px;font-weight:950;letter-spacing:-2px}.wordmark span{color:#73f5de;margin-left:6px}.topbar nav{display:flex;gap:32px;font-size:14px}.topbar nav a:hover{color:#73f5de}.edition{font-size:12px;letter-spacing:2px;color:#bdb4c9}.cover{max-width:1600px;padding:36px 4.5% 0;margin:auto}.cover-meta{display:flex;justify-content:space-between;font-size:13px;letter-spacing:2px;color:#73f5de}.cover h1{font-size:clamp(110px,26.5vw,420px);letter-spacing:-.085em;line-height:.91;font-weight:950;margin:16px 0 26px;position:relative;width:90%;transform:scaleX(1.06);transform-origin:left}.title-star{font-size:.22em;color:#bb91ff;letter-spacing:0;position:absolute;top:12%;right:-7%;animation:turn 32s linear infinite}.cover-photo{position:relative}.cover-photo img{width:100%;height:clamp(240px,37vw,560px);object-fit:cover;display:block;object-position:center 48%}.photo-sticker{position:absolute;right:3%;bottom:-24px;color:#121019;background:#73f5de;padding:16px 27px;font:bold italic clamp(24px,4vw,52px) Georgia,serif;transform:rotate(-8deg);border:2px solid #121019}.cover-bottom{display:flex;justify-content:space-between;align-items:center;padding:29px 0 42px;gap:24px}.cover-bottom p{font-weight:700;font-size:18px;margin:0}.cover-bottom p>span{display:block;font-size:12px;font-weight:400;letter-spacing:2px;color:#bdb4c9;margin-bottom:8px}.cover-bottom a{margin-right:22%;font-size:14px;border-bottom:1px solid #73f5de;padding-bottom:8px}.cover-bottom a span{margin-left:20px;color:#73f5de}.section{padding:88px 4.5%;scroll-margin-top:0}.section-heading{position:relative}.eyebrow{font-size:12px;letter-spacing:2px;font-weight:700}.section-heading h2{font-size:clamp(56px,8vw,120px);letter-spacing:-.07em;line-height:.95;margin:23px 0 42px;font-weight:900}.accent{color:#6b36be}.aside-text{position:absolute;bottom:10px;right:0;font-size:12px;letter-spacing:2px}.cast{background:#bb91ff;color:#21112f}.cast-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}.portrait{position:relative;overflow:hidden;background:#342542}.portrait img{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;display:block;transition:transform .4s}.cast-card:hover img{transform:scale(1.025)}.cast-index{position:absolute;bottom:12px;left:12px;background:#73f5de;padding:7px 10px;font-size:12px;font-weight:700}.cast-caption{padding:20px 0 0;border-bottom:1px solid #21112f50;min-height:114px}.cast-caption h3{font-size:clamp(18px,2vw,28px);letter-spacing:-.04em;margin:0 0 7px;font-weight:800}.cast-caption p{margin:0 0 20px;font-size:16px}.team{display:grid;grid-template-columns:1fr 1fr;gap:8%;background:#191320}.team .section-heading{align-self:start;position:sticky;top:115px}.team .eyebrow{color:#73f5de}.team em{font-family:Georgia,serif;color:#73f5de;font-weight:400}.credits>h3,.musicians h3{font-size:30px;letter-spacing:-1px;margin:0 0 22px}.credit{border-top:1px solid #ffffff25;padding:20px 0}.credit p{font-size:14px;color:#c9bbd5;line-height:1.5;margin:0 0 9px;max-width:340px}.credit h4{font-size:22px;margin:0;letter-spacing:-.4px}.musicians{margin-top:35px;border-top:2px solid #73f5de;padding-top:26px}.musicians p{font-size:20px;display:flex;justify-content:space-between;gap:20px}.musicians p span{color:#73f5de;font-size:16px}.note{display:grid;grid-template-columns:1fr 1.15fr;gap:10%;background:#f5f1fa;color:#21112f}.note-intro h2{font-weight:900;font-size:clamp(56px,7vw,100px);line-height:.95;letter-spacing:-.07em;margin:30px 0}.note-intro em{font-family:Georgia,serif;color:#7539bb;font-weight:400}.note-intro>p{font-size:18px;line-height:1.8;font-weight:700}.note-intro>p span{font-size:14px;font-weight:400}.note-star{display:block;color:#7539bb;font-size:150px;line-height:1.4}.letter{max-width:690px}.letter>p{font-size:18px;line-height:1.8;margin:0 0 24px}.letter blockquote{font-size:clamp(28px,3vw,44px);line-height:1.25;letter-spacing:-.03em;border-left:4px solid #7539bb;padding-left:26px;margin:35px 0;color:#622b9f;font-weight:750}.letter .what-if{font:bold italic 70px Georgia,serif;color:#7539bb;line-height:1.2;margin-top:-10px}.letter .thanks{font-weight:700;color:#622b9f}footer{background:#73f5de;color:#121019;display:flex;gap:24px;align-items:center;justify-content:space-between;padding:40px 4.5%}.footer-logo{font-size:52px;letter-spacing:-4px;font-weight:950}.footer-logo span{font-size:32px;margin-left:10px}footer p{font-size:12px;letter-spacing:1.5px}.back-top{font-size:14px;border-bottom:1px solid;padding-bottom:6px}@keyframes turn{to{transform:rotate(360deg)}}
@media(min-width:1600px){.section{padding-left:max(4.5%,calc((100vw - 1456px)/2));padding-right:max(4.5%,calc((100vw - 1456px)/2))}}
@media(max-width:760px){.topbar{padding:15px 5%;gap:18px}.edition{display:none}.topbar nav{gap:18px;font-size:14px}.wordmark{font-size:24px}.cover{padding:25px 5% 0}.cover-meta{font-size:12px;letter-spacing:1px}.cover h1{margin:20px 0 22px;font-size:27vw}.cover-photo img{height:290px;object-position:53% center}.photo-sticker{padding:13px 18px;bottom:-19px;font-size:30px}.cover-bottom{align-items:flex-start;padding:35px 0;flex-direction:column;gap:22px}.cover-bottom p{font-size:16px}.cover-bottom a{margin:0}.section{padding:58px 5%}.section-heading h2{margin:20px 0 30px}.aside-text{display:none}.cast-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 16px}.cast-caption{min-height:108px}.cast-caption h3{font-size:20px}.team,.note{grid-template-columns:1fr;gap:25px}.team .section-heading{position:static}.team h2 br{display:none}.credits>h3{font-size:26px}.credit h4{font-size:21px}.note-intro h2 br{display:none}.note-intro h2{max-width:440px}.note-star{display:none}.letter>p{font-size:17px}.note-intro{border-bottom:1px solid #21112f35;padding-bottom:15px}.note-intro>p{margin-bottom:0}footer{flex-wrap:wrap;padding:28px 5%}footer p{order:3;width:100%;margin:0;font-size:12px}.footer-logo{font-size:44px}}
@media(max-width:380px){.topbar{flex-wrap:wrap;gap:10px}.topbar nav{width:100%;justify-content:space-between}.cover-meta{flex-wrap:wrap;gap:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}

/* A brief opening ripple; the title settles into place. */
.melt-letters{display:inline-flex;isolation:isolate}
.melt-letters>span{display:inline-block;transform-origin:50% 18%;animation:melt-in 3.4s cubic-bezier(.22,.65,.3,1) both}
.melt-letters>span:nth-child(2){animation-delay:.13s}
.melt-letters>span:nth-child(3){animation-delay:.26s}
.melt-letters>span:nth-child(4){animation-delay:.39s}
@keyframes melt-in{0%{transform:translateY(-.025em) scaleY(.94) skewX(-2deg);color:#73f5de;text-shadow:0 .015em #bb91ff}45%{transform:translateY(.018em) scaleY(1.08) skewX(1deg);text-shadow:0 .025em #bb91ff}100%{transform:translateY(0) scaleY(1) skewX(0);color:#fbf9ff;text-shadow:0 0 transparent}}
.letter .signature{font-family:'Segoe Script','Bradley Hand','Apple Chancery',cursive;font-size:clamp(2.4rem,5vw,4rem);font-weight:400;line-height:1.5;color:#7539bb;transform:rotate(-5deg);transform-origin:left;margin:36px 0 10px;display:inline-block;border-bottom:2px solid #7539bb66;padding:0 20px 6px 0}
.closing{min-height:calc(100svh - 72px);padding:clamp(70px,12vw,160px) 5%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;position:relative;background:radial-gradient(ellipse at 50% 110%,#482361 0%,#191320 52%,#121019 85%);overflow:hidden}
.closing-preface{font-size:clamp(1rem,2vw,1.375rem);letter-spacing:.04em;color:#d4c5df;margin:0 0 30px}
.closing h2{font-size:clamp(5rem,18vw,18rem);line-height:1.15;letter-spacing:-.075em;font-weight:900;margin:0;color:#fbf9ff}
.closing h2 em{font-family:Georgia,serif;font-weight:400;color:#73f5de;letter-spacing:-.075em}
.closing-mark{color:#bb91ff;font-size:clamp(2.5rem,5vw,4.5rem);margin-top:45px}
@media(prefers-reduced-motion:reduce){.melt-letters>span{animation:none!important}}
