/* Floating glass rail: utility links, independent of the musical interaction. */
.contact-rail {position:fixed;top:max(16px,env(safe-area-inset-top));left:50%;transform:translateX(-50%);z-index:40;display:flex;align-items:center;gap:4px;padding:5px 7px;border:1px solid #f3cfff70;border-radius:999px;background:linear-gradient(145deg,#f0b9ff24,#16101bdb 55%,#694b743b);box-shadow:inset 0 1px 0 #fff5,0 7px 28px #0006;backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px);white-space:nowrap;}
.contact-rail a {display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 20px;border-radius:999px;color:#f7edfc;font:500 14px/1.1 Arial,sans-serif;text-decoration:none;transition:background .18s ease,transform .25s cubic-bezier(.2,1.5,.5,1);}
.contact-rail a:hover {background:#d4a8ed29;transform:translateY(-2px);}
.contact-rail a:focus-visible {outline:2px solid #edc6ff;outline-offset:1px;background:#d4a8ed29;}
.contact-rail a:active {transform:scale(.97);}
.experience-start .contact-rail {position:absolute;}
body:has(.contact-rail) #work {padding-top:84px;}
.mobile-portfolio .contact-rail {top:max(10px,env(safe-area-inset-top));max-width:calc(100vw - 24px);gap:0;padding:4px;}
.mobile-portfolio .contact-rail a {padding:0 18px;font-size:13px;}
.mobile-portfolio body:has(.contact-rail) #work {padding-top:72px;}
.mobile-portfolio .mobile-contact {display:none;}
@media(prefers-reduced-motion:reduce){.contact-rail a {transition:none;transform:none!important;}}
.contact-rail {width:350px;max-width:calc(100vw - 32px);box-sizing:border-box;background:linear-gradient(135deg,#251c2beF,#12141deb) padding-box,linear-gradient(100deg,#ed86dfc4,#aaa0ef9c,#74dce8c4) border-box;border:1px solid transparent;}
.contact-rail a {flex:1;padding-inline:12px;position:relative;}
.contact-rail a+a:before {content:'';position:absolute;left:-2px;top:13px;height:18px;width:1px;background:#ddd0e52b;}
.experience-start .start-center {padding-top:96px;}
@media(min-width:761px){.contact-rail {top:24px;}}
