@import"https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,500;0,600;1,500&family=DM+Sans:wght@400;500;600&display=swap";:root{--ink: #101515;--paper: #f1ede2;--paper-dim: #d8d1c3;--sage: #87978d;--sage-dark: #3f5149;--brass: #d0a85e;--brass-bright: #efd38d;--line: rgba(231, 225, 210, .15);--serif: "Cormorant Garamond", Georgia, serif;--sans: "DM Sans", "Segoe UI", sans-serif}*{box-sizing:border-box}html,body{width:100%;min-height:100%;margin:0;background:var(--ink);color:var(--paper)}body{font-family:var(--sans);overflow-x:hidden}button,a{font:inherit}button{color:inherit}.app-shell{min-height:100vh;position:relative;overflow:hidden;background:radial-gradient(circle at 51% 42%,rgba(94,114,101,.18),transparent 33%),linear-gradient(112deg,#0c1111,#121919 49%,#0a0e0f)}.app-shell:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;opacity:.08;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.55'/%3E%3C/svg%3E");mix-blend-mode:soft-light}.topbar{height:92px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px;padding:0 clamp(24px,4vw,68px);border-bottom:1px solid var(--line);position:relative;z-index:5}.wordmark{display:flex;align-items:center;gap:10px;color:var(--paper);text-decoration:none;letter-spacing:.25em;font-size:12px;font-weight:600}.wordmark-flower{color:var(--brass);font-size:18px;letter-spacing:0}.edition{padding-left:9px;border-left:1px solid rgba(255,255,255,.25);color:var(--paper-dim);font-family:var(--serif);font-style:italic;font-size:15px;letter-spacing:.04em}.maker{color:#9ba39e;text-align:center;text-transform:uppercase;letter-spacing:.21em;font-size:9px;line-height:1.65}.sound-toggle{justify-self:end;display:flex;align-items:center;gap:10px;background:transparent;border:0;padding:12px 0;cursor:pointer;text-transform:uppercase;letter-spacing:.15em;font-size:9px}.sound-bars{display:flex;height:14px;align-items:center;gap:2px}.sound-bars i{display:block;width:2px;height:6px;background:var(--brass);animation:bars 1.1s ease-in-out infinite alternate}.sound-bars i:nth-child(2){height:13px;animation-delay:-.3s}.sound-bars i:nth-child(3){height:9px;animation-delay:-.65s}.sound-toggle[aria-pressed=true] .sound-bars i{animation:none;height:2px;background:#7f8782}@keyframes bars{to{transform:scaleY(.35);opacity:.65}}.experience{min-height:calc(100vh - 164px);display:grid;grid-template-columns:minmax(260px,1fr) minmax(480px,2.2fr) minmax(276px,.95fr);align-items:stretch;position:relative;z-index:2}.intro-panel{padding:clamp(46px,7vh,90px) 24px 42px clamp(28px,4vw,68px);position:relative;z-index:3}.eyebrow,.mini-label{margin:0;color:var(--brass);letter-spacing:.23em;font-size:9px;font-weight:600}.intro-panel h1{margin:18px 0;font:500 clamp(47px,5vw,76px)/.86 var(--serif);letter-spacing:-.035em}.intro-panel h1 em{color:#a7b3ab;font-weight:500}.lede{max-width:330px;color:#a8aaa3;font:500 16px/1.55 var(--serif)}.now-playing{margin-top:clamp(38px,6vh,72px);padding-top:18px;border-top:1px solid var(--line);max-width:330px}.track-heading{display:flex;gap:15px;align-items:center;margin-top:13px}.track-number{color:#66716b;font:italic 500 20px var(--serif)}.track-heading h2{margin:0;font:600 24px/1 var(--serif)}.track-heading p{margin:5px 0 0;color:#7e8882;font-size:10px;letter-spacing:.08em;text-transform:uppercase}.play-actions{display:flex;gap:10px;margin-top:22px;max-width:330px}.primary-action{flex:1;min-height:57px;border:1px solid rgba(208,168,94,.44);background:#bf91421a;display:flex;align-items:center;gap:13px;padding:10px 14px;cursor:pointer;transition:.25s ease}.primary-action:hover{background:#bf91422e;border-color:var(--brass);transform:translateY(-1px)}.action-icon{width:29px;height:29px;display:grid;place-items:center;border:1px solid var(--brass);border-radius:50%;color:var(--brass-bright);font-size:9px;padding-left:2px}.action-copy{text-align:left;display:flex;flex-direction:column;gap:2px}.action-copy b{font:600 14px var(--serif)}.action-copy small{color:#7d8681;font-size:8px;text-transform:uppercase;letter-spacing:.09em}.wind-assist{width:82px;border:1px solid var(--line);background:transparent;color:#aeb3af;cursor:pointer;font:500 11px var(--serif);transition:.2s}.wind-assist:hover{border-color:#788b80;color:var(--paper)}.gesture-note{display:flex;align-items:center;gap:9px;margin:16px 0 0;color:#727b76;font-size:9px;letter-spacing:.08em;text-transform:uppercase}.gesture-note span{color:var(--brass);font-size:17px}.stage-wrap{min-height:650px;position:relative;overflow:visible}#windbox-canvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;display:block;cursor:grab;touch-action:none}#windbox-canvas.cranking{cursor:grabbing}.stage-vignette{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:radial-gradient(ellipse at center,transparent 44%,rgba(12,17,17,.29) 79%,rgba(12,17,17,.6) 100%)}.drag-callout{position:absolute;right:2%;top:43%;display:flex;align-items:center;gap:8px;color:var(--brass-bright);pointer-events:none;transition:opacity .35s}.drag-callout.hidden{opacity:0}.drag-callout .callout-line{width:50px;border-top:1px solid rgba(208,168,94,.55);position:relative}.drag-callout .callout-line:before{content:"";position:absolute;left:-4px;top:-3px;width:5px;height:5px;border-radius:50%;background:var(--brass);box-shadow:0 0 9px var(--brass)}.drag-callout b,.drag-callout small{display:block}.drag-callout b{font-size:8px;letter-spacing:.2em}.drag-callout small{margin-top:4px;color:#858b86;font:italic 11px var(--serif)}.playing-badge{position:absolute;left:50%;bottom:55px;transform:translate(-50%) translateY(8px);opacity:0;color:#98a39c;letter-spacing:.18em;font-size:8px;pointer-events:none;transition:.35s ease}.playing-badge.visible{opacity:1;transform:translate(-50%) translateY(0)}.playing-badge span{display:inline-block;width:5px;height:5px;border-radius:50%;margin-right:7px;background:var(--brass);box-shadow:0 0 9px var(--brass);animation:pulse 1s infinite}@keyframes pulse{50%{opacity:.35}}.stage-caption{position:absolute;left:50%;bottom:20px;transform:translate(-50%);color:#56615b;white-space:nowrap;text-transform:uppercase;letter-spacing:.16em;font-size:7px}.library-panel{padding:clamp(46px,7vh,90px) clamp(26px,3vw,48px) 38px 10px;position:relative;z-index:3}.library-heading{display:flex;justify-content:space-between;align-items:flex-end;padding-bottom:17px;border-bottom:1px solid var(--line)}.library-heading h2{margin:7px 0 0;font:500 25px var(--serif)}.library-count{font:italic 18px var(--serif);color:#68746e}.track-list{margin-top:4px}.track-option{width:100%;display:grid;grid-template-columns:24px 1fr auto;align-items:center;gap:10px;padding:11px 4px;border:0;border-bottom:1px solid rgba(231,225,210,.08);background:transparent;color:#9da49f;text-align:left;cursor:pointer;transition:.2s ease}.track-option:hover{color:var(--paper);padding-left:9px}.track-option.active{color:var(--paper)}.track-option .num{color:#58615d;font:italic 12px var(--serif)}.track-option .name{font:600 14px var(--serif)}.track-option .duration{font-size:8px;letter-spacing:.1em;color:#69736e}.track-option.active .num,.track-option.active .duration{color:var(--brass)}.track-option.active:after{content:"";position:absolute}.spring-dock{height:72px;display:grid;grid-template-columns:minmax(190px,1fr) minmax(300px,3fr) minmax(100px,1fr);align-items:center;gap:28px;padding:0 clamp(28px,4vw,68px);border-top:1px solid var(--line);position:relative;z-index:6;background:#070b0b75;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.spring-labels{display:flex;align-items:center;gap:14px}.spring-labels strong{font:italic 500 13px var(--serif);color:#8c9690}.spring-track{position:relative;height:3px;background:#28312d;overflow:visible}.spring-fill{position:absolute;inset:0 auto 0 0;width:0%;background:linear-gradient(90deg,#81602e,var(--brass-bright));transition:width .12s linear;box-shadow:0 0 13px #d0a85e4d}.spring-glow{position:absolute;top:50%;left:0%;width:9px;height:9px;border-radius:50%;transform:translate(-50%,-50%);background:var(--brass-bright);box-shadow:0 0 14px var(--brass);transition:left .12s linear}.spring-tick{position:absolute;top:-3px;width:1px;height:9px;background:#49544e}.tick-1{left:25%}.tick-2{left:50%}.tick-3{left:75%}.spring-readout{justify-self:end;display:flex;align-items:baseline;gap:7px}.spring-readout strong{font:500 25px var(--serif);color:var(--brass-bright)}.spring-readout span{color:#68726d;font-size:7px;letter-spacing:.18em}@media (max-width: 1120px){.experience{grid-template-columns:minmax(245px,.8fr) minmax(460px,1.5fr)}.library-panel{grid-column:1 / -1;padding:20px 32px 30px;border-top:1px solid var(--line)}.track-list{display:grid;grid-template-columns:repeat(5,1fr);gap:0 16px}.stage-wrap{min-height:620px}}@media (max-width: 760px){.topbar{height:72px;grid-template-columns:1fr auto;padding:0 20px}.maker{display:none}.experience{display:flex;flex-direction:column}.intro-panel{padding:42px 24px 0}.intro-panel h1{font-size:55px}.lede{font-size:15px}.now-playing{margin-top:30px}.stage-wrap{min-height:480px;order:2;margin-top:-14px}.library-panel{order:3;padding:28px 24px}.track-list{grid-template-columns:1fr 1fr}.spring-dock{position:sticky;bottom:0;height:64px;grid-template-columns:1fr 2fr auto;gap:13px;padding:0 18px}.spring-labels strong,.spring-labels .mini-label{display:none}.spring-labels:after{content:"SPRING";color:var(--brass);font-size:8px;letter-spacing:.15em}.stage-caption{display:none}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important}}
