/* Clear glass. Sharp foreground. The three worlds remain the reference. */
.audience-gate{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:24px;background:rgba(24,27,33,.10);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.audience-dialog,.audience-dialog *{box-sizing:border-box}.audience-dialog{position:relative;width:min(820px,100%);max-height:calc(100dvh - 48px);overflow:auto;padding:29px 22px 20px;border:1px solid rgba(255,255,255,.85);border-radius:28px;background:linear-gradient(135deg,#fffffff0 0%,#ffffff80 35%,#ffffff35 100%);background:linear-gradient(135deg,rgba(255,255,255,.57),rgba(255,255,255,.25));backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);box-shadow:inset 0 1px 0 #fff,0 24px 70px #00000020,0 4px 14px #00000005;text-align:center;color:#151517;isolation:isolate;animation:glass-in .55s cubic-bezier(.2,.8,.2,1) both}.audience-dialog:focus{outline:none}
.world-logo{width:112px;height:81px;margin:0 auto 16px;line-height:0}.world-logo img{position:static;display:block;width:100%;height:100%;max-width:100%;object-fit:contain;transform:none;filter:none;opacity:1}
.audience-dialog h2{font-size:31px!important;font-weight:600!important;line-height:1.12!important;letter-spacing:-.055em!important;margin:0 0 9px}.audience-intro{font-size:13px;line-height:1.4;color:#505056;margin:0}.audience-close{position:absolute;right:16px;top:16px;width:34px;height:34px;border:1px solid #ffffffd0;border-radius:50%;background:#ffffff80;color:#4d4d53;box-shadow:0 2px 6px #00000005;font:400 22px/1 Arial,sans-serif;cursor:pointer;display:grid;place-items:center;padding:0;transition:background .2s,transform .2s}.audience-close:hover{background:#fff;transform:rotate(90deg)}
.audience-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin:25px 0 16px;text-align:left}.audience-options a{position:relative;display:flex;flex-direction:column;justify-content:flex-end;gap:16px;min-height:244px;padding:81px 21px 24px;border:1px solid #ffffffa0;border-radius:21px;color:#161618;text-decoration:none;overflow:hidden;box-shadow:inset 0 1px 0 #ffffff80,0 4px 12px #00000003;transition:transform .3s cubic-bezier(.2,.8,.2,1),box-shadow .3s}.audience-options a[data-audience=business]{background:#e1ece6}.audience-options a[data-audience=creative]{background:#f3e1d7}.audience-options a[data-audience=athlete]{background:#212735;color:#fff;border-color:#ffffff20;box-shadow:inset 0 1px 0 #ffffff0d,0 4px 12px #00000008}.audience-options strong{display:block;font-size:30px;font-weight:600;line-height:1.04;letter-spacing:-.055em}.audience-options strong span{display:block}.audience-options small{display:block;min-height:51px;max-width:180px;padding-right:26px;font-size:11.5px;font-weight:400;line-height:1.5;letter-spacing:-.015em;color:#44484a}.audience-options a[data-audience=athlete] small{color:#d4d7df}.audience-options i{position:absolute;right:20px;bottom:23px;display:grid;place-items:center;width:39px;height:39px;border-radius:50%;background:#17191a;color:#fff;font:400 19px/1 Arial,sans-serif;transition:transform .3s,background .3s}.audience-options a[data-audience=athlete] i{background:#fff;color:#1d1d1f}.audience-options .world-mark{position:absolute;right:21px;top:27px;width:95px;height:40px;fill:none;stroke:currentColor;stroke-width:1.15;stroke-linecap:round;stroke-linejoin:round;opacity:.65}.audience-options a[data-audience=business] .world-mark{color:#496858}.audience-options a[data-audience=creative] .world-mark{color:#a46e53}.audience-options a[data-audience=athlete] .world-mark{color:#d8dfef;width:75px}.audience-options a:hover{transform:translateY(-5px);box-shadow:inset 0 1px 0 #fff8,0 12px 28px #00000012}.audience-options a:hover i{transform:rotate(45deg)}.audience-options a:hover .world-mark{opacity:1}.audience-skip{display:block;width:100%;border:0;border-top:1px solid #ffffff90;padding:15px 5px 0;background:transparent;color:#414149;text-align:left;font-size:11px;line-height:1.4;cursor:pointer}.audience-skip:hover{color:#000}.audience-options a:focus-visible,.audience-close:focus-visible,.audience-skip:focus-visible{outline:3px solid var(--amino-orange,#ff6a29);outline-offset:3px}
.audience-switch{position:fixed;right:20px;bottom:20px;z-index:35;display:flex;gap:10px;align-items:center;border:1px solid #ffffff30;border-radius:99px;padding:12px 17px;background:#1d1d1ff2;color:#fff;font-size:11px;font-weight:500;cursor:pointer;box-shadow:0 5px 18px #00000018;backdrop-filter:blur(16px)}.audience-switch:after{content:"↗";font-size:16px}.audience-switch:hover{background:#343438}body.audience-choice-open{overflow:hidden}
@keyframes glass-in{from{opacity:0;transform:translateY(8px) scale(.985)}to{opacity:1;transform:none}}
@media(max-width:720px){.audience-gate{padding:16px}.audience-dialog{padding:25px 17px 18px;max-height:calc(100dvh - 32px);border-radius:24px}.audience-dialog h2{font-size:28px!important}.audience-options{gap:10px}.audience-options a{padding:72px 16px 20px;min-height:235px;border-radius:17px}.audience-options strong{font-size:25px}.audience-options small{font-size:11px;padding-right:18px;min-height:65px}.audience-options i{width:32px;height:32px;right:13px;bottom:18px;font-size:17px}.audience-options .world-mark{width:75px;height:34px;right:16px;top:22px}}
@media(max-width:540px){.audience-gate{padding:12px}.audience-dialog{padding:23px 14px 17px;max-height:calc(100dvh - 24px)}.world-logo{width:100px;height:73px;margin-bottom:14px}.audience-dialog h2{font-size:26px!important}.audience-intro{font-size:12px}.audience-options{grid-template-columns:1fr;margin:20px 0 14px;gap:10px}.audience-options a{min-height:132px;padding:17px 18px;gap:9px;justify-content:center}.audience-options strong{font-size:24px;max-width:220px}.audience-options strong span{display:inline}.audience-options strong span:after{content:" "}.audience-options small{min-height:0;max-width:245px;padding-right:24px;font-size:11px}.audience-options .world-mark{right:18px;top:15px;width:64px;height:27px}.audience-options a[data-audience=athlete] .world-mark{width:60px}.audience-options i{right:18px;bottom:17px;width:33px;height:33px}.audience-close{right:11px;top:11px;width:31px;height:31px;font-size:21px}.audience-skip{padding-top:13px;font-size:10.5px}.audience-switch{right:12px;bottom:12px;padding:10px 14px;font-size:10px}}
@media(max-width:390px){.audience-options strong{font-size:22px}.audience-options .world-mark{width:50px}.audience-options a{min-height:126px}}
@media(prefers-reduced-motion:reduce){.audience-dialog{animation:none}.audience-options a:hover,.audience-options a:hover i,.audience-close:hover{transform:none}}

/* Keep the chooser clear of iPhone screen edges and Safari's expanding toolbar. */
.audience-gate{
 --gate-gap:24px;
 --gate-top:max(var(--gate-gap),env(safe-area-inset-top,0px));
 --gate-bottom:max(var(--gate-gap),env(safe-area-inset-bottom,0px));
 padding:var(--gate-top) max(var(--gate-gap),env(safe-area-inset-right,0px)) var(--gate-bottom) max(var(--gate-gap),env(safe-area-inset-left,0px));
}
.audience-dialog{max-height:calc(100dvh - var(--gate-top) - var(--gate-bottom));overscroll-behavior:contain}
@media(max-width:720px){.audience-gate{--gate-gap:16px}}
@media(max-width:720px),(hover:none) and (pointer:coarse){
 /* A single light canvas continues into Safari's bars and native rubber band. */
 html:has(body.audience-choice-open){background:var(--amino-chooser-canvas,#e7e8ea);overflow-x:clip;overflow-y:auto;overscroll-behavior-y:contain;scroll-behavior:auto}
 html:root body.audience-choice-open{background:var(--amino-chooser-canvas,#e7e8ea)!important;overflow-x:clip;overflow-y:visible;overscroll-behavior:auto;padding:0!important}
 html:root body.audience-choice-open>:not(.audience-gate){display:none!important}
 /* Let the document scroll, including on shorter phones; no nested scroll lock. */
 .audience-gate{position:relative;inset:auto;width:100%;min-height:calc(100vh + 32px);min-height:calc(100dvh + 32px);background:var(--amino-chooser-canvas,#e7e8ea);backdrop-filter:none;-webkit-backdrop-filter:none}
 .audience-dialog{max-height:none;overflow:visible;overscroll-behavior:auto}
}
@media(max-width:540px){.audience-gate{--gate-gap:12px}}
.audience-switch{right:max(20px,env(safe-area-inset-right,0px));bottom:calc(20px + env(safe-area-inset-bottom,0px))}
@media(max-width:540px){.audience-switch{right:max(12px,env(safe-area-inset-right,0px));bottom:calc(12px + env(safe-area-inset-bottom,0px))}}

/* One recognizable image for each world, in both the chooser and homepage. */
.world-scene{position:relative;display:block;overflow:hidden;isolation:isolate;flex:none;background:#e7e9eb}
.world-scene>img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.7,.2,1)}
.world-scene--business{background:radial-gradient(ellipse at 50% 25%,#ffffffd9,transparent 70%),#e2ebe7}
.world-scene--business>img{object-fit:contain;padding:4px 14px}
.world-scene--creative>img{object-position:50% 6%}
.world-scene--athlete>img{object-position:50% 46%}
.scene-audio{position:absolute;right:13px;bottom:12px;display:flex;align-items:center;justify-content:center;gap:3px;height:28px;padding:5px 9px;border:1px solid #ffffff90;border-radius:8px;background:#ffffffb3;backdrop-filter:blur(12px)}
.scene-audio>span{display:block;width:3px;height:13px;border-radius:4px;background:#1d1d1f;transform-origin:center}
.scene-audio>span:nth-child(2n){height:8px}.scene-audio>span:nth-child(3n){height:17px;background:#ff6a29}
.scene-pulse{position:absolute;right:12px;bottom:10px;width:33px;height:33px;border-radius:50%;background:#ffffffbf;backdrop-filter:blur(12px);fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.scene-pulse circle{stroke:#ff6a29;stroke-dasharray:100 40;transform-origin:28px 28px}
.scene-pulse path{stroke:#1d1d1f}
.audience-options a{justify-content:flex-start;gap:0;padding:0;min-height:280px}
.audience-options .world-scene{width:100%;height:108px;border-bottom:1px solid #ffffff45}
.audience-options strong{margin:16px 20px 10px}
.audience-options small{margin:0 20px 23px;max-width:none;padding-right:30px}
.audience-options i{right:17px;bottom:20px;width:35px;height:35px}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
 :is(.audience-options>a,.world-link):is(:hover,:focus-visible) .world-scene>img{transform:scale(1.065)}
 :is(.audience-options>a,.world-link):is(:hover,:focus-visible) .world-scene--business>img{transform:translateY(-3px) scale(1.055)}
 :is(.audience-options>a,.world-link):is(:hover,:focus-visible) .scene-audio>span{animation:scene-audio 1s ease-in-out infinite alternate}
 :is(.audience-options>a,.world-link):is(:hover,:focus-visible) .scene-audio>span:nth-child(2n){animation-delay:-.4s}
 :is(.audience-options>a,.world-link):is(:hover,:focus-visible) .scene-audio>span:nth-child(3n){animation-delay:-.75s}
 :is(.audience-options>a,.world-link):is(:hover,:focus-visible) .scene-pulse circle{animation:scene-pulse 4s linear infinite}
}
@keyframes scene-audio{to{transform:scaleY(.35)}}
@keyframes scene-pulse{to{transform:rotate(360deg)}}
@media(min-width:541px) and (max-width:720px){
 .audience-options .world-scene{height:102px}
 .audience-options strong{margin:15px 15px 10px}
 .audience-options small{margin:0 15px 20px;padding-right:19px}
 .audience-options i{width:28px;height:28px;right:11px;bottom:18px}
}
@media(max-width:540px){
 .audience-options a{min-height:138px;padding:17px 16px 17px 114px;gap:8px;justify-content:center}
 .audience-options .world-scene{position:absolute;inset:0 auto 0 0;width:98px;height:100%;border-bottom:0;border-right:1px solid #ffffff45}
 .audience-options strong{margin:0;font-size:21px;max-width:none}
 .audience-options small{margin:0;min-height:0;font-size:10.5px;line-height:1.5;padding-right:28px;max-width:none}
 .audience-options i{width:28px;height:28px;right:12px;bottom:14px;font-size:16px}
 .audience-options .world-scene--creative>img{object-position:50% 22%}
 .audience-options .world-scene--athlete>img{object-position:52% 55%}
 .audience-options .world-scene--business>img{padding:2px;transform:scale(1.04)}
 .audience-options .scene-audio{right:8px;bottom:9px;padding:4px 6px;gap:2px;height:24px}
 .audience-options .scene-audio>span{width:2px}
 .audience-options .scene-pulse{right:8px;bottom:8px;width:27px;height:27px}
}
@media(max-width:360px){
 .audience-options a{padding-left:98px;min-height:144px;padding-right:12px}
 .audience-options .world-scene{width:84px}
 .audience-options strong{font-size:19px}
 .audience-options small{font-size:10px;padding-right:23px}
 .audience-options i{width:25px;height:25px;right:9px;bottom:13px}
}

/* Historical line visuals, within the existing chooser image areas. */
.audience-options .world-scene--symbols{background:transparent}
.audience-options .world-scene--symbols .world-mark{left:50%;top:50%;right:auto;width:min(95px,calc(100% - 24px));height:40px;transform:translate(calc(-50% + var(--card-px,0px)),calc(-50% + var(--card-py,0px)))}
.audience-options .world-scene--athlete.world-scene--symbols .world-mark{width:min(75px,calc(100% - 24px))}
@media(prefers-reduced-motion:no-preference){
 .audience-options .world-scene--business.world-scene--symbols .world-mark{animation:chooser-line-breathe 7s ease-in-out infinite}
 .audience-options .world-scene--creative.world-scene--symbols .world-mark path{transform-origin:45px 19px;animation:chooser-wave-breathe 6s ease-in-out infinite}
 .audience-options .world-scene--athlete.world-scene--symbols .world-mark path{animation:chooser-arrow-drift 7s ease-in-out infinite}
}
@keyframes chooser-line-breathe{0%,100%{opacity:.65}50%{opacity:.9}}
@keyframes chooser-wave-breathe{0%,100%{transform:scaleY(1)}50%{transform:scaleY(.88)}}
@keyframes chooser-arrow-drift{0%,100%{transform:translateX(0)}50%{transform:translateX(2px)}}
