/* Isolated names; no page transforms, scroll locks, fonts or global control overrides. */
#bw-ava { font-family:'DM Sans',sans-serif; color:#f5f5f5; }
#bw-ava *,#bw-ava *::before,#bw-ava *::after { box-sizing:border-box; }
#bw-ava .ava-launch { position:fixed; z-index:80; right:max(24px,env(safe-area-inset-right)); bottom:calc(24px + env(safe-area-inset-bottom)); display:flex; align-items:center; gap:12px; padding:13px 22px 13px 16px; border:1px solid #555; border-radius:60px; background:#141414; color:#f5f5f5; font:inherit; text-align:left; box-shadow:0 8px 28px #0005; cursor:pointer; transition:background .2s,border-color .2s; }
#bw-ava .ava-launch:hover { background:#222; border-color:#999; }
#bw-ava svg { width:28px;height:28px;flex:none; }
#bw-ava .ava-launch-copy {display:grid;gap:2px;}
#bw-ava .ava-launch-copy strong {font-size:17px;font-weight:500;line-height:1.3;}
#bw-ava .ava-launch-copy span {font-size:12px;font-weight:400;line-height:1.4;color:#c4c4c4;}
#bw-ava #ava-panel { position:fixed; inset:auto max(24px,env(safe-area-inset-right)) calc(24px + env(safe-area-inset-bottom)) auto; margin:0; padding:0; width:390px; max-width:calc(100% - 32px); max-height:calc(100dvh - 48px - env(safe-area-inset-top) - env(safe-area-inset-bottom)); overflow:auto; overscroll-behavior:contain; color:#f5f5f5; background:#111; border:1px solid #525252; border-radius:20px; box-shadow:0 20px 70px #0008; font:inherit; transform-origin:bottom right;animation:ava-enter .45s cubic-bezier(.22,.7,.18,1); }
#bw-ava #ava-panel:not([open]) {display:none;}
#ava-panel::backdrop {background:rgb(0 0 0 / .22);}
/* Preserve the measured existing shell; content is a compact centered composition. */
#bw-ava #ava-panel {container:ava-panel / inline-size;background:#080808;}
#bw-ava .ava-content {position:relative;isolation:isolate;padding:26px;height:551.125px;display:flex;flex-direction:column;align-items:center;text-align:center;overflow:hidden;background:radial-gradient(ellipse 70% 28% at 50% 14%,#353a3b55,transparent 85%),linear-gradient(160deg,#111 0%,#080808 55%,#050505);}
#bw-ava .ava-content::before {content:"";position:absolute;z-index:-1;left:0;right:0;top:105px;height:1px;background:linear-gradient(90deg,transparent,#c0c6c92b,transparent);box-shadow:0 -8px 28px 7px #b6c2c612;}
#bw-ava .ava-logo {display:block;object-fit:contain;flex:none;}
#bw-ava .ava-launch-mark {position:relative;display:block;width:28px;height:28px;flex:none;}
#bw-ava .ava-launch .ava-logo {width:38px;height:38px;max-width:none;margin:-5px;}
#bw-ava .ava-emblem {height:64px;width:64px;flex:none;margin:0 auto 17px;filter:drop-shadow(0 0 12px #ffffff14);}
/* Original asset includes transparent padding; the visible droplet is about 60px. */
#bw-ava .ava-emblem .ava-logo {height:96px;width:96px;max-width:none;margin:-16px;}
#bw-ava .ava-close {position:absolute;right:17px;top:17px;display:grid;place-items:center;width:44px;height:44px;padding:10px;background:transparent;border:0;border-radius:3px;color:#fff;cursor:pointer;opacity:.9;transition:opacity .16s;}
#bw-ava .ava-close:hover {opacity:.6;}
#bw-ava .ava-identity {flex:none;}
#bw-ava p {font:400 15px/1.65 'DM Sans',sans-serif;color:#c4c4c4;margin:0;}
#bw-ava .ava-eyebrow {font-size:10px;letter-spacing:4px;line-height:1.5;color:#ddd;}
#bw-ava #ava-title {font:400 76px/.95 Georgia,serif;letter-spacing:-3px;margin:4px 0 14px;color:#fff;}
#bw-ava .ava-subtitle {font-size:10px;line-height:1.9;letter-spacing:3px;color:#d0d0d0;}
#bw-ava .ava-divider {width:42px;height:1px;flex:none;background:#5a5a5a;margin:23px auto;}
#bw-ava .ava-announcement {max-width:310px;}
#bw-ava #ava-message {font:400 21px/1.3 Georgia,serif;letter-spacing:0;color:#f0f0f0;margin:0 0 13px;}
#bw-ava #ava-message em {font-weight:400;white-space:nowrap;}
#bw-ava #ava-body {font-size:14px;line-height:1.75;}
#bw-ava .ava-status {display:block;flex:none;border:1px solid #777;border-radius:30px;padding:12px 28px;font-size:10px;letter-spacing:3px;line-height:1.5;margin:auto auto 0;color:#eee;}
#bw-ava .ava-contact {display:flex;align-items:center;justify-content:center;flex:none;min-height:44px;padding:10px 8px 0;color:#a9a9a9;font-size:11px;font-weight:400;text-underline-offset:3px;background:transparent;border:0;}
#bw-ava .ava-contact:hover {color:#fff;}
/* One CSS timeline per element. All content is immediately accessible. */
#ava-panel {--ava-pace:1;}
#ava-panel[open] .ava-emblem {position:relative;isolation:isolate;}
#ava-panel[open] .ava-emblem .ava-logo {animation:ava-drop-in calc(.55s * var(--ava-pace)) cubic-bezier(.22,.5,.4,1) calc(.15s * var(--ava-pace)) both;}
#ava-panel[open] .ava-emblem::before {content:"";position:absolute;z-index:-1;left:7px;right:7px;bottom:-3px;height:9px;border:1px solid #b8c5cc77;border-radius:50%;opacity:0;animation:ava-ripple calc(.5s * var(--ava-pace)) ease-out calc(.55s * var(--ava-pace)) both;}
#ava-panel[open] .ava-eyebrow {animation:ava-intro calc(.2s * var(--ava-pace)) ease-out calc(.55s * var(--ava-pace)) both;}
#ava-panel[open] #ava-title {animation:ava-intro calc(.25s * var(--ava-pace)) ease-out calc(.62s * var(--ava-pace)) both;}
#ava-panel[open] .ava-subtitle {animation:ava-intro calc(.25s * var(--ava-pace)) ease-out calc(.7s * var(--ava-pace)) both;}
#ava-panel[open] .ava-announcement {animation:ava-intro calc(.27s * var(--ava-pace)) ease-out calc(.78s * var(--ava-pace)) both;}
#ava-panel[open] .ava-status {animation:ava-intro calc(.2s * var(--ava-pace)) ease-out calc(.85s * var(--ava-pace)) both;}
@keyframes ava-light {from{opacity:0}to{opacity:1}}
@keyframes ava-intro {from{opacity:0;transform:translateY(3px)}to{opacity:1;transform:none}}
/* The authorized droplet translates without rotating, morphing or stretching. */
@keyframes ava-drop-in {0%{opacity:0;transform:translateY(-28px)}25%{opacity:1}100%{opacity:1;transform:none}}
@keyframes ava-ripple {0%{opacity:0;transform:scale(.35)}20%{opacity:.7}100%{opacity:0;transform:scale(1.5)}}
#bw-ava.ava-home:not(.ava-engaged) .ava-launch .ava-logo {animation:ava-drip 3.2s linear infinite;}
#bw-ava .ava-launch-mark::after {content:"";position:absolute;left:3px;right:3px;bottom:-2px;height:5px;border:1px solid #c7d0d077;border-radius:50%;opacity:0;pointer-events:none;}
#bw-ava.ava-home:not(.ava-engaged) .ava-launch-mark::after {animation:ava-launch-ripple 3.2s ease-out infinite;}
@keyframes ava-drip {0%{opacity:0;transform:translateY(-14px)}12%{opacity:1;transform:translateY(-10px)}28%,75%{opacity:1;transform:none}88%{opacity:0;transform:translateY(6px)}100%{opacity:0;transform:translateY(-14px)}}
@keyframes ava-launch-ripple {0%,26%{opacity:0;transform:scale(.35)}31%{opacity:.65}48%,100%{opacity:0;transform:scale(1.4)}}
#bw-ava.ava-page-hidden .ava-launch .ava-logo,#bw-ava.ava-page-hidden .ava-launch-mark::after {animation-play-state:paused;}

#bw-ava :focus-visible {outline:2px solid #fff;outline-offset:4px;}
#bw-ava .ava-contact:focus-visible {outline-offset:4px;}
#bw-ava #ava-panel.ava-closing {animation:ava-exit .18s ease-in forwards;}
html:has(.membership-entrance) #bw-ava,html.bw-menu-open #bw-ava,body:has(.bw-privacy-notice:not([hidden])) #bw-ava,body:has(dialog[open]:not(#ava-panel)) #bw-ava {visibility:hidden;}
@keyframes ava-enter {from{opacity:0;transform:translateY(6px) scale(.97)}to{opacity:1;transform:none}}
@keyframes ava-exit {to{opacity:0;transform:translateY(4px) scale(.99)}}
@media(max-width:600px){
 #ava-panel {--ava-pace:.75;}
 #bw-ava #ava-panel {animation-duration:.34s;}
 #bw-ava .ava-launch {right:max(16px,env(safe-area-inset-right));bottom:calc(16px + env(safe-area-inset-bottom));width:54px;height:54px;padding:12px;justify-content:center;}
 #bw-ava .ava-launch-copy {display:none;}
 #bw-ava #ava-panel {right:16px;bottom:calc(16px + env(safe-area-inset-bottom));width:calc(100% - 32px);border-radius:18px;}
 #bw-ava .ava-content {padding:23px;height:545.125px;}
}
/* Narrow panels formerly wrapped extra lines; retain those exact outer heights. */
@container ava-panel (max-width:330px){#bw-ava .ava-content{height:566.5625px;}}
@container ava-panel (max-width:290px){#bw-ava .ava-content{height:607.8125px;}}
@media(prefers-reduced-motion:reduce){#bw-ava #ava-panel,#bw-ava #ava-panel.ava-closing {animation:none;}#bw-ava .ava-launch,#bw-ava .ava-contact {transition:none;}}
/* Public glass controls use an ID-specific global rule; contain its shape here. */
#bw-ava#bw-ava .ava-launch {border-radius:999px!important;}
#bw-ava#bw-ava .ava-close {border:0!important;border-radius:3px!important;background:transparent!important;box-shadow:none;outline:none;}
#bw-ava#bw-ava .ava-keyboard .ava-close:focus {outline:2px solid #fff;outline-offset:2px;}
#bw-ava#bw-ava .ava-launch:active {transform:scale(.985);transition:transform .1s ease;}

@media(prefers-reduced-motion:reduce){#ava-panel[open] .ava-emblem,#ava-panel[open] .ava-emblem .ava-logo,#ava-panel[open] .ava-emblem::before,#ava-panel[open] .ava-eyebrow,#ava-panel[open] #ava-title,#ava-panel[open] .ava-subtitle,#ava-panel[open] .ava-announcement,#ava-panel[open] .ava-status{animation:none;}#bw-ava#bw-ava .ava-launch:active{transform:none;}}

@media(prefers-reduced-motion:reduce){#bw-ava.ava-home:not(.ava-engaged) .ava-launch .ava-logo,#bw-ava.ava-home:not(.ava-engaged) .ava-launch-mark::after{animation:none;}}
