:root{--ink:#08090d;--paper:#ded7ca;--muted:#8e8a82;--line:rgba(222,215,202,.16);--gold:#c69a70;--violet:#7772b4;--serif:"Noto Serif SC",Georgia,serif;--sans:Inter,Arial,sans-serif;--mono:"DM Mono",monospace}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ink);color:var(--paper);font-family:var(--sans);overflow-x:hidden}button,a{font:inherit;color:inherit}button{cursor:pointer}.loader{position:fixed;inset:0;background:#08090d;z-index:10;display:grid;place-items:center;align-content:center;transition:opacity 1s,visibility 1s}.loader.is-hidden{opacity:0;visibility:hidden;pointer-events:none}.loader h1{font:400 clamp(28px,4vw,48px) var(--serif);margin:12px 0 26px;letter-spacing:.04em}.loader-kicker,.eyebrow,.loader-note{font:11px var(--mono);letter-spacing:.18em;color:var(--muted)}.loader-kicker{text-align:center}.loader-note{text-align:center}.loader-progress{height:1px;width:190px;background:var(--line);margin:0 auto 15px;overflow:hidden}.loader-progress span{height:100%;display:block;background:var(--gold);animation:load 2.4s ease forwards}.loader-tree{width:130px;height:145px;position:relative;margin:0 auto 22px}.loader-trunk{position:absolute;width:5px;height:120px;left:64px;bottom:0;background:linear-gradient(var(--gold),#504035);border-radius:100%}.loader-branch{position:absolute;display:block;height:3px;background:var(--gold);transform-origin:left;border-radius:5px}.branch-a{width:64px;left:64px;top:55px;transform:rotate(-38deg)}.branch-b{width:58px;left:66px;top:77px;transform:rotate(35deg)}.branch-c{width:51px;left:63px;top:34px;transform:rotate(37deg)}.branch-d{width:43px;left:64px;top:98px;transform:rotate(-43deg)}.loader-node{position:absolute;width:10px;height:10px;background:var(--gold);border-radius:50%;box-shadow:0 0 14px var(--gold);animation:blink 1.8s infinite}.node-a{top:22px;left:105px}.node-b{top:37px;left:28px;animation-delay:.4s}.node-c{top:101px;left:106px;animation-delay:.8s}@keyframes load{from{width:0}to{width:100%}}@keyframes blink{50%{opacity:.3;transform:scale(.7)}}.site-shell{max-width:1500px;margin:auto;padding:0 4.5vw}.topbar{height:88px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);position:relative;z-index:3}.brand{font:500 12px var(--mono);letter-spacing:.15em;text-decoration:none}.brand-mark{font-size:25px;vertical-align:-3px;color:var(--gold);margin-right:8px}.topbar-meta{font:10px var(--mono);letter-spacing:.14em;color:var(--muted);display:flex;align-items:center;gap:12px}.dot{width:4px;height:4px;border-radius:50%;background:var(--gold)}.sound-toggle{background:none;border:0;display:flex;align-items:center;gap:10px;color:var(--muted);font:10px var(--mono);letter-spacing:.1em}.sound-bars{display:flex;align-items:center;gap:2px;height:14px}.sound-bars i{width:2px;height:7px;background:var(--gold);display:block;animation:bars .9s ease-in-out infinite}.sound-bars i:nth-child(2){height:13px;animation-delay:.15s}.sound-bars i:nth-child(3){height:9px;animation-delay:.3s}.sound-off .sound-bars i{animation:none;height:2px}@keyframes bars{50%{transform:scaleY(.45)}}.section-view{display:none}.section-view.active{display:block}.hero{min-height:calc(100vh - 88px);position:relative;display:grid!important;grid-template-columns:1fr 1.15fr;align-items:center}.hero-copy{max-width:470px;position:relative;z-index:2}.hero h2,.content-section h2,.about-layout h2{font:400 clamp(43px,6vw,86px)/1.13 var(--serif);letter-spacing:-.05em;margin:23px 0}.hero h2 em,.about-layout h2 em{font-style:normal;color:var(--gold)}.hero-description{color:var(--muted);font:15px/2 var(--serif);max-width:330px;margin:0 0 35px}.text-link{border:0;background:none;padding:0;font:11px var(--mono);letter-spacing:.13em;color:var(--paper);text-decoration:none;border-bottom:1px solid var(--gold);padding-bottom:9px}.text-link span{color:var(--gold);font-size:17px;margin-left:10px}.tree-stage{height:min(650px,72vh);position:relative;display:grid;place-items:center}.tree-aura{position:absolute;width:380px;height:380px;border-radius:50%;background:radial-gradient(circle,rgba(118,112,180,.17),transparent 65%);filter:blur(4px)}.chord-tree{height:100%;width:100%;max-width:600px;overflow:visible;animation:float 7s ease-in-out infinite;transition:transform 1.1s cubic-bezier(.2,.8,.2,1)}@keyframes float{50%{transform:translateY(-8px)}}.tree-lines path{fill:none;stroke:url(#trunkGradient);stroke-width:7;stroke-linecap:round;opacity:.8}.tree-lines path:not(:first-child){stroke-width:3}.tree-leaves circle{fill:#19171c;stroke:var(--gold);stroke-width:1.2;filter:url(#glow);opacity:.8}.tree-labels text{font:10px var(--mono);letter-spacing:.14em;fill:var(--muted);text-anchor:middle}.tree-labels text:nth-child(2){fill:var(--gold);font-size:14px;font-family:var(--serif);letter-spacing:0}.tree-node{cursor:pointer;transition:transform .35s}.tree-node circle{fill:transparent;stroke:transparent}.tree-node:hover,.tree-node:focus{transform:scale(1.08);outline:none}.tree-node:hover circle,.tree-node:focus circle{stroke:var(--gold);stroke-dasharray:2 4}.tree-hint{position:absolute;bottom:8%;font:10px var(--mono);color:var(--muted);letter-spacing:.12em}.hero-index{position:absolute;bottom:5%;left:0;font:11px var(--mono);color:var(--muted)}.hero-index span{color:var(--gold);margin:0 7px}.content-section{min-height:calc(100vh - 88px);padding:90px 0 110px}.section-heading{display:flex;justify-content:space-between;align-items:end;border-bottom:1px solid var(--line);padding-bottom:30px}.content-section h2{font-size:clamp(44px,6vw,74px);margin:17px 0 0}.section-intro{color:var(--muted);font:15px var(--serif);max-width:250px;line-height:1.8}.music-layout{display:grid;grid-template-columns:1fr 1.3fr;gap:9vw;align-items:center;padding-top:65px}.vinyl-card{text-align:center}.vinyl{width:min(330px,70vw);aspect-ratio:1;border-radius:50%;margin:auto;background:repeating-radial-gradient(circle at center,#16161c 0 2px,#101116 3px 5px),#111;box-shadow:0 0 0 16px #0e0f14,0 0 60px rgba(198,154,112,.15);display:grid;place-items:center;animation:spin 15s linear infinite}.vinyl-label{width:92px;height:92px;border-radius:50%;display:grid;place-items:center;background:#9e7960;color:#1c1512;font:12px var(--mono);letter-spacing:.08em}.vinyl b{position:absolute;font:34px var(--serif);color:#e2be9b}.now-playing{font:10px var(--mono);color:var(--muted);letter-spacing:.15em;margin-top:40px}.pulse{display:inline-block;width:6px;height:6px;background:var(--gold);border-radius:50%;margin-right:8px;box-shadow:0 0 12px var(--gold)}@keyframes spin{to{transform:rotate(360deg)}}.track-list{border-top:1px solid var(--line)}.track{display:grid;grid-template-columns:45px 1fr auto;align-items:center;gap:18px;padding:22px 10px;border-bottom:1px solid var(--line);transition:.3s;cursor:pointer}.track:hover,.track.playing{background:rgba(222,215,202,.05);padding-left:18px}.track-no,.track-meta{font:10px var(--mono);color:var(--muted)}.track-name{font:17px var(--serif)}.track-sub{font:10px var(--mono);color:var(--muted);margin-top:6px}.photo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;padding:54px 0 35px}.photo-card{min-height:300px;position:relative;overflow:hidden;padding:22px;display:flex;flex-direction:column;justify-content:end;background:linear-gradient(145deg,#45403c,#252528 65%,#111217);transition:transform .4s}.photo-card:nth-child(2){background:linear-gradient(145deg,#2d3e42,#182025 65%,#101216);transform:translateY(35px)}.photo-card:nth-child(3){background:linear-gradient(145deg,#6a5142,#272126 65%,#101115)}.photo-card:nth-child(4){background:linear-gradient(145deg,#4d4853,#20202a 65%,#111217)}.photo-card:hover{transform:translateY(-8px)}.photo-card:nth-child(2):hover{transform:translateY(26px)}.photo-card:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 65% 25%,rgba(255,207,158,.25),transparent 30%),linear-gradient(transparent 45%,rgba(0,0,0,.8));mix-blend-mode:screen}.photo-card>*{position:relative}.photo-date{font:10px var(--mono);color:#d0b28e;letter-spacing:.12em}.photo-title{font:22px var(--serif);margin-top:10px}.photo-caption{font:12px var(--serif);color:#b0aaa1;line-height:1.7;margin-top:7px}.outline-button{background:none;border:1px solid var(--line);padding:13px 18px;color:var(--muted);font:11px var(--mono);letter-spacing:.1em}.outline-button:hover{border-color:var(--gold);color:var(--paper)}.trace-layout{display:grid;grid-template-columns:1.2fr 1fr;gap:10vw;align-items:center;padding-top:75px}.trace-map{height:460px;border:1px solid var(--line);position:relative;background:radial-gradient(circle at 20% 20%,rgba(111,106,167,.16),transparent 35%),linear-gradient(135deg,#11161c,#0a0c10)}.map-line{position:absolute;width:75%;height:50%;left:13%;top:25%;border:1px dashed rgba(198,154,112,.55);border-left:0;border-bottom:0;border-radius:0 100% 0 0;transform:rotate(-12deg)}.map-dot{position:absolute;width:9px;height:9px;border-radius:50%;background:var(--gold);box-shadow:0 0 18px var(--gold)}.dot-1{left:18%;top:65%}.dot-2{left:39%;top:29%}.dot-3{left:65%;top:54%}.dot-4{left:80%;top:21%}.map-label{position:absolute;color:var(--muted);font:10px var(--mono)}.label-1{left:8%;top:71%}.label-2{left:42%;top:20%}.label-3{left:64%;top:61%}.trace-copy h3{font:400 36px/1.4 var(--serif);margin:25px 0}.trace-copy>p:not(.eyebrow){color:var(--muted);font:15px/2 var(--serif)}.trace-stat{margin-top:60px;border-top:1px solid var(--line);padding-top:17px;display:flex;gap:18px;align-items:baseline}.trace-stat strong{font:42px var(--serif);color:var(--gold)}.trace-stat span{font:10px var(--mono);color:var(--muted)}.about-layout{display:grid;grid-template-columns:1fr 1fr;gap:10vw;align-items:center;min-height:65vh}.about-copy{max-width:410px}.about-copy p{font:17px/2 var(--serif);color:var(--muted);margin:0 0 25px}.toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%,20px);opacity:0;padding:13px 18px;background:#ece3d5;color:#181519;font:12px var(--sans);transition:.3s;z-index:8}.toast.show{opacity:1;transform:translate(-50%,0)}@media(max-width:780px){.site-shell{padding:0 22px}.topbar-meta{display:none}.hero{grid-template-columns:1fr;min-height:calc(100vh - 88px);padding-top:42px}.hero-copy{align-self:end}.hero h2{font-size:48px}.tree-stage{height:52vh;align-self:start;margin-top:-20px}.hero-index{bottom:2%;}.section-heading{display:block}.section-intro{margin-top:20px}.music-layout,.trace-layout,.about-layout{grid-template-columns:1fr;gap:55px}.vinyl{width:250px}.photo-grid{grid-template-columns:1fr 1fr;gap:10px}.photo-card{min-height:250px}.photo-card:nth-child(2){transform:none}.photo-card:nth-child(2):hover{transform:translateY(-8px)}.photo-card:nth-child(3){grid-column:span 2}.trace-map{height:330px}.about-layout{min-height:auto;padding-top:55px}.track{grid-template-columns:30px 1fr auto}.track-name{font-size:15px}}\n/* Instrument mode: the wheel is the navigation, not a decorative brand mark. */
:root{--ink:#030405;--paper:#d0d0cb;--muted:#696b6b;--line:rgba(208,208,203,.14);--gold:#a9aaa4;--violet:#343638}
body{background:#030405;color:#d0d0cb}
.topbar{border-bottom-color:rgba(208,208,203,.12)}
.brand{letter-spacing:.2em}.brand-mark{color:#d0d0cb}.eyebrow,.loader-kicker,.loader-note,.tree-hint{color:#676968}.hero-description,.section-intro,.trace-copy>p:not(.eyebrow),.about-copy p{color:#777978}
.hero h2,.content-section h2,.about-layout h2{font-family:var(--serif);font-weight:400}.hero h2 em,.about-layout h2 em{color:#d0d0cb}
.hero-copy .text-link,.text-link{border-color:#777978}.text-link span{color:#d0d0cb}
.tree-aura{background:radial-gradient(circle,rgba(177,180,177,.08),transparent 68%)}
.chord-tree{display:none}
.tree-stage{height:min(650px,72vh)}
.home-wheel{position:relative;z-index:2;width:min(600px,85vw);height:min(600px,85vw)}
.loader{background:#030405}
.loader h1{display:none}
.loader-progress{background:rgba(208,208,203,.14)}
.loader-progress span{background:#d0d0cb}
.loader-kicker span{color:#d0d0cb}
.sound-toggle{color:#777978}
.sound-bars i{background:#d0d0cb}
.wheel-mode{position:absolute;inset:6% 0 auto;text-align:center;font:10px var(--mono);letter-spacing:.25em;color:#6f7270}
.chord-wheel{width:min(430px,78vw);height:min(430px,78vw);position:relative;display:grid;place-items:center;filter:drop-shadow(0 0 25px rgba(255,255,255,.04))}
.loader .chord-wheel{width:min(390px,72vw);height:min(390px,72vw);margin-bottom:25px;animation:wheel-in .9s ease both}
.wheel-ring{position:absolute;border:1px solid rgba(208,208,203,.24);border-radius:50%;display:flex;align-items:flex-start;justify-content:center;transform-origin:center;animation:wheel-turn 18s linear infinite}
.wheel-ring span{position:absolute;display:block;color:#838582;font:11px var(--mono);text-align:center;background:#030405;padding:4px 5px}
.wheel-ring-outer{inset:0;animation-duration:34s}
.wheel-ring-outer span{top:-13px;transform-origin:50% calc((min(430px,78vw)/2) + 13px)}
.wheel-ring-outer span:nth-child(1){transform:rotate(0deg)}.wheel-ring-outer span:nth-child(2){transform:rotate(30deg)}.wheel-ring-outer span:nth-child(3){transform:rotate(60deg)}.wheel-ring-outer span:nth-child(4){transform:rotate(90deg)}.wheel-ring-outer span:nth-child(5){transform:rotate(120deg)}.wheel-ring-outer span:nth-child(6){transform:rotate(150deg)}.wheel-ring-outer span:nth-child(7){transform:rotate(180deg)}.wheel-ring-outer span:nth-child(8){transform:rotate(210deg)}.wheel-ring-outer span:nth-child(9){transform:rotate(240deg)}.wheel-ring-outer span:nth-child(10){transform:rotate(270deg)}.wheel-ring-outer span:nth-child(11){transform:rotate(300deg)}.wheel-ring-outer span:nth-child(12){transform:rotate(330deg)}
.wheel-ring-mid{inset:14%;animation-direction:reverse;animation-duration:25s}
.wheel-ring-mid span{top:-12px;transform-origin:50% calc((min(430px,78vw)/2)*.72 + 12px)}
.wheel-ring-mid span:nth-child(1){transform:rotate(0deg)}.wheel-ring-mid span:nth-child(2){transform:rotate(60deg)}.wheel-ring-mid span:nth-child(3){transform:rotate(120deg)}.wheel-ring-mid span:nth-child(4){transform:rotate(180deg)}.wheel-ring-mid span:nth-child(5){transform:rotate(240deg)}.wheel-ring-mid span:nth-child(6){transform:rotate(300deg)}
.wheel-ring-inner{inset:29%;border-color:rgba(208,208,203,.4);animation-duration:16s}
.wheel-ring-inner span{top:-11px;transform-origin:50% calc((min(430px,78vw)/2)*.42 + 11px);color:#d0d0cb}
.wheel-ring-inner span:nth-child(1){transform:rotate(0deg)}.wheel-ring-inner span:nth-child(2){transform:rotate(90deg)}.wheel-ring-inner span:nth-child(3){transform:rotate(180deg)}.wheel-ring-inner span:nth-child(4){transform:rotate(270deg)}
.wheel-core{width:29%;height:29%;border:1px solid rgba(208,208,203,.35);border-radius:50%;display:grid;place-items:center;align-content:center;gap:4px;background:#030405;z-index:2;box-shadow:0 0 0 8px #030405,0 0 0 9px rgba(208,208,203,.12)}
.wheel-core b{font:26px var(--serif);font-weight:400;color:#d0d0cb}.wheel-core small{font:8px var(--mono);letter-spacing:.14em;color:#656765}
.home-wheel .wheel-ring span{background:#030405}.home-wheel .wheel-core{width:30%;height:30%}
@keyframes wheel-turn{to{transform:rotate(360deg)}}@keyframes wheel-in{from{opacity:0;transform:scale(.7) rotate(-40deg)}to{opacity:1;transform:scale(1) rotate(0)}}
@keyframes home-wheel-outer-turn{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}
@keyframes home-wheel-mid-turn{from{transform:rotate(0deg)}to{transform:rotate(-360deg)}}
.loader.is-hidden .chord-wheel{animation:wheel-out .8s ease forwards}@keyframes wheel-out{to{opacity:0;transform:scale(1.15) rotate(55deg)}}
.photo-card{background:linear-gradient(145deg,#252728,#101112 70%,#050607);border:1px solid rgba(208,208,203,.09);border-radius:0}.photo-card:nth-child(2){background:linear-gradient(145deg,#242627,#0c0e0f 70%,#050607)}.photo-card:nth-child(3){background:linear-gradient(145deg,#303130,#111212 70%,#050607)}.photo-card:nth-child(4){background:linear-gradient(145deg,#202223,#0b0c0d 70%,#050607)}.photo-card:before{background:radial-gradient(circle at 65% 25%,rgba(220,220,210,.15),transparent 30%),linear-gradient(transparent 45%,rgba(0,0,0,.9));mix-blend-mode:screen}
.vinyl{box-shadow:0 0 0 16px #080909,0 0 70px rgba(208,208,203,.07)}.vinyl-label{background:#777978;color:#111}.outline-button{border-color:rgba(208,208,203,.22);color:#898b88}.outline-button:hover{border-color:#d0d0cb;color:#d0d0cb}
.trace-map{background:radial-gradient(circle at 20% 20%,rgba(208,208,203,.08),transparent 35%),linear-gradient(135deg,#111314,#050607);border-color:rgba(208,208,203,.16)}.map-dot{background:#d0d0cb;box-shadow:0 0 15px rgba(208,208,203,.6)}
.trace-stat strong{color:#d0d0cb}
@media(max-width:780px){.home-wheel{width:92vw;height:92vw}.loader .chord-wheel{width:82vw;height:82vw}.wheel-ring-outer span{transform-origin:50% calc((82vw/2) + 13px)}.wheel-ring-mid span{transform-origin:50% calc((82vw/2)*.72 + 12px)}.wheel-ring-inner span{transform-origin:50% calc((82vw/2)*.42 + 11px)}}\n.wheel-ring-inner{inset:26%;border-color:rgba(208,208,203,.5);box-shadow:0 0 0 1px rgba(208,208,203,.05),0 0 22px rgba(208,208,203,.05)}
.wheel-ring-inner .wheel-entry{top:-18px;min-width:0;padding:0;background:transparent;display:flex;flex-direction:column;align-items:center;gap:4px;color:#d9d5cc;cursor:pointer;transition:color .25s,transform .25s}
.home-wheel .wheel-ring-inner .wheel-entry{background:none!important;box-shadow:none}
.loader .wheel-ring-inner .wheel-entry{background:none!important;box-shadow:none}
.wheel-ring-inner .wheel-entry b{font:500 22px/1 var(--serif);letter-spacing:.01em}
.wheel-ring-inner .wheel-entry small{font:9px/1 var(--serif);font-style:italic;letter-spacing:.08em;color:#777873;white-space:nowrap}
.wheel-ring-inner .wheel-entry:hover,.wheel-ring-inner .wheel-entry:focus{color:var(--gold);outline:none}
.wheel-ring-inner .wheel-entry:hover small,.wheel-ring-inner .wheel-entry:focus small{color:#b99b82}
.loader .wheel-ring-inner .wheel-entry{top:-16px}
.loader .wheel-ring-inner .wheel-entry b{font-size:19px}
.loader .wheel-ring-inner .wheel-entry small{font-size:8px}
.wheel-ring-inner{inset:24%}
.wheel-ring-inner .wheel-entry{transform-origin:50% calc((min(430px,78vw)*.26) + 18px)}
.wheel-ring-inner .wheel-entry:nth-child(1){transform:rotate(0deg)}
.wheel-ring-inner .wheel-entry:nth-child(2){transform:rotate(90deg)}
.wheel-ring-inner .wheel-entry:nth-child(3){transform:rotate(180deg)}
.wheel-ring-inner .wheel-entry:nth-child(4){transform:rotate(270deg)}
.home-wheel .wheel-ring{animation:none}
.home-wheel .wheel-ring-inner .wheel-entry{top:-18px}
.chord-tree{animation:none}
.text-link{font-family:var(--serif)}
@media(max-width:780px){
  .wheel-ring-inner .wheel-entry{transform-origin:50% calc((82vw*.26) + 18px)}
  .home-wheel .wheel-ring-outer span{transform-origin:50% calc((94vw/2) + 13px)}
  .home-wheel .wheel-ring-mid span{transform-origin:50% calc((94vw/2)*.72 + 12px)}
  .home-wheel .wheel-ring-inner .wheel-entry{transform-origin:center}
}
.hero{grid-template-columns:minmax(340px,1fr) minmax(420px,1fr);overflow:visible;background:linear-gradient(90deg,rgba(4,5,6,.84) 0%,rgba(4,5,6,.53) 42%,rgba(4,5,6,.2) 100%),url("hero-memory.jpg") center/cover no-repeat}
.hero{width:calc(100% + 9vw);margin-left:-4.5vw;padding-left:4.5vw;padding-right:4.5vw}
.tree-stage{height:calc(100vh - 88px);min-height:560px;display:block;overflow:visible;isolation:isolate}
.tree-stage::after{content:"";position:absolute;z-index:1;top:50%;right:2%;width:min(660px,70vw);height:min(660px,70vw);transform:translateY(-50%);border-radius:50%;background:radial-gradient(circle,rgba(0,0,0,.62) 0%,rgba(0,0,0,.38) 42%,transparent 72%);pointer-events:none}
.tree-stage::before{content:"";position:fixed;inset:0;background:rgba(0,0,0,.58);opacity:0;pointer-events:none;z-index:1;transition:opacity .35s ease}
.tree-stage:hover::before,.tree-stage:focus-within::before{opacity:1}
.home-wheel{position:absolute;z-index:2;top:50%;right:-60%;width:min(700px,72vw);height:min(700px,72vw);transform:translateY(-50%);transition:right .7s cubic-bezier(.2,.8,.2,1),filter .35s ease;filter:drop-shadow(0 0 24px rgba(255,255,255,.04))}
.tree-stage:hover .home-wheel,.tree-stage:focus-within .home-wheel{right:-15%;filter:drop-shadow(0 0 44px rgba(255,255,255,.1))}
.home-wheel .wheel-ring{animation-name:wheel-turn;will-change:transform}
.home-wheel .wheel-ring-outer{animation-duration:64s}
.home-wheel .wheel-ring-mid{animation-duration:46s}
.home-wheel .wheel-ring-inner{animation-duration:32s}
.home-wheel .wheel-ring-inner{animation:none}
.home-wheel .wheel-ring-inner .wheel-entry{transform-origin:50% calc((min(700px,72vw)*.26) + 18px)}
.home-wheel .wheel-ring-inner .wheel-entry b,.home-wheel .wheel-ring-inner .wheel-entry small{transform:rotate(0deg)}
.home-wheel .wheel-ring-inner .wheel-entry:nth-child(2) b,.home-wheel .wheel-ring-inner .wheel-entry:nth-child(2) small{transform:rotate(-90deg)}
.home-wheel .wheel-ring-inner .wheel-entry:nth-child(3) b,.home-wheel .wheel-ring-inner .wheel-entry:nth-child(3) small{transform:rotate(-180deg)}
.home-wheel .wheel-ring-inner .wheel-entry:nth-child(4) b,.home-wheel .wheel-ring-inner .wheel-entry:nth-child(4) small{transform:rotate(-270deg)}
.home-wheel .wheel-ring-inner .wheel-entry{rotate:0deg}
.home-wheel .wheel-ring-inner .wheel-entry b,.home-wheel .wheel-ring-inner .wheel-entry small{display:block;writing-mode:horizontal-tb;white-space:nowrap}
.home-wheel .wheel-ring-outer span,.home-wheel .wheel-ring-mid span{background:transparent;padding:2px;color:rgba(222,215,202,.62)}
.home-wheel .wheel-ring-outer,.home-wheel .wheel-ring-mid{animation-timing-function:linear}
.home-wheel .wheel-ring-outer span,.home-wheel .wheel-ring-mid span{color:rgba(238,235,226,.82);text-shadow:0 1px 3px rgba(0,0,0,.28)}
.home-wheel .wheel-ring-inner .wheel-entry{filter:drop-shadow(0 1px 7px rgba(0,0,0,.95))}
.home-wheel .wheel-ring-inner .wheel-entry small{color:#aaa79d;text-shadow:0 1px 3px rgba(0,0,0,.28)}
.home-wheel .wheel-ring-inner .wheel-entry{padding:2px 4px;border-radius:2px;background:transparent!important;text-shadow:0 1px 3px rgba(0,0,0,.95),0 0 8px rgba(0,0,0,.85)}
.home-wheel .wheel-ring-inner .wheel-entry small{text-shadow:inherit}
.home-wheel,.home-wheel .wheel-ring,.home-wheel .wheel-ring span,.home-wheel .wheel-core,.home-wheel .wheel-entry,.home-wheel .wheel-entry b,.home-wheel .wheel-entry small,
.loader .chord-wheel,.loader .wheel-ring,.loader .wheel-ring span,.loader .wheel-core,.loader .wheel-entry,.loader .wheel-entry b,.loader .wheel-entry small{filter:none}
.home-wheel{contain:layout}
.home-wheel .wheel-ring{will-change:transform;animation-play-state:running}
.home-wheel .wheel-ring-outer{animation:wheel-turn 60s linear infinite}
.home-wheel .wheel-ring-mid{animation:wheel-turn 42s linear infinite reverse}
.home-wheel .wheel-ring-outer{animation:home-wheel-outer-turn 60s linear infinite!important}
.home-wheel .wheel-ring-mid{animation:home-wheel-mid-turn 42s linear infinite!important}
.tree-stage:hover .home-wheel .wheel-ring,.tree-stage:focus-within .home-wheel .wheel-ring{animation-play-state:running}
.home-wheel .wheel-ring-outer{animation-duration:110s}
.home-wheel .wheel-ring-mid{animation-duration:82s}
.home-wheel .wheel-ring-inner{animation:none}
.home-wheel .wheel-ring span{will-change:auto}
.tree-stage::after{background:radial-gradient(circle,rgba(0,0,0,.42) 0%,rgba(0,0,0,.18) 42%,transparent 70%)}
.home-wheel .wheel-ring-inner .wheel-entry,
.loader .wheel-ring-inner .wheel-entry{top:auto;left:auto;right:auto;bottom:auto;transform:none!important;transform-origin:center}
.home-wheel .wheel-ring-inner .wheel-entry:nth-child(1),
.loader .wheel-ring-inner .wheel-entry:nth-child(1){top:-18px;left:50%;translate:-50% 0}
.home-wheel .wheel-ring-inner .wheel-entry:nth-child(2),
.loader .wheel-ring-inner .wheel-entry:nth-child(2){top:50%;right:-18px;translate:0 -50%}
.home-wheel .wheel-ring-inner .wheel-entry:nth-child(3),
.loader .wheel-ring-inner .wheel-entry:nth-child(3){bottom:-18px;left:50%;translate:-50% 0}
.home-wheel .wheel-ring-inner .wheel-entry:nth-child(4),
.loader .wheel-ring-inner .wheel-entry:nth-child(4){top:50%;left:-18px;translate:0 -50%}

.home-wheel .wheel-ring-inner .wheel-entry:nth-child(1){top:2px}
.home-wheel .wheel-ring-inner .wheel-entry:nth-child(2){right:2px}
.home-wheel .wheel-ring-inner .wheel-entry:nth-child(3){bottom:2px}
.home-wheel .wheel-ring-inner .wheel-entry:nth-child(4){left:2px}
.home-wheel .wheel-ring-outer span{transform-origin:50% calc((min(700px,72vw)/2) + 13px)}
.home-wheel .wheel-ring-mid span{transform-origin:50% calc((min(700px,72vw)/2)*.72 + 12px)}
.home-wheel .wheel-ring-inner .wheel-entry b,
.home-wheel .wheel-ring-inner .wheel-entry small,
.loader .wheel-ring-inner .wheel-entry b,
.loader .wheel-ring-inner .wheel-entry small{transform:none!important}
.loader .wheel-ring-inner .wheel-entry:nth-child(1){transform:rotate(180deg)!important}
.loader .wheel-ring-inner .wheel-entry:nth-child(2){transform:rotate(-90deg)!important}
.loader .wheel-ring-inner .wheel-entry:nth-child(3){transform:rotate(0deg)!important}
.loader .wheel-ring-inner .wheel-entry:nth-child(4){transform:rotate(90deg)!important}
.home-wheel .wheel-core{will-change:transform}
.tree-hint{z-index:3;left:8%;bottom:12%}
.content-section{content-visibility:auto;contain-intrinsic-size:900px}
.section-view:not(.active){display:none!important}
.text-link{font-family:var(--serif)}
@media(max-width:780px){
  .hero{grid-template-columns:1fr;overflow:visible;width:calc(100% + 12vw);margin-left:-6vw;padding-left:6vw;padding-right:6vw}
  .hero{background-position:58% center}
  .tree-stage{height:58vh;min-height:390px;margin-top:-30px}
  .tree-stage::after{right:-8%;width:105vw;height:105vw}
  .home-wheel{top:50%;right:-35%;width:94vw;height:94vw}
  .tree-stage:hover .home-wheel,.tree-stage:focus-within .home-wheel{right:-5%}
  .tree-stage::before{background:rgba(0,0,0,.68)}
  .tree-hint{left:5%;bottom:5%}
}

/* Keep the rotating wheel in isolated paint layers during hover. */
.home-wheel{
  contain:layout;
  backface-visibility:hidden;
  transform:translate3d(0,-50%,0);
  transition:right .7s cubic-bezier(.2,.8,.2,1);
}
.home-wheel .wheel-ring{
  contain:layout;
  backface-visibility:hidden;
  transform:translateZ(0);
  box-shadow:0 0 10px rgba(0,0,0,.24);
}
.home-wheel .wheel-ring span{
  text-shadow:0 1px 5px rgba(0,0,0,.72);
}
.home-wheel .wheel-core{
  box-shadow:0 0 0 8px #030405,0 0 9px rgba(0,0,0,.4);
}
.home-wheel .wheel-ring-outer,
.home-wheel .wheel-ring-mid{
  animation-duration:60s;
}
.home-wheel .wheel-ring-mid{
  animation-duration:42s;
}
@media(prefers-reduced-motion:reduce){
  .home-wheel .wheel-ring{animation:none!important}
  .home-wheel{transition:none}
}

.home-wheel .wheel-core{width:20%;height:20%}
@media(max-width:780px){
  .home-wheel .wheel-core{width:16%;height:16%}
  .home-wheel .wheel-ring-inner{inset:30%}
}

.home-wheel .wheel-core{width:20%;height:20%}
@media(max-width:780px){.home-wheel .wheel-core{width:16%;height:16%}}

:root{--gold:#002fa7}
.vinyl-label{background:#174bcf;color:#f2f4ff}
.vinyl b{color:#3158c7}
.photo-date{color:#3158c7}
.wheel-ring-inner .wheel-entry:hover small,.wheel-ring-inner .wheel-entry:focus small{color:#3158c7}
.vinyl{box-shadow:0 0 0 16px #080909,0 0 70px rgba(0,47,167,.2)}
.map-line{border-color:rgba(19, 69, 194, 0.7)}
.chord-library-wheel .chord-option.selected b{text-shadow:0 0 12px rgba(16, 67, 194, 0.7)}
.loader-trunk{background:linear-gradient(var(--gold),#082a81)}
.photo-card{background:linear-gradient(145deg,#202b58,#11182d 65%,#08090d)}
.photo-card:nth-child(2){background:linear-gradient(145deg,#183b70,#0d1b32 65%,#08090d)}
.photo-card:nth-child(3){background:linear-gradient(145deg,#244f9b,#111c38 65%,#08090d)}
.photo-card:nth-child(4){background:linear-gradient(145deg,#303b6d,#141a31 65%,#08090d)}
.photo-card:before{background:radial-gradient(circle at 65% 25%,rgba(49,88,199,.28),transparent 30%),linear-gradient(transparent 45%,rgba(0,0,0,.8))}
.photo-image{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:var(--ink);opacity:.82;filter:saturate(.85) contrast(1.05)}
.photo-card:has(.photo-image){background:var(--ink)}
.photo-card:has(.photo-image):before{background:linear-gradient(transparent 18%,rgba(0,0,0,.92))}
.photo-card:has(.photo-image)>*:not(.photo-image){z-index:1;text-shadow:0 2px 8px rgba(0,0,0,.95),0 1px 2px rgba(0,0,0,1)}

.section-wheel-backdrop{
  position:fixed;
  inset:0;
  z-index:3;
  background:rgba(0,0,0,.58);
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity .35s ease,visibility .35s ease;
}
.section-wheel-backdrop.is-visible{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
}
.section-wheel{
  position:fixed;
  right:28px;
  bottom:28px;
  z-index:4;
  width:140px;
  height:140px;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:width .65s cubic-bezier(.2,.8,.2,1),height .65s cubic-bezier(.2,.8,.2,1),opacity .35s,visibility .35s;
}
.section-wheel.is-visible{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
}
.section-wheel-control{
  position:absolute;
  right:0;
  bottom:0;
  width:min(430px,78vw);
  height:min(430px,78vw);
  transform:scale(.325);
  transform-origin:bottom right;
  cursor:pointer;
  transition:transform .65s cubic-bezier(.2,.8,.2,1);
}
.section-wheel.is-expanded{
  width:min(430px,78vw);
  height:min(430px,78vw);
}
.section-wheel.is-expanded .section-wheel-control{
  transform:scale(1);
}
.section-wheel-control:focus-visible{
  outline:1px solid var(--gold);
  outline-offset:8px;
  border-radius:50%;
}
.section-wheel .wheel-ring span{
  background:transparent;
}
.section-wheel:not(.is-expanded) .wheel-ring-outer{
  display:none;
}
.section-wheel:not(.is-expanded) .wheel-ring{
  border-color:rgba(222,215,202,.48);
  border-width:1.5px;
}
.section-wheel:not(.is-expanded) .wheel-core{
  border-color:rgba(222,215,202,.58);
  box-shadow:0 0 0 8px #030405,0 0 0 10px rgba(198,154,112,.28);
}
.section-wheel .wheel-core small{
  display:block;
  font:7px var(--mono);
  letter-spacing:.08em;
  color:var(--muted);
}
@media(max-width:780px){
  .section-wheel-backdrop{background:rgba(0,0,0,.64)}
  .section-wheel{right:18px;bottom:18px;width:112px;height:112px}
  .section-wheel.is-expanded{width:78vw;height:78vw}
  .section-wheel-control{width:78vw;height:78vw}
}
@media(prefers-reduced-motion:reduce){
  .section-wheel-backdrop,.section-wheel,.section-wheel-control{transition:none}
}

.music-selection{min-width:0}.spotify-card{margin-top:28px;border:1px solid var(--line);background:rgba(222,215,202,.035);padding:18px}.spotify-card-heading{display:flex;align-items:start;justify-content:space-between;gap:20px;margin-bottom:16px}.spotify-card-heading strong,.spotify-card-heading span{display:block}.spotify-card-heading strong{font:20px var(--serif);margin-top:8px}.spotify-card-heading span{font:10px var(--mono);color:var(--muted);margin-top:6px}.spotify-card-heading a{font:10px var(--mono);color:var(--muted);text-decoration:none;white-space:nowrap}.spotify-card-heading a:hover{color:var(--paper)}.spotify-card iframe{display:block;width:100%;height:352px;border:0;border-radius:12px}.track-link{font:10px var(--mono);color:var(--muted);letter-spacing:.08em;white-space:nowrap}.track:hover .track-link,.track.playing .track-link{color:var(--gold)}
@media(max-width:780px){.music-layout{grid-template-columns:1fr;gap:48px;padding-top:42px}.vinyl{width:min(280px,72vw)}.music-selection{width:100%}.spotify-card{padding:12px}.spotify-card iframe{height:352px}.spotify-card-heading{gap:10px}.track{grid-template-columns:34px 1fr auto;gap:10px;padding:18px 6px}.track-name{font-size:16px}}

/* Keep the navigation text orbiting the actual home wheel center. */
.home-wheel{--wheel-size:min(700px,72vw)}
.home-wheel .wheel-ring-outer span{transform-origin:50% calc((var(--wheel-size)/2) + 13px)}
.home-wheel .wheel-ring-mid span{transform-origin:50% calc((var(--wheel-size)*.36) + 12px)}
.home-wheel .wheel-ring-inner{inset:24%}
@media(max-width:780px){
  .home-wheel{--wheel-size:78vw}
}

.vinyl{position:relative}
.vinyl img{position:absolute;z-index:1;display:block;width:92px;height:92px;border-radius:50%;object-fit:cover;object-position:center;opacity:.9}
.vinyl-label,.vinyl b{z-index:1}
.track-link{font:10px var(--mono);color:var(--muted);text-decoration:none;white-space:nowrap}
.track-link:hover,.track-link:focus{color:var(--paper);outline:none}
.vinyl-label{display:none}

/* Final mobile wheel placement. */
@media(max-width:780px){
  .tree-stage{height:58vh;min-height:430px}
  .home-wheel,
  .tree-stage:hover .home-wheel,
  .tree-stage:focus-within .home-wheel{
    top:54%;
    right:auto;
    left:-2%;
    width:78vw;
    height:78vw;
  }
  .home-wheel .wheel-ring-outer span{transform-origin:50% calc((78vw/2) + 13px)}
  .home-wheel .wheel-ring-mid span{transform-origin:50% calc(28.08vw + 12px)}
  .home-wheel .wheel-ring-inner .wheel-entry:nth-child(1){top:-24px}
  .home-wheel .wheel-ring-inner .wheel-entry:nth-child(2){right:-22px}
  .home-wheel .wheel-ring-inner .wheel-entry:nth-child(3){bottom:-24px}
  .home-wheel .wheel-ring-inner .wheel-entry:nth-child(4){left:-22px}
  .home-wheel .wheel-core{width:22%;height:22%}
}

@media(max-width:780px){
  .tree-stage{height:58vh;min-height:430px}
  .home-wheel,
  .tree-stage:hover .home-wheel,
  .tree-stage:focus-within .home-wheel{
    top:54%;
    right:auto;
    left:-2%;
    width:78vw;
    height:78vw;
  }
  .home-wheel .wheel-ring-outer span{transform-origin:50% calc((78vw/2) + 13px)}
  .home-wheel .wheel-ring-mid span{transform-origin:50% calc(28.08vw + 12px)}
  .home-wheel .wheel-ring-inner .wheel-entry:nth-child(1){top:-24px}
  .home-wheel .wheel-ring-inner .wheel-entry:nth-child(2){right:-22px}
  .home-wheel .wheel-ring-inner .wheel-entry:nth-child(3){bottom:-24px}
  .home-wheel .wheel-ring-inner .wheel-entry:nth-child(4){left:-22px}
}

/* Photos keep their natural aspect ratio; the image, not a fixed card, defines the height. */
.photo-grid{align-items:start}
.photo-card{
  min-height:0;
  height:auto;
  padding:0;
  display:block;
  cursor:zoom-in;
  background:var(--ink);
}
.photo-card:nth-child(2){transform:translateY(35px)}
.photo-card:hover{transform:translateY(-8px)}
.photo-card:nth-child(2):hover{transform:translateY(26px)}
.photo-card:before{z-index:1;pointer-events:none}
.photo-image{
  position:relative;
  inset:auto;
  display:block;
  width:100%;
  height:auto;
  min-height:0;
  object-fit:initial;
  opacity:.9;
}
.photo-card> .photo-date,
.photo-card> .photo-title,
.photo-card> .photo-caption{
  position:absolute;
  left:22px;
  right:22px;
  z-index:2;
}
.photo-card> .photo-caption{bottom:22px}
.photo-card> .photo-title{bottom:48px}
.photo-card> .photo-date{bottom:88px}
.photo-lightbox{
  position:fixed;
  inset:0;
  z-index:30;
  display:grid;
  place-items:center;
  padding:clamp(20px,5vw,70px);
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity .3s ease,visibility .3s ease;
}
.photo-lightbox.is-open{opacity:1;visibility:visible;pointer-events:auto}
.lightbox-backdrop{position:absolute;inset:0;background:rgba(3,4,8,.94);cursor:zoom-out}
.lightbox-content{
  position:relative;
  z-index:1;
  display:grid;
  place-items:center;
  width:100%;
  height:100%;
}
.lightbox-image{
  display:block;
  max-width:calc(100vw - 80px);
  max-height:calc(100vh - 80px);
  width:auto;
  height:auto;
  object-fit:contain;
  box-shadow:0 18px 70px rgba(0,0,0,.45);
}
.lightbox-info{
  position:fixed;
  left:clamp(20px,5vw,70px);
  bottom:clamp(20px,5vw,70px);
  max-width:min(420px,80%);
  padding:24px 28px 26px;
  background:linear-gradient(90deg,rgba(3,4,8,.92),rgba(3,4,8,.6),transparent);
  text-shadow:0 2px 8px rgba(0,0,0,.9);
}
.lightbox-info .photo-date,
.lightbox-info .photo-title,
.lightbox-info .photo-caption{display:block}
.lightbox-info .photo-title{margin-top:8px}
.lightbox-info .photo-caption{margin-top:8px}
.lightbox-close{
  position:absolute;
  top:0;
  right:0;
  z-index:2;
  border:0;
  background:none;
  color:var(--paper);
  font:36px/1 var(--serif);
  padding:4px 10px;
}
.lightbox-close:hover,.lightbox-close:focus{color:var(--gold);outline:none}
body.lightbox-open{overflow:hidden}
@media(max-width:780px){
  .photo-grid{grid-template-columns:1fr 1fr;gap:10px}
  .photo-card{aspect-ratio:3 / 4}
  .photo-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
  .photo-card> .photo-date,
  .photo-card> .photo-title,
  .photo-card> .photo-caption{left:12px;right:12px}
  .photo-card> .photo-date{bottom:70px;font-size:9px}
  .photo-card> .photo-title{bottom:45px;font-size:16px;line-height:1.35}
  .photo-card> .photo-caption{bottom:12px;font-size:10px;line-height:1.45}
  .lightbox-image{max-width:calc(100vw - 40px);max-height:calc(100vh - 40px)}
  .lightbox-info{left:20px;bottom:20px;padding:18px 20px 20px}
}

.topbar{height:68px}
.tree-stage{height:calc(100vh - 68px)}
.brand-menu{border:0;background:none;padding:0;text-align:left}
.sidebar{position:fixed;top:0;left:0;z-index:20;width:min(360px,86vw);height:100dvh;padding:28px 30px;background:#08090d;color:var(--paper);border-right:1px solid rgba(208,208,203,.18);transform:translateX(-100%);visibility:hidden;transition:transform .45s cubic-bezier(.2,.8,.2,1),visibility .45s;display:flex;flex-direction:column}
.sidebar-heading{display:flex;align-items:center;justify-content:space-between;padding-bottom:28px;border-bottom:1px solid var(--line)}
.sidebar-close{border:0;background:none;color:var(--paper);font:24px/1 var(--serif);padding:4px;cursor:pointer}
.sidebar-nav{display:flex;flex-direction:column;padding-top:24px}
.sidebar-nav a{display:grid;grid-template-columns:32px 1fr auto;align-items:baseline;gap:14px;padding:16px 0;border-bottom:1px solid rgba(208,208,203,.1);text-decoration:none;transition:color .2s,padding-left .2s}
.sidebar-nav a span{font:10px var(--mono);color:var(--muted)}
.sidebar-nav a strong{font:400 22px var(--serif)}
.sidebar-nav a small{font:10px var(--mono);color:var(--muted)}
.sidebar-nav a:hover,.sidebar-nav a:focus{color:var(--gold);padding-left:6px;outline:none}
.sidebar-backdrop{position:fixed;inset:0;z-index:19;background:rgba(0,0,0,.52);opacity:0;pointer-events:none;transition:opacity .35s ease}
body.sidebar-open .sidebar{transform:translateX(0);visibility:visible}
body.sidebar-open .sidebar-backdrop{opacity:1;pointer-events:auto}
.hero{background-position:center 58%}
@media(max-width:780px){.hero{background-position:center 58%}}

.chord-library{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(28px,6vw,96px);margin-top:48px}
.chord-fingering-panel,.chord-catalog{border-top:1px solid rgba(208,208,203,.28);padding-top:20px}
.chord-panel-heading,.chord-catalog-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}
.chord-panel-heading h3,.chord-catalog-heading h3{margin:8px 0 0;font:400 clamp(42px,5vw,68px)/.9 var(--serif);color:var(--paper)}
.chord-panel-heading>span,.chord-catalog-heading>span{font:10px var(--mono);letter-spacing:.12em;color:var(--muted);padding-top:5px;text-align:right}
.chord-diagram{width:min(390px,100%);margin:48px auto 30px}
.chord-string-status,.chord-fret-numbers{display:grid;grid-template-columns:repeat(6,1fr);padding-left:20px;padding-right:20px;text-align:center;font:14px var(--mono);color:var(--paper)}
.chord-string-status{height:22px}
.chord-board{position:relative;height:270px;margin:0 20px;border-top:4px solid var(--paper)}
.chord-frets,.chord-strings{position:absolute;inset:0;display:grid}
.chord-frets{grid-template-rows:repeat(5,1fr)}
.chord-frets i{border-bottom:1px solid rgba(208,208,203,.3)}
.chord-strings{grid-template-columns:repeat(6,1fr)}
.chord-strings i{border-left:1px solid rgba(208,208,203,.52)}
.chord-strings i:last-child{border-right:1px solid rgba(208,208,203,.52)}
.chord-markers{position:absolute;inset:0}
.chord-markers b{position:absolute;left:calc((var(--string) + .5) * 16.6667%);top:calc((var(--fret) - .5) * 20%);width:25px;height:25px;border-radius:50%;background:var(--gold);transform:translate(-50%,-50%);box-shadow:0 0 16px rgba(198,154,112,.24)}
.chord-fret-numbers{margin-top:12px;color:var(--muted);font-size:10px}
.chord-panel-footer{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-top:14px;color:var(--muted);font:10px var(--mono);letter-spacing:.08em}
.chord-catalog-heading{padding-bottom:20px;border-bottom:1px solid var(--line)}
.chord-list{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;margin-top:1px;background:rgba(208,208,203,.14)}
.chord-option{min-height:92px;border:0;background:#08090d;color:var(--paper);padding:16px 12px;text-align:left;display:flex;flex-direction:column;justify-content:space-between;gap:10px;cursor:pointer;transition:background .2s,color .2s}
.chord-option strong{font:400 25px var(--serif)}
.chord-option span{font:9px var(--mono);letter-spacing:.06em;color:var(--muted)}
.chord-option:hover,.chord-option:focus,.chord-option.selected{background:#252728;color:var(--paper);outline:none}
.chord-option.selected strong{color:var(--gold)}
@media(max-width:780px){
  .chord-library{grid-template-columns:1fr;margin-top:34px}
  .chord-panel-heading h3,.chord-catalog-heading h3{font-size:48px}
  .chord-diagram{margin-top:36px}
}

.chord-library-wheel{width:min(430px,100%);height:auto;aspect-ratio:1;margin:44px auto 12px;filter:none}
.chord-library-wheel .wheel-ring-outer{inset:0;animation:none!important;border-color:rgba(208,208,203,.34)}
.chord-library-wheel .chord-option{position:absolute;top:50%;left:50%;width:74px;min-height:0;padding:4px 3px;border:0;background:transparent;color:var(--paper);transform:translate(-50%,-50%) rotate(var(--angle)) translateY(-233px);transform-origin:center;display:flex;align-items:center;gap:3px;text-align:center}
.chord-library-wheel .chord-option b,.chord-library-wheel .chord-option small{display:block;transform:rotate(calc(var(--angle) * -1));white-space:nowrap}
.chord-library-wheel .chord-option b{font:400 18px/1 var(--serif);color:var(--paper)}
.chord-library-wheel .chord-option small{font:8px/1 var(--mono);letter-spacing:0;color:var(--muted)}
.chord-library-wheel .chord-option:hover,.chord-library-wheel .chord-option:focus,.chord-library-wheel .chord-option.selected{background:transparent;color:var(--gold);outline:none}
.chord-library-wheel .chord-option.selected b{color:var(--gold);text-shadow:0 0 12px rgba(198,154,112,.55)}
.chord-library-wheel .wheel-core{width:30%;height:30%;}
.chord-library-wheel .wheel-core b{font-size:30px}
@media(max-width:780px){
  .chord-library-wheel{width:min(390px,100%);height:auto;aspect-ratio:1;margin-top:34px}
  .chord-library-wheel .chord-option{width:66px;transform:translate(-50%,-50%) rotate(var(--angle)) translateY(-213px)}
}

.journal-layout{display:grid;grid-template-columns:minmax(280px,.9fr) minmax(0,1.1fr);gap:clamp(28px,7vw,110px);margin-top:58px;align-items:start}
.journal-feature{min-height:390px;border:1px solid rgba(208,208,203,.24);padding:34px 32px 28px;display:flex;flex-direction:column;justify-content:space-between;background:linear-gradient(145deg,rgba(208,208,203,.07),rgba(208,208,203,.015) 58%,transparent)}
.journal-feature-mark{font:90px/0.6 var(--serif);color:var(--gold);opacity:.75}
.journal-feature .eyebrow{margin:0;color:var(--muted)}
.journal-feature blockquote{font:400 clamp(28px,3.2vw,48px)/1.35 var(--serif);letter-spacing:-.03em;margin:30px 0 44px;color:var(--paper)}
.journal-feature-footer{border-top:1px solid var(--line);padding-top:17px;display:flex;justify-content:space-between;gap:20px;align-items:baseline}
.journal-feature-footer strong{font:400 21px var(--serif)}
.journal-feature-footer span{font:10px var(--mono);color:var(--muted);text-align:right}
.journal-collection{border-top:1px solid rgba(208,208,203,.28)}
.journal-toolbar{display:flex;justify-content:space-between;align-items:center;padding:18px 0;border-bottom:1px solid var(--line);gap:20px}
.journal-filters{display:flex;gap:20px}
.journal-filter{border:0;background:none;color:var(--muted);padding:0;font:10px var(--mono);letter-spacing:.12em;cursor:pointer}
.journal-filter:hover,.journal-filter:focus,.journal-filter.selected{color:var(--paper);outline:none}
.journal-filter.selected{color:var(--gold)}
.journal-count{font:10px var(--mono);color:var(--muted);letter-spacing:.12em}
.journal-toolbar-actions{display:flex;align-items:center;gap:18px}
.journal-list{border-bottom:1px solid var(--line)}
.journal-entry{width:100%;border:0;border-bottom:1px solid var(--line);background:none;color:var(--paper);display:grid;grid-template-columns:42px 1fr auto;gap:16px;align-items:center;text-align:left;padding:22px 10px;cursor:pointer;transition:background .25s,padding .25s}
.journal-entry:last-child{border-bottom:0}
.journal-entry:hover,.journal-entry:focus,.journal-entry.selected{background:rgba(208,208,203,.055);padding-left:18px;outline:none}
.journal-entry-number,.journal-entry-type{font:10px var(--mono);color:var(--muted)}
.journal-entry-copy{display:flex;flex-direction:column;gap:7px}
.journal-entry-copy strong{font:400 19px var(--serif)}
.journal-entry-copy small{font:10px var(--mono);color:var(--muted)}
.journal-entry-type{color:var(--gold)}
@media(max-width:780px){
  .journal-layout{grid-template-columns:1fr;gap:42px;margin-top:38px}
  .journal-feature{min-height:330px;padding:28px 24px 24px}
  .journal-feature blockquote{font-size:32px;margin:24px 0 38px}
  .journal-toolbar{align-items:flex-start;flex-direction:column;gap:15px}
  .journal-toolbar-actions{width:100%;justify-content:space-between}
  .journal-entry{grid-template-columns:32px 1fr auto;padding:19px 4px}
  .journal-entry:hover,.journal-entry:focus,.journal-entry.selected{padding-left:10px}
}

.hero-copy{
  position:relative;
  z-index:2;
  opacity:1;
  visibility:visible;
}
.hero{
  position:relative;
  isolation:isolate;
}
.tree-stage{
  z-index:1;
}
.loader .wheel-ring-outer{
  display:none;
}
@media (min-width:781px) and (max-width:1100px){
  .home-wheel,
  .tree-stage:hover .home-wheel,
  .tree-stage:focus-within .home-wheel{
    right:-28%;
    width:min(560px,58vw);
    height:min(560px,58vw);
  }
}
@media(max-width:780px){
  .tree-stage{
    height:58vh;
    min-height:430px;
  }
  .home-wheel,
  .tree-stage:hover .home-wheel,
  .tree-stage:focus-within .home-wheel{
    top:54%;
    right:auto;
    left:-2%;
    width:78vw;
    height:78vw;
  }
  .home-wheel .wheel-ring-outer,
  .home-wheel .wheel-ring-mid{container-type:size}
  .home-wheel .wheel-ring-outer span{transform-origin:50% calc(39vw + 13px)}
  .home-wheel .wheel-ring-mid span{transform-origin:50% calc(28.08vw + 12px)}
}
@media(prefers-reduced-motion:reduce){
  .home-wheel .wheel-ring{animation:none!important}
  .home-wheel{transition:none}
}
.home-wheel .wheel-core{width:20%;height:20%}
@media(max-width:780px){.home-wheel .wheel-core{width:16%;height:16%}}
