/* Lotus future: soft spectrum light, ink-like lines and layered floating surfaces. */
:root{--future-spectrum:linear-gradient(115deg,#d9b6ff,#b8b3ff,#b2dcff,#b8e7d1,#fff3b1,#ffd0ad,#ffc0d3);--future-shadow:0 2px 0 #fff9 inset,0 -1px 0 #9977bb20 inset,0 14px 35px #51326312,0 35px 70px #46335c0b}
body::before{content:'';position:fixed;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(#926aac09 1px,transparent 1px),linear-gradient(90deg,#926aac09 1px,transparent 1px);background-size:88px 88px}
.site-backdrop::after{background:radial-gradient(ellipse at 18% 20%,#eee2ff44,transparent 52%),radial-gradient(ellipse at 88% 72%,#b2dcff25,transparent 46%),linear-gradient(90deg,rgb(var(--scene-paper)/.94),rgb(var(--scene-paper)/.7) 42%,rgb(var(--scene-paper)/.24))}
.header,.menu-ready .header{background:#fbf5ffe6;border-bottom:1px solid #af87ce3d;box-shadow:0 12px 36px #62427c13,inset 0 -1px 0 #fff9}
.header::before{background:var(--future-spectrum);height:3px;box-shadow:0 0 14px #baa0ff80}
.wordmark{filter:drop-shadow(0 2px 0 #fff9)}.wordmark span{letter-spacing:.2em;font-size:.625rem}
.navigation>nav a{transition:background .25s,box-shadow .25s}.navigation>nav a:hover,.navigation>nav a:focus-visible{background:#fff9;box-shadow:0 0 0 1px #ba98ce55,0 7px 18px #baa4d222}
.languages a[aria-current=page]{box-shadow:0 0 0 1px #a17abd30,0 5px 16px #73518b12;background:#fff9}
.hero{isolation:isolate}.hero::before{display:block;content:'';inset:8% 3% 5%;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 12% 55%,#fff7ed8c,transparent 56%),radial-gradient(ellipse at 78% 42%,#e3ceff66,transparent 45%)}
.hero h1 em{filter:drop-shadow(0 3px 0 #fff7);background-image:linear-gradient(110deg,#79448e,#60529d,#386f9a,#44795b,#9b792d,#a56645,#a94a71)}
.hero .eyebrow,.heading-label{letter-spacing:.15em}.hero .identity{padding-left:15px;border-left:2px solid #ad8abe88}
.hero-portrait{isolation:isolate;filter:drop-shadow(0 22px 35px #5c3d6e30);padding:9px;border:1px solid #fff9;background:linear-gradient(140deg,#f9e9ff88,#e1f8ff44,#fff1de66);border-radius:46% 46% 36% 36%;box-shadow:0 0 0 1px #9c77bd25,0 2px 0 #fff9 inset}
.hero-portrait img{border-radius:45% 45% 36% 36%;box-shadow:0 0 0 1px #fff7;position:relative;z-index:1}
.lotus-orbit{position:absolute;inset:-7%;width:114%;height:114%;z-index:-1;pointer-events:none;opacity:.72;filter:drop-shadow(0 0 10px #d9b6ff66)}
.hero-portrait::after{display:block;content:'';position:absolute;inset:5% -5% -3% 5%;border:1px solid #bfa0d966;border-radius:46% 46% 36% 36%;z-index:-1;pointer-events:none}
.button,.player-controls .player-toggle{background:var(--future-spectrum);border:1px solid #fff9;color:#49335b;box-shadow:0 2px 0 #fff9 inset,0 6px 0 #ab83b52a,0 14px 24px #9572ba28;font-weight:600;transition:transform .25s,box-shadow .25s}
.button:hover,.player-controls .player-toggle:hover{background:var(--future-spectrum);color:#40264f;box-shadow:0 2px 0 #fff9 inset,0 4px 0 #ab83b52a,0 12px 28px #a37ab83b}
.context-mark,.talent-icon{background:linear-gradient(145deg,#fff9,#e9d9f6aa);border:1px solid #fff9;box-shadow:0 2px 0 #fff8 inset,0 5px 15px #78518f17}
.strip{background:linear-gradient(100deg,#eee4ffbb,#fff9f2ad,#e9f7ffbb);border-top:1px solid #fff8;border-bottom:1px solid #b694ce33;backdrop-filter:blur(18px)}
.disciplines a{border-radius:15px;transition:background .25s,box-shadow .25s}.disciplines a:hover{background:#fff9;box-shadow:0 4px 14px #73518b14}
.artist-player,.music-primary,.music-mini,.practice-row,.legacy-card,.social-links a,.story-text,.more-listening a,:is(.section-head,.listening-intro)>p,.process>div,.closing-inner>div{background:linear-gradient(125deg,#fffafdde,rgb(var(--scene-card)/.91));border:1px solid #fff9;box-shadow:var(--future-shadow);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.artist-player{position:relative;overflow:hidden;border-radius:32px;box-shadow:0 1px 0 #fff inset,0 0 0 1px #bba0ce44,0 20px 50px #6c4e8620}
.artist-player::before{content:'';position:absolute;inset:0 0 auto;height:3px;background:var(--future-spectrum);pointer-events:none}
.player-main{position:relative}.artist-player .eyebrow{color:#79518d}.artist-player h3{font-size:2.65rem}.player-current{color:#654676}
.player-playlist button{background:linear-gradient(120deg,#fff9,#e8e0fa44);border-color:#c6b2d359;box-shadow:0 1px 0 #fff9 inset;transition:background .25s,box-shadow .25s,transform .25s}
.player-playlist button[aria-current=true]{background:linear-gradient(110deg,#ead9ffa8,#e5f3ffa8,#fff2e1a8);border-color:#b690ce;box-shadow:0 0 0 1px #fff8 inset,0 8px 18px #9b7fb622}
.track-number{font-family:monospace;color:#846298}.track-indicator{color:#8656a6}.artist-player[data-state=playing] .track-indicator{animation:signal-breathe 1.8s ease-in-out infinite}
.player-controls button{box-shadow:0 1px 0 #fff9 inset,0 4px 12px #73518b12}.player-embed{border-radius:18px;box-shadow:0 0 0 1px #ab8fc43b,0 7px 18px #62407c0d;overflow:hidden}
.section-title{color:#483151;text-shadow:0 2px 0 #fff7}.practice-row:not(.practice-writer){grid-template-columns:42px minmax(0,1fr) minmax(0,1.5fr)}
.practice-writer .writing-portrait img{box-shadow:0 0 0 1px #fff9,0 0 0 5px #cbb6dd24,0 9px 18px #6d4b8a21}.practice-writer .writer-copy{position:relative}
.story-portrait img,.process img{box-shadow:0 0 0 1px #fff9,0 18px 35px #65417920}.story-text{border-radius:32px}.legacy-present{background:linear-gradient(130deg,#ede1ffeb,#e1efffe8,#fff2e9e8)}
.social-links{min-width:0}.social-links a{min-width:0;overflow-wrap:anywhere}.social-links a .icon{flex-shrink:0}
.background-controls{background:#fbf5ffe8;border:1px solid #fff9;box-shadow:0 0 0 1px #a984c237,0 8px 25px #5e3f781b}.back-to-top{border:1px solid #e1ceef;background:#fbf5ffe8;box-shadow:0 0 0 4px #fff4,0 8px 25px #5e3f781b}
footer{border-top:1px solid #b398cc44;background:linear-gradient(115deg,#eee3f5d9,#fff3e9d9,#e5edf9d9)}.context-links summary{background:#fff7}
.reveal-arrived{animation-fill-mode:backwards}
@keyframes signal-breathe{0%,100%{transform:scale(.94);opacity:.7}50%{transform:scale(1.09);opacity:1}}
@media(min-width:651px){.social-links{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.music-primary:hover,.music-mini:hover,.practice-row:hover,.legacy-card:hover,.social-links a:hover{transform:perspective(1200px) rotateX(1deg) rotateY(-1deg) translateY(-4px);box-shadow:0 2px 0 #fff9 inset,0 20px 45px #73518b24;border-color:#d0b7e3}.player-playlist button:hover{transform:translateX(2px);box-shadow:0 8px 18px #9b7fb622}.button:hover,.player-controls .player-toggle:hover{transform:translateY(-2px)}}
@media(max-width:1000px){.hero-inner{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr)}.social-links a{padding:22px;font-size:1.45rem}}
@media(max-width:850px){.artist-player h3{font-size:2.25rem}.artist-player{border-radius:26px}}
@media(max-width:650px){.hero-inner{display:flex}.site-backdrop::after{background:linear-gradient(110deg,rgb(var(--scene-paper)/.9),rgb(var(--scene-paper)/.7))}.practice-row:not(.practice-writer){grid-template-columns:34px minmax(0,1fr)}.social-links{grid-template-columns:1fr}.social-links a{font-size:1.5rem}.hero-portrait{padding:7px}.lotus-orbit{inset:-4%;width:108%;height:108%}.hero-portrait::after{inset:4% -3% -2% 4%}.artist-player{padding:23px}.artist-player h3{font-size:2rem}.writer-copy h3{align-self:center}.background-controls{max-width:calc(100vw - 80px)}.hero .identity{font-size:.8125rem}}
@media(max-width:380px){.artist-player{padding:18px}.artist-player h3{font-size:1.85rem}.social-links a{font-size:1.35rem}}
@media(prefers-reduced-motion:reduce){.artist-player[data-state=playing] .track-indicator{animation:none}.music-primary,.music-mini,.practice-row,.legacy-card,.social-links a,.player-playlist button,.button{transform:none!important}}
@media(forced-colors:active){body::before,.lotus-orbit,.hero-portrait::after,.hero::before{display:none}.artist-player,.music-primary,.music-mini,.practice-row,.legacy-card,.social-links a,.story-text,.more-listening a{background:Canvas;border:1px solid CanvasText;box-shadow:none}.button,.player-controls .player-toggle{background:ButtonFace;color:ButtonText;border-color:ButtonText}.hero h1 em{-webkit-text-fill-color:CanvasText;filter:none}.player-playlist button[aria-current=true]{outline:2px solid Highlight}}

.player-current-row{display:flex;align-items:baseline;justify-content:space-between;gap:16px}.player-time{font: .8125rem/1.4 monospace;color:#846298;white-space:nowrap}

.orbit-caption{position:absolute;right:-18px;bottom:12%;z-index:2;display:flex;flex-direction:column;align-items:center;gap:12px;padding:20px 12px;border:1px solid #fff9;border-radius:22px;background:linear-gradient(160deg,#f5e5ffe8,#edf8ffe8,#fff0e5e8);box-shadow:0 0 0 1px #b696cb30,0 10px 24px #6f4b8c20;backdrop-filter:blur(14px)}.orbit-caption>span{font:2rem/1.3 'Kaisei Opti',serif;writing-mode:vertical-rl;letter-spacing:.15em;color:#73508a}.orbit-caption small{font: .5rem/1.4 Arial,sans-serif;letter-spacing:.12em;writing-mode:vertical-rl;color:#7d6190}
.rhythm span{transform-origin:center;animation:lotus-wave 1.8s ease-in-out infinite}.rhythm span:nth-child(2n){animation-delay:-.65s}.rhythm span:nth-child(3n){animation-delay:-1.15s}.lotus-orbit{animation:orbit-breathe 10s ease-in-out infinite}
@keyframes lotus-wave{0%,100%{transform:scaleY(.65);opacity:.7}50%{transform:scaleY(1.1);opacity:1}}@keyframes orbit-breathe{0%,100%{opacity:.45}50%{opacity:.8}}
@media(max-width:650px){.orbit-caption{right:-12px;padding:14px 8px;border-radius:18px}.orbit-caption>span{font-size:1.5rem}}
@media(prefers-reduced-motion:reduce){.rhythm span,.lotus-orbit{animation:none}}@media(forced-colors:active){.orbit-caption{display:none}}

/* Editorial body rhythm: expressive type with quiet emphasis and readable measure. */
:is(.hero-copy,.section-head,.listening-intro,.music-primary,.music-mini,.practice-row,.story-text,.legacy-card,.process,.closing-inner)>p,.writer-copy p{font-family:var(--serif);font-size:clamp(1.3rem,1.05rem + .35vw,1.5rem);font-weight:500;line-height:1.58;letter-spacing:.006em;text-wrap:pretty;max-width:48ch;color:#493650}
:is(.hero-copy,.section-head,.listening-intro,.music-primary,.music-mini,.practice-row,.story-text,.legacy-card,.process,.closing-inner)>p strong,.writer-copy p strong{font-weight:600;color:#5f3e72}
:is(.music-primary,.music-mini,.practice-row,.story-text,.legacy-card,.process,.closing-inner) p em{font-style:italic;color:#744b85}
.story-text p+p{margin-top:1.1em}.music-primary p,.legacy-card p{margin-bottom:1.2em}
.practice-writer .writer-copy p{font-size:clamp(1.3rem,1.05rem + .35vw,1.5rem);line-height:1.58;max-width:48ch}
.hero-copy p.identity{font-family:Arial,sans-serif;font-size:.8125rem;line-height:1.8;letter-spacing:.015em}
html[lang=ja] :is(.hero-copy,.section-head,.listening-intro,.music-primary,.music-mini,.practice-row,.story-text,.legacy-card,.process,.closing-inner)>p,html[lang=ja] .writer-copy p{font-family:'Kaisei Opti','Hiragino Mincho ProN','Yu Mincho',serif;font-size:1.0625rem;font-weight:400;line-height:1.95;letter-spacing:.025em;line-break:strict;max-width:36em}
html[lang=ja] .hero-copy p.identity{font-family:Arial,sans-serif;font-size:.8125rem;line-height:1.8}
@media(max-width:650px){:is(.hero-copy,.section-head,.listening-intro,.music-primary,.music-mini,.practice-row,.story-text,.legacy-card,.process,.closing-inner)>p,.practice-writer .writer-copy p{font-size:1.3rem;line-height:1.55}html[lang=ja] :is(.hero-copy,.section-head,.listening-intro,.music-primary,.music-mini,.practice-row,.story-text,.legacy-card,.process,.closing-inner)>p,html[lang=ja] .practice-writer .writer-copy p{font-size:1rem;line-height:1.9}.hero-copy p.identity{font-size:.8125rem}}
@media(forced-colors:active){:is(.hero-copy,.section-head,.listening-intro,.music-primary,.music-mini,.practice-row,.story-text,.legacy-card,.process,.closing-inner)>p,.writer-copy p,:is(.hero-copy,.section-head,.listening-intro,.music-primary,.music-mini,.practice-row,.story-text,.legacy-card,.process,.closing-inner)>p strong,.writer-copy p strong{color:CanvasText}}

.artist-social-nav{display:flex;flex-wrap:wrap;gap:8px 12px;margin:24px 0 12px;font:500 .8125rem/1.5 Arial,sans-serif}.artist-social-nav a{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:9px 15px;border:1px solid #b49bc466;border-radius:999px;background:#fff9;color:#654277;box-shadow:0 3px 10px #6d4b8a0c}.artist-social-nav a:hover{background:#f3e7ff;color:#432853}.artist-social-nav a span{font-size:1rem}footer .artist-social-nav{margin:20px 0}@media(forced-colors:active){.artist-social-nav a{color:LinkText;border-color:LinkText;background:Canvas}}

@media(min-width:651px){.social-links{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Persistent controls share the existing audio instance while visitors browse. */
.music-dock[hidden]{display:none}.music-dock{position:fixed;z-index:70;inset:auto max(16px,env(safe-area-inset-right)) max(16px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));width:min(680px,calc(100% - 32px));margin-inline:auto;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 18px;border:1px solid #bea1d6;border-radius:24px;background:linear-gradient(110deg,#fcf6fffa,#fff8f0fa);box-shadow:0 2px 0 #fff inset,0 12px 50px #3d254d30;backdrop-filter:blur(20px)}
.music-dock::before{content:'';position:absolute;inset:0 22px auto;height:2px;background:var(--future-spectrum)}.dock-track{display:flex;align-items:center;gap:12px;min-width:0;min-height:44px;color:#493650}.dock-track>span:last-child{min-width:0}.dock-track small{display:block;font:500 .625rem/1.5 Arial,sans-serif;letter-spacing:.09em;text-transform:uppercase;color:#765985}.dock-track strong{display:block;font:600 1.125rem/1.35 var(--serif);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dock-lotus{font-size:2rem;line-height:1;color:#8656a6}.dock-controls{display:flex;gap:7px;flex-shrink:0}.dock-controls button{border:1px solid #b69ac7;background:#fff9;color:#54346b;border-radius:50%;min-width:44px;min-height:44px;font:600 .8125rem Arial,sans-serif;cursor:pointer}.dock-controls [data-dock-toggle]{border-radius:999px;min-width:70px;background:var(--future-spectrum)}.dock-controls button:focus-visible{outline:3px solid #795196;outline-offset:3px}.dock-controls button:disabled{opacity:.6;cursor:wait}.has-music-dock{padding-bottom:110px}.has-music-dock .background-controls,.has-music-dock .back-to-top{bottom:calc(106px + env(safe-area-inset-bottom))}
@media(max-width:480px){.music-dock{padding:10px 12px;gap:8px;border-radius:20px}.dock-track{gap:7px}.dock-lotus{display:none}.dock-track strong{font-size:1rem}.dock-controls{gap:4px}.dock-controls [data-dock-toggle]{min-width:58px}.dock-controls button{min-width:44px}.dock-track small{font-size:.5625rem}}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.hero-portrait .lotus-orbit{animation:lotus-float 16s ease-in-out infinite}.hero-portrait:hover .lotus-orbit{filter:drop-shadow(0 0 12px #bd8ce699)}}
@keyframes lotus-float{0%,100%{transform:translateY(0) rotate(-3deg)}50%{transform:translateY(-8px) rotate(3deg)}}
@media(forced-colors:active){.music-dock,.dock-controls button{background:Canvas;color:CanvasText;border-color:CanvasText}.dock-track,.dock-track small{color:CanvasText}}
