@font-face{font-family:Mind Sans;src:local("Helvetica Neue"),local("Arial");font-display:swap}
:root{--paper:#f4f2ed;--ink:#262826;--muted:#686b64;--line:#d8d8cf;--accent:#b8c7a3;--surface:#faf9f5}
*{box-sizing:border-box}html{background:var(--paper);color:var(--ink);font-family:"Mind Sans",Arial,sans-serif}body{margin:0}button,a,textarea{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}button:focus-visible,a:focus-visible,textarea:focus-visible{outline:2px solid var(--ink);outline-offset:6px}button{border:0}a{color:inherit;text-decoration:none}.header{height:100px;padding:0 4.2%;display:flex;align-items:center;justify-content:space-between;position:relative;z-index:2}.signature{display:flex;align-items:center;gap:15px;font-size:12px;letter-spacing:.035em}.signature svg{width:29px;height:25px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linejoin:round}.tools{display:flex;align-items:center;gap:22px}.quiet-button{width:42px;height:42px;display:grid;place-items:center;background:transparent;border:1px solid var(--line);border-radius:50%}.quiet-button svg{width:17px;fill:none;stroke:currentColor;stroke-width:1.5}.sound-button{display:flex;align-items:center;gap:12px;background:transparent;font-size:11px;min-height:44px}.equalizer{height:18px;display:flex;align-items:center;gap:3px}.equalizer i{display:block;width:1px;height:4px;background:currentColor}.equalizer i:nth-child(2),.equalizer i:nth-child(4){height:10px}.equalizer i:nth-child(3){height:16px}.sound-button[aria-pressed=true] .equalizer i{animation:equalize 1.1s ease-in-out infinite alternate}.equalizer i:nth-child(2){animation-delay:-.3s!important}.equalizer i:nth-child(3){animation-delay:-.7s!important}.equalizer i:nth-child(4){animation-delay:-.5s!important}
.hero{height:calc(100svh - 164px);min-height:620px;max-height:1100px;position:relative;display:flex;align-items:center;flex-direction:column;isolation:isolate}.heading{text-align:center;position:relative;z-index:1;padding-top:20px;pointer-events:none}.eyebrow{font-size:10px;font-weight:500;letter-spacing:.23em;margin:0 0 10px}h1{font-size:clamp(90px,10.8vw,164px);font-weight:400;letter-spacing:-.09em;line-height:1.05;margin:0;padding-right:.08em}h1 span{color:#777f6e}.artwork{position:absolute;inset:160px 0 145px;min-height:300px}canvas{display:block;position:relative;width:100%;height:100%;z-index:1}.art-fallback{width:240px;height:240px;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) rotate(-25deg);border:35px solid #bdc4bb;border-radius:45% 55% 42% 58%;box-shadow:inset 14px 8px 25px #d2aa94,18px -10px 55px #bec5d350;opacity:.75}.canvas-ready .art-fallback{display:none}.art-note{position:absolute;top:54%;font-size:9px;letter-spacing:.18em;color:var(--muted);z-index:2}.note-left{left:7%}.note-right{right:7%}.art-note::before{content:"";display:inline-block;vertical-align:middle;width:20px;height:1px;background:#a9ada1;margin-right:14px}.invitation{position:absolute;bottom:5px;text-align:center;z-index:2}.invitation>p{font-size:17px;font-weight:400;letter-spacing:-.025em;margin:0 0 23px}.primary-button{background:var(--ink);color:var(--paper);border:1px solid var(--ink);border-radius:40px;min-height:54px;padding:0 25px;display:inline-flex;align-items:center;justify-content:center;gap:30px;font-size:13px;transition:background .2s,transform .2s,box-shadow .2s}.primary-button:hover{background:#41463d;transform:translateY(-2px);box-shadow:0 7px 18px #26282615}.primary-button svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.4}.availability{display:block;color:var(--muted);font-size:10px;letter-spacing:.06em;margin-top:14px}footer{height:64px;margin:0 4.2%;display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:10px;letter-spacing:.015em}.footer-mark{font-size:9px;letter-spacing:.15em}.footer-mark>span{margin:0 13px;font-size:14px}
dialog{border:1px solid var(--line);border-radius:20px;padding:50px;max-width:520px;width:calc(100% - 32px);background:var(--surface);color:var(--ink);box-shadow:0 35px 130px #20251a24}dialog::backdrop{background:#f4f2ed80;backdrop-filter:blur(14px)}dialog h2{font-size:35px;font-weight:400;line-height:1.1;letter-spacing:-.055em;margin:24px 0 20px}dialog p{font-size:14px;color:var(--muted);line-height:1.6}dialog .eyebrow{font-size:10px}.close-button{position:absolute;right:15px;top:12px;width:44px;height:44px;background:transparent;font-size:26px;font-weight:300}.copy-status{font-size:11px!important;min-height:34px;margin-bottom:0}textarea{font:12px/1.7 Consolas,monospace;border:1px solid var(--line);background:var(--paper);color:var(--ink);padding:16px;resize:none;width:100%;height:93px;margin:8px 0 22px;border-radius:8px;overflow-wrap:anywhere}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.noscript{max-width:650px;margin:20px auto;padding:20px;overflow-wrap:anywhere;font-size:14px}@keyframes equalize{to{transform:scaleY(.4)}}
@media(min-height:950px) and (min-width:701px){.heading{padding-top:4vh}.artwork{inset:190px 0 155px}.invitation{bottom:25px}}
@media(max-width:1000px){.note-left{left:4%}.note-right{right:4%}.art-note{font-size:8px;letter-spacing:.09em}.art-note::before{width:12px;margin-right:7px}}
@media(max-width:700px){.header{height:78px;padding:0 6%}.signature{font-size:10px;gap:9px}.signature svg{width:23px}.tools{gap:10px}.sound-button{font-size:10px;gap:8px}.quiet-button{width:36px;height:36px}.hero{height:calc(100svh - 137px);min-height:590px}.heading{padding-top:21px}h1{font-size:106px}.eyebrow{font-size:8px;letter-spacing:.2em}.artwork{inset:125px 0 130px}.art-note{display:none}.invitation>p{font-size:15px;margin-bottom:20px}.primary-button{min-height:52px}.invitation{bottom:8px}footer{height:59px;margin:0 6%;font-size:9px}.footer-mark{display:none}dialog{padding:38px 25px}dialog h2{font-size:30px}}
@media(max-width:360px){.signature span{max-width:65px;line-height:1.4}.sound-button{font-size:9px}.tools{gap:7px}.hero{min-height:550px}h1{font-size:94px}.artwork{inset:115px 0 125px}.invitation>p{font-size:14px}footer{font-size:8px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}


/* One continuous scene. The document owns scroll; wheel and touch stay native. */
html{background:var(--paper);scrollbar-color:var(--muted) var(--paper)}
body{background:var(--paper)}
.scroll-experience{height:280svh;min-height:2100px}
.experience-frame{position:sticky;top:0;height:100svh;min-height:720px;background:var(--paper);overflow:hidden}
.header,footer,.heading,.art-note,.invitation{color:var(--ink)}
h1 span{color:var(--muted)}
.invitation>p{color:var(--ink)}
.availability,footer,.art-note{color:var(--muted)}
.primary-button{background:var(--ink);border-color:var(--ink);color:var(--paper)}
.primary-button:hover{background:var(--ink);box-shadow:0 5px 24px var(--line)}
.art-note::before{background:var(--muted)}
.scroll-cue{display:flex;align-items:center;gap:9px;letter-spacing:.04em}
.scroll-cue svg{width:12px;height:18px;stroke:currentColor;fill:none;stroke-width:1}
.journey-progress{position:absolute;right:30px;top:50%;transform:translateY(-50%);display:flex;align-items:center;flex-direction:column;gap:16px;color:var(--muted);font-size:9px;font-variant-numeric:tabular-nums;letter-spacing:.1em}
.journey-track{display:block;height:90px;width:1px;background:var(--line);position:relative}
.journey-track i{display:block;position:absolute;width:1px;height:100%;background:var(--ink);transform-origin:top;transform:scaleY(var(--journey,0))}
.artwork{touch-action:pan-y}
@media(max-width:1000px){.journey-progress{right:15px}.art-note{max-width:110px;line-height:1.7}.note-left{left:4%}.note-right{right:4%}}
@media(max-width:700px){.scroll-experience{height:280svh;min-height:1850px}.experience-frame{min-height:650px}.hero{height:calc(100svh - 137px);min-height:513px}.journey-progress{right:17px;font-size:8px;gap:11px}.journey-track{height:60px}.scroll-cue{position:absolute;left:50%;transform:translateX(-50%);font-size:8px;white-space:nowrap}.scroll-cue svg{width:10px}footer>span:first-child{visibility:hidden}.artwork{inset:120px 0 135px;min-height:230px}footer>span:last-child{font-size:8px}}
@media(max-width:360px){.experience-frame{min-height:630px}.hero{min-height:493px}.artwork{inset:110px 0 132px}.journey-progress{right:11px}footer>span:last-child{display:none}.scroll-cue{font-size:9px}}
@media(max-height:720px) and (min-width:701px){.experience-frame{min-height:650px}.header{height:70px}.hero{height:calc(100svh - 120px);min-height:530px}.heading{padding-top:0}h1{font-size:100px}.artwork{inset:105px 0 130px;min-height:230px}footer{height:50px}.invitation>p{font-size:15px;margin-bottom:15px}.primary-button{min-height:46px}}
@media(scripting:none){.scroll-experience{height:auto;min-height:0}.experience-frame{position:relative;height:auto;overflow:visible}}
@media(max-height:649px) and (max-width:700px){.experience-frame{min-height:100svh}.header{height:65px}.hero{height:calc(100svh - 125px);min-height:0}.heading{padding-top:6px}h1{font-size:88px}.artwork{inset:100px 0 128px;min-height:180px}.invitation{bottom:6px}.invitation>p{font-size:14px;margin-bottom:15px}.primary-button{min-height:46px}footer{height:60px}}
