body{overflow-x:hidden}.page-wipe{position:fixed;z-index:999;inset:0;background:var(--ink);color:var(--paper);display:grid;place-items:center;transition:transform 1.05s cubic-bezier(.77,0,.18,1);transform-origin:top}.page-wipe span{font:clamp(54px,10vw,130px)/1 var(--serif);letter-spacing:.08em;opacity:0;animation:wipeWord .7s ease forwards}.page-wipe i{position:absolute;bottom:12%;left:10%;right:10%;height:1px;background:#ffffff35;overflow:hidden}.page-wipe i::after{content:"";display:block;width:100%;height:100%;background:#fff;transform:translateX(-100%);animation:loadLine .8s .1s ease forwards}body.is-ready .page-wipe{transform:translateY(-101%);pointer-events:none}.scroll-meter{position:fixed;z-index:90;top:0;left:0;width:100%;height:2px;background:#d7e5d4;transform:scaleX(0);transform-origin:left;mix-blend-mode:difference}.hero-image{will-change:transform;animation:heroDrift 14s ease-in-out infinite alternate}.hero-copy>*{opacity:0;transform:translateY(24px);animation:copyIn .9s cubic-bezier(.22,1,.36,1) forwards}.hero-copy .eyebrow{animation-delay:.75s}.hero-copy h1{animation-delay:.88s}.hero-copy>p:not(.eyebrow){animation-delay:1.02s}.hero-copy .hero-button{animation-delay:1.14s}.hero-topline,.hero-bottom,.hero-seal{opacity:0;animation:softIn 1s 1.18s ease forwards}.hero-seal{animation:sealIn 1.1s 1.28s cubic-bezier(.22,1,.36,1) forwards,sealFloat 6s 2.4s ease-in-out infinite alternate}.hero-button{position:relative;overflow:hidden;border:1px solid transparent}.hero-button::before{content:"";position:absolute;inset:0;background:var(--ink);transform:translateY(101%);transition:transform .42s cubic-bezier(.22,1,.36,1)}.hero-button span,.hero-button{isolation:isolate}.hero-button span{position:relative}.hero-button:hover{color:#fff;background:var(--paper);transform:none}.hero-button:hover::before{transform:none}.reveal{opacity:0;transform:translateY(42px);transition:opacity .85s ease,transform .85s cubic-bezier(.22,1,.36,1)}.reveal.in-view{opacity:1;transform:none}.cards .card:nth-child(2){transition-delay:.1s}.cards .card:nth-child(3){transition-delay:.2s}.card{border-radius:0;overflow:hidden;position:relative;transition:opacity .85s ease,transform .85s cubic-bezier(.22,1,.36,1),background .35s ease}.card::before{content:"";position:absolute;inset:0;border-top:2px solid currentColor;transform:scaleX(0);transform-origin:left;transition:transform .55s cubic-bezier(.22,1,.36,1);pointer-events:none}.card:hover{transform:translateY(-8px);box-shadow:none}.card:hover::before{transform:scaleX(1)}.card-actions button{position:relative;overflow:hidden;transition:padding .35s cubic-bezier(.22,1,.36,1),color .25s}.card-actions button::before{content:"";position:absolute;left:0;bottom:0;width:100%;height:1px;background:currentColor;transform:translateX(-102%);transition:transform .4s cubic-bezier(.22,1,.36,1)}.card-actions button:hover{padding-left:11px}.card-actions button:hover::before{transform:none}.card-actions button span{width:29px;height:29px;border:1px solid #50625555;border-radius:50%;display:grid;place-items:center;font-size:15px;transition:transform .35s,background .35s,color .35s}.card-actions button:hover span{transform:rotate(45deg);background:var(--ink);color:white}.card-icon{transition:transform .5s cubic-bezier(.22,1,.36,1)}.card:hover .card-icon{transform:rotate(45deg)}dialog{border-radius:0;padding:0;width:min(680px,calc(100% - 28px));background:#f4f3eb;overflow:hidden}dialog[open]{animation:dialogIn .5s cubic-bezier(.22,1,.36,1)}dialog::backdrop{background:#13271fde;backdrop-filter:blur(11px);animation:softIn .35s ease}.close{z-index:2;right:25px;top:21px;font:300 27px/1 var(--sans);width:42px;height:42px;border:1px solid #80908466;border-radius:50%;transition:transform .3s,background .3s,color .3s}.close:hover{transform:rotate(90deg);background:var(--ink);color:white}#dialog-content{padding:64px 60px 50px;min-height:500px;animation:contentIn .55s .08s both cubic-bezier(.22,1,.36,1)}dialog h2{font-size:clamp(40px,5vw,61px);max-width:520px;letter-spacing:-1.2px}dialog .activity-box{background:transparent;border-top:1px solid #9aa99c;border-bottom:1px solid #9aa99c;border-radius:0;padding:28px 0;margin:30px 0}.primary,.secondary{position:relative;min-height:52px;letter-spacing:.02em!important;border-radius:0!important;transition:color .3s,background .3s!important}.primary{background:transparent!important;color:var(--ink)!important;border:1px solid var(--ink)!important;padding:14px 66px 14px 20px!important;text-align:left}.primary::after{content:"↗";position:absolute;right:8px;top:7px;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:var(--ink);color:white;transition:transform .35s}.primary:hover{background:var(--ink)!important;color:#fff!important}.primary:hover::after{transform:rotate(45deg);background:#fff;color:var(--ink)}.primary.is-playing::after{content:"Ⅱ";font-size:12px;letter-spacing:-2px}.secondary{border:0!important;border-bottom:1px solid var(--ink)!important;padding:10px 0!important}.breath-orb{position:relative;background:transparent;border:1px solid #607867;box-shadow:0 0 0 1px #60786722,0 0 0 17px transparent}.breath-orb::before,.breath-orb::after{content:"";position:absolute;inset:13px;border:1px solid #96a996;border-radius:50%}.breath-orb::after{inset:27px}.music-bars{gap:11px}.music-bars i{width:2px;border-radius:0;background:var(--ink)}input[type=range]{appearance:none;height:1px;background:#91a092;accent-color:transparent}input[type=range]::-webkit-slider-thumb{appearance:none;width:17px;height:17px;border-radius:50%;background:var(--ink);cursor:pointer}.memory-tile{border-radius:0;background:transparent;border-color:#9eae9f;transition:transform .35s,background .35s,color .35s}.memory-tile:hover{transform:translateY(-3px)}.memory-tile.revealed{background:#e2e8dc}.memory-tile.matched{background:var(--ink)}
@keyframes wipeWord{to{opacity:1;letter-spacing:.16em}}@keyframes loadLine{to{transform:none}}@keyframes heroDrift{from{transform:scale(1.03) translate3d(-.5%,0,0)}to{transform:scale(1.09) translate3d(1.3%,-1%,0)}}@keyframes copyIn{to{opacity:1;transform:none}}@keyframes softIn{to{opacity:1}}@keyframes sealIn{from{opacity:0;transform:rotate(5deg) scale(.65)}to{opacity:1;transform:rotate(12deg) scale(1)}}@keyframes sealFloat{from{transform:rotate(10deg) translateY(0)}to{transform:rotate(14deg) translateY(-10px)}}@keyframes dialogIn{from{opacity:0;transform:translateY(35px) scale(.98)}to{opacity:1;transform:none}}@keyframes contentIn{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@media(max-width:600px){#dialog-content{padding:58px 25px 32px;min-height:0}.close{right:16px;top:14px}.page-wipe span{font-size:54px}.hero-image{animation-duration:18s}.card:hover{transform:none}.cards .card:nth-child(2),.cards .card:nth-child(3){transition-delay:0s}}
@media(prefers-reduced-motion:reduce){.page-wipe{display:none}.reveal{opacity:1;transform:none}.hero-copy>*,.hero-topline,.hero-bottom,.hero-seal{opacity:1;transform:none}}
