/* YOZ 2026: retain the original polygon scenes and make every primary action clear. */
:root{--yoz-ink:#241d35;--yoz-purple:#b294d2;--yoz-accent:#ffe3a3;--yoz-soft:#f8f5fc;--yoz-radius:24px}
body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif}
.stage footer.yoz-header{box-sizing:border-box;position:fixed!important;top:24px!important;bottom:auto!important;left:32px!important;right:32px!important;width:auto!important;height:78px!important;padding:0 24px!important;display:flex!important;align-items:center;gap:24px;background:rgba(33,24,48,.8);border:1px solid rgba(255,255,255,.18);border-radius:20px;box-shadow:0 10px 40px #241d3514;backdrop-filter:blur(16px);z-index:200!important;text-align:left;transform:none!important}
.stage footer.yoz-header .yoz-brand{display:flex!important;align-items:center;gap:12px;flex-shrink:0;text-decoration:none;color:#fff;font-size:22px;letter-spacing:.04em;line-height:1.25}
.yoz-brand img{width:42px;height:44px;object-fit:contain}.yoz-brand small{display:block;font-size:9px;letter-spacing:.14em;font-weight:500;color:#eadff8;margin-top:5px}
.stage footer.yoz-header nav{margin-left:auto}.stage footer.yoz-header nav ul{position:static!important;display:flex!important;align-items:center;gap:22px;padding:0!important;margin:0!important;float:none!important;list-style:none;transform:none!important;width:auto!important;height:auto!important}
.stage footer.yoz-header nav ul li{position:static!important;display:block!important;float:none!important;margin:0!important;padding:0!important;white-space:nowrap;line-height:1!important;width:auto!important;height:auto!important}
.stage footer.yoz-header nav ul li::after{content:none!important}.stage footer.yoz-header nav a{font:500 13px/1.4 -apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC",sans-serif!important;display:inline-flex;align-items:center;min-height:44px;padding:0!important;letter-spacing:.04em;color:#f6efff!important;opacity:.9;text-decoration:none;transition:opacity .2s,transform .2s}
.stage footer.yoz-header nav a:hover{opacity:1;color:var(--yoz-accent)!important;transform:translateY(-1px)}
.stage footer.yoz-header .yoz-languages{display:flex!important;gap:10px;align-items:center;color:#a695bc}.yoz-languages [aria-current=page]{font-weight:800!important;color:var(--yoz-accent)!important}
.stage footer.yoz-header .yoz-header-apply{flex-shrink:0;display:inline-flex!important;align-items:center;justify-content:space-between;gap:20px;min-height:46px;padding:0 18px!important;background:var(--yoz-accent);color:var(--yoz-ink)!important;border-radius:12px;font:700 13px/1.2 -apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC",sans-serif;letter-spacing:.02em;text-decoration:none;transition:transform .2s,box-shadow .2s}
.yoz-header-apply:hover{transform:translateY(-2px);box-shadow:0 4px 18px #0002}.yoz-menu-toggle{display:none!important}
.yoz-intro{position:fixed;z-index:105;left:clamp(60px,6.5vw,150px);top:50%;transform:translateY(-42%);max-width:420px;color:white;text-align:left;pointer-events:auto;transition:opacity .25s}
.yoz-intro .yoz-eyebrow{display:flex;align-items:center;gap:12px;font:600 11px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC",sans-serif;letter-spacing:.15em;color:#ffefcb;margin:0 0 24px;text-align:left}.yoz-eyebrow span{font-size:20px}
.yoz-intro h1{font-family:inherit;font-size:clamp(36px,3.2vw,64px);line-height:1.23;letter-spacing:-.03em;font-weight:650;margin:0;color:#fff;text-transform:none}
.yoz-intro .yoz-intro-copy{font-size:16px;line-height:1.9;margin:24px 0 28px;color:#f8f3ff;letter-spacing:.03em;text-align:left;font-family:inherit}
.yoz-intro-actions{display:flex;align-items:center;gap:20px}.yoz-intro-actions a{display:inline-flex;align-items:center;justify-content:space-between;gap:22px;min-height:50px;text-decoration:none;font-size:14px;font-weight:650;letter-spacing:.02em;transition:transform .2s}
.yoz-intro-actions a:hover{transform:translateY(-3px)}.yoz-primary{padding:0 20px;border-radius:14px;background:var(--yoz-accent);color:var(--yoz-ink)}.yoz-secondary{color:white;border-bottom:1px solid #ffffff70}.yoz-topics{display:flex;gap:10px;margin-top:40px;flex-wrap:wrap}.yoz-topics span{padding:7px 10px;border:1px solid #ffffff40;border-radius:999px;font-size:10px;letter-spacing:.07em;color:#fff}
body.smash .yoz-intro,body.all-animals .yoz-intro{opacity:0;visibility:hidden;pointer-events:none}
/* A real dialog surface instead of tiny text floating over a busy scene. */
.overlay{box-sizing:border-box;padding:120px 24px 60px;background:rgba(24,18,33,.96)!important;backdrop-filter:blur(14px);z-index:10000!important;overscroll-behavior:contain;scrollbar-gutter:stable;transition:transform .28s ease!important}
.overlay>div{box-sizing:border-box;width:100%!important;max-width:780px!important;padding:40px!important;margin:0 auto!important;background:#30283d;border:1px solid #ffffff1a;border-radius:var(--yoz-radius);box-shadow:0 20px 80px #0002}
.overlay>div.active{animation:yoz-panel-in .25s ease both}.overlay>div.sources{max-width:1050px!important}.overlay>div.register{max-width:680px!important}.overlay>div.successpage{max-width:680px!important;text-align:center}
.overlay div>*{transition:opacity .18s ease!important}.overlay.active div>*{opacity:1!important}.overlay h2{font-family:inherit;font-size:30px!important;font-weight:650;letter-spacing:-.025em;line-height:1.4;margin:0 0 20px!important;color:#dbc3f5!important;text-transform:none}
.overlay h2 a{font-size:16px;white-space:nowrap;display:inline-block;color:var(--yoz-accent)}.overlay h3{font:650 20px/1.6 -apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC",sans-serif!important;margin:24px 0 12px!important;color:#e6d6fa!important;text-transform:none}
.overlay p{font:400 15px/1.9 -apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC",sans-serif!important;color:#ebe4f3!important;text-align:left;margin:0 0 18px!important;letter-spacing:.015em;max-height:none}.overlay a{color:var(--yoz-accent);overflow-wrap:anywhere}.overlay img{max-width:100%;height:auto}.overlay>div>p:last-child{margin-bottom:0!important}
.overlay>.nav-btn.close{position:fixed!important;top:32px!important;right:40px!important;margin:0!important;width:48px;height:48px;border-radius:50%;background:#f6f0ff!important;border:0;box-shadow:0 4px 20px #0002;z-index:10001;opacity:1!important;transition:transform .2s!important}
.overlay>.nav-btn.close:after{background:transparent!important}.overlay>.nav-btn.close .icon:before,.overlay>.nav-btn.close .icon:after{background:#382e45!important}
.overlay>.nav-btn.close:hover{transform:rotate(90deg)}
.overlay form{gap:20px;margin-top:30px}.overlay form>div{margin:0;min-width:0}.overlay form label{font-size:13px;font-weight:600;letter-spacing:.04em;color:#eee6f8}.overlay form abbr{color:#ffdfa2;text-decoration:none}
.overlay form input,.overlay form select{box-sizing:border-box;width:100%;min-height:52px;padding:13px 14px;font:400 16px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC",sans-serif;border:1px solid #ffffff26;border-radius:12px;background:#ffffff09;color:#fff;outline-offset:3px;transition:border-color .2s,background .2s!important}
.overlay form input:focus,.overlay form select:focus{border-color:#d4b8f1;background:#ffffff11}.overlay form input::placeholder{color:#b7adbf}.overlay form option{background:#fff;color:#241d35}.overlay .register button.success{display:flex;align-items:center;justify-content:center;width:100%;min-height:54px;margin:4px 0 0;padding:14px;border:0;border-radius:12px;background:var(--yoz-accent);color:var(--yoz-ink);font:650 16px/1.4 -apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC",sans-serif;cursor:pointer;box-shadow:0 4px 16px #0001;transition:transform .18s!important}.overlay .register button.success:hover{transform:translateY(-2px)}
.overlay .register button:disabled{opacity:.6!important;cursor:wait;transform:none}.registration-status{line-height:1.7!important;font-size:14px!important;white-space:normal;margin-top:0!important}.registration-status:empty{display:none}.registration-status[data-kind=error]{color:#ffbdb6!important;background:#ff4b3b12;border:1px solid #ffbdb62e;padding:12px;border-radius:10px}
.overlay .successpage> a{display:inline-flex;width:64px;height:64px;align-items:center;justify-content:center;font:32px/1 -apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC",sans-serif;border-radius:50%;background:#c7e9cb;color:#24402a;margin-bottom:24px}.successpage i{font-style:normal}.overlay .successpage h2{text-align:center}.overlay .registration-receipt{overflow-wrap:anywhere;background:#ffffff08;padding:14px;border-radius:12px;border:1px solid #ffffff1a;font-size:13px!important;margin:24px 0!important}
.overlay .contactUs>div{padding:16px 0;border-top:1px solid #ffffff18}.overlay .contactUs>div p{margin-bottom:4px!important}.yoz-inline-apply{display:inline-flex;padding:12px 18px;background:#ffffff10;border-radius:12px;font-weight:650}
.overlay .how>ul{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:24px 0;padding:0;list-style:none}.overlay .how li.videoturnon{box-sizing:border-box;width:auto!important;margin:0!important;padding:22px!important;border:1px solid #ffffff1a;border-radius:16px;background:linear-gradient(135deg,#4a375c,#322c40);cursor:pointer;transition:transform .2s!important}.overlay .how li.videoturnon::before{content:'↗';display:block;font-size:26px;color:var(--yoz-accent)}.overlay .how li.videoturnon h3{margin:10px 0 0!important;font-size:17px!important}.overlay .how li.videoturnon:hover{transform:translateY(-3px)}
.overlay>ul.videos{display:none!important}.video-player iframe{display:block;width:100%;height:auto;aspect-ratio:16/9;border:0;border-radius:12px;background:#1b1525}.video-player>p{margin-top:20px!important}
.overlay .buyCourse>a{display:block}.overlay .buyCourse img{border-radius:14px;width:100%;margin-top:16px}
/* The old absolute carousel let its description fall outside the dialog on phones. */
.overlay .sources .app{position:relative;top:auto;width:100%;height:auto;display:flex;flex-direction:column;margin:28px 0 0;padding:0 0 10px;gap:28px}
.overlay .sources .cardList{position:relative;width:min(100%,620px);height:280px;flex:none;overflow:hidden;isolation:isolate}
.overlay .sources .card{--card-width:170px;--card-height:230px;top:50%;border-radius:18px;overflow:hidden;box-shadow:0 10px 30px #0004}.overlay .sources .card::before{inset:0;width:100%;height:100%}.overlay .sources .card.current--card{z-index:3}.overlay .sources .card:not(.current--card){z-index:1}
.overlay .sources .cardList__btn{--btn-size:44px;top:50%;background:#fff;border:0;border-radius:50%;padding:10px;color:#30243c;cursor:pointer;opacity:1!important;pointer-events:auto!important}.overlay .sources .btn--left{left:4px}.overlay .sources .btn--right{right:4px}.cardList__btn svg{fill:currentColor}
.overlay .sources .infoList{position:relative;width:100%;height:auto;pointer-events:auto}.overlay .sources .info__wrapper{display:block;height:auto;width:100%;perspective:none}.overlay .sources .info{margin:0;transform:none!important;text-align:center}.overlay .sources .info .text{position:static;top:auto;max-height:none;white-space:normal;width:100%!important;margin:0!important;text-align:center;transform:none!important;font-family:inherit}.overlay .sources .info .name{font-size:24px;font-weight:650;line-height:1.4;margin-bottom:12px!important}.overlay .sources .info .description{font-size:15px;line-height:1.9;padding:0;max-width:620px;margin:0 auto!important;color:#ded4e8}
.overlay .classes{gap:16px;justify-content:center}.overlay .class{margin:0;width:calc(50% - 8px);cursor:pointer;border-radius:14px;overflow:hidden;background:#211a2a}.overlay .class img{width:100%;height:180px;object-fit:cover;border-radius:14px}.overlay .class p{position:absolute;left:14px;bottom:8px;width:calc(100% - 28px)!important;line-height:1.4!important;text-shadow:0 1px 8px #000}
.overlay .slides{max-width:100%;overflow:hidden}.overlay [class^=container-dots]{display:flex;gap:8px;justify-content:center;flex-wrap:wrap}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,[role=button]:focus-visible{outline:3px solid #ffdf9d!important;outline-offset:4px}
@keyframes yoz-panel-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:1400px){.yoz-intro{max-width:440px}.level-one .animal-mover{transform:translateX(10%)}}
@media(max-width:1350px){.stage footer.yoz-header{gap:16px;padding:0 18px!important}.stage footer.yoz-header nav ul{gap:14px}.stage footer.yoz-header nav a{font-size:12px!important}.stage footer.yoz-header .yoz-brand{font-size:18px}.yoz-brand small{font-size:8px}.yoz-intro{max-width:310px;left:50px}.yoz-intro h1{font-size:40px}.yoz-intro-copy{font-size:14px!important}.yoz-topics{gap:6px}.yoz-topics span{font-size:8px;padding:6px 8px}}
@media(max-width:1100px){.stage footer.yoz-header{top:18px!important;left:20px!important;right:20px!important;height:70px!important}.stage footer.yoz-header .yoz-header-apply{margin-left:auto}.yoz-menu-toggle{display:flex!important;position:relative;width:44px;height:44px;flex-shrink:0;flex-direction:column;gap:6px;justify-content:center;align-items:center;border:1px solid #ffffff40;border-radius:12px;background:transparent;cursor:pointer}.yoz-menu-toggle span{width:19px;height:2px;background:white;transition:transform .2s}.yoz-menu-open .yoz-menu-toggle span:first-child{transform:translateY(4px) rotate(45deg)}.yoz-menu-open .yoz-menu-toggle span:last-child{transform:translateY(-4px) rotate(-45deg)}.stage footer.yoz-header nav{display:none!important;position:absolute;top:80px;right:0;left:0;padding:14px;background:#30243d;border-radius:18px;border:1px solid #ffffff25;box-shadow:0 20px 50px #0003;max-height:calc(100dvh - 125px);overflow-y:auto}.stage footer.yoz-header.yoz-menu-open nav{display:block!important}.stage footer.yoz-header nav ul{display:grid!important;grid-template-columns:1fr 1fr;gap:4px}.stage footer.yoz-header nav a{display:flex;padding:10px 14px!important;min-height:44px;font-size:14px!important}.stage footer.yoz-header .yoz-languages{grid-column:1 / -1;justify-content:center;border-top:1px solid #ffffff20;margin-top:6px!important}.yoz-intro{left:40px;max-width:280px}.yoz-intro h1{font-size:36px}.yoz-intro-actions{gap:14px;flex-wrap:wrap}.yoz-intro-actions a{font-size:13px}.yoz-topics{display:none}}
@media(max-width:760px){.stage footer.yoz-header{top:14px!important;left:14px!important;right:14px!important;height:64px!important;padding:0 14px!important;gap:10px;border-radius:16px}.stage footer.yoz-header .yoz-brand{gap:8px;font-size:17px}.yoz-brand img{width:31px;height:34px}.yoz-brand small{font-size:6px;letter-spacing:.09em}.stage footer.yoz-header .yoz-header-apply{min-height:38px;font-size:11px;padding:0 12px!important;gap:12px;border-radius:10px}.yoz-menu-toggle{width:38px;height:38px;border-radius:10px}.yoz-header nav{top:74px!important}.yoz-intro{top:auto;bottom:88px;left:28px;right:28px;max-width:none;transform:none;z-index:105}.yoz-intro .yoz-eyebrow{font-size:9px;margin-bottom:10px}.yoz-intro h1{font-size:34px;line-height:1.2}.yoz-intro h1 br{display:none}.yoz-intro .yoz-intro-copy{font-size:13px!important;line-height:1.7;margin:12px 0 18px}.yoz-intro-copy br{display:none}.yoz-intro-actions{gap:20px}.yoz-intro-actions a{min-height:44px;font-size:13px}.yoz-primary{padding:0 16px;border-radius:12px}.animalinfo{display:none!important}.animal-nav-content{display:none!important}.main-nav{display:none!important}.social-links,.social-media{display:none!important}.level-one{transform:translateY(-12%)!important}.overlay{padding:90px 14px 36px}.overlay>div{padding:26px 20px!important;border-radius:20px;max-width:100%!important}.overlay h2{font-size:25px!important;margin-bottom:16px!important}.overlay p{font-size:14px!important;line-height:1.85!important}.overlay>.nav-btn.close{width:42px;height:42px;top:22px!important;right:22px!important}.overlay form{margin-top:24px;gap:18px}.overlay .sources .cardList{height:250px}.overlay .sources .card{--card-width:145px;--card-height:200px}.overlay .how>ul{grid-template-columns:1fr}.overlay .class{width:100%}.overlay .class img{height:190px}.overlay .successpage> a{width:54px;height:54px;font-size:26px}.overlay .registration-receipt{font-size:12px!important;padding:12px}.overlay .contactUs>div{padding:14px 0}}
@media(max-width:380px){.yoz-brand small{display:none}.stage footer.yoz-header .yoz-brand{font-size:15px}.stage footer.yoz-header .yoz-header-apply{font-size:10px;padding:0 9px!important;gap:8px}.yoz-intro{left:24px;right:24px;bottom:70px}.yoz-intro h1{font-size:29px}.yoz-intro .yoz-intro-copy{font-size:12px!important}.yoz-intro-actions{gap:14px}}
@media(max-height:620px) and (max-width:760px){.yoz-intro{bottom:36px}.yoz-intro h1{font-size:26px}.yoz-intro .yoz-eyebrow,.yoz-intro-copy{display:none}.yoz-intro-actions{margin-top:16px}.level-one{opacity:.6}.overlay{padding-top:80px}}
@media(prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.loading__wrapper{display:none!important}}
/* Original scene uses z-index 999; keep actionable content above it. */
.stage{z-index:1000!important;pointer-events:none}.stage .yoz-header,.stage .yoz-intro,.stage .main-nav,.stage .animalinfo,.stage .footerSocial{pointer-events:auto}
.stage footer.yoz-header .yoz-brand img{position:static!important;display:block!important;float:none!important;margin:0!important;flex:none;transform:none!important}
.footerSocial{display:none!important}
@media(min-width:761px){.animalinfo-wrapper{left:auto!important;right:62px!important;bottom:48px!important;top:auto!important;width:auto!important}.animalinfo-wrapper .animalinfo{position:static!important;transform:none!important;text-align:right}.animalinfo-wrapper .animalinfo h2{font:500 15px/1.4 -apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC",sans-serif!important;letter-spacing:.1em!important}.animalinfo-wrapper .animalinfo>li:first-child{display:none!important}}
@media(max-width:760px){.yoz-intro h1 br{display:block}.yoz-intro h1{font-size:32px}.yoz-intro .yoz-intro-copy{color:#fff!important}.yoz-intro{bottom:54px}.level-one{transform:translateY(-18%)!important}}
@media(max-width:380px){.yoz-intro h1{font-size:29px}}
@media(max-height:620px) and (max-width:760px){.yoz-intro{bottom:28px}.yoz-intro h1{font-size:26px}}
.overlay .yoz-back{display:inline-flex;align-items:center;min-height:44px;font-size:13px;margin:0 0 18px!important;text-decoration:none}
.overlay .container-slider{height:auto;aspect-ratio:4/3;margin:24px 0;border-radius:14px;background:#1b1525;box-shadow:none}
.overlay .container-slider .slides{height:100%;position:absolute;inset:0}.overlay .container-slider .slides img{object-fit:contain!important;max-width:100%;height:100%;width:100%}
.overlay .container-slider .btn-slide{display:flex;align-items:center;justify-content:center;width:44px;height:44px;opacity:1!important;color:#2a2138;background:#fff;font-size:32px;line-height:1;border:0;z-index:20!important;padding:0}
.overlay .container-slider .prev{left:10px}.overlay .container-slider .next{right:10px}.overlay .container-dots{gap:4px;bottom:10px}.overlay .container-dots .dot{padding:0;box-sizing:content-box;width:9px;height:9px;min-width:0;min-height:0;border:7px solid transparent;background:#d8cee6;background-clip:padding-box;margin:0;border-radius:50%}.overlay .container-dots .dot[aria-pressed=true]{background:#a483c6;background-clip:padding-box}
.stage::before{content:'';position:fixed;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,rgba(36,22,51,.28),transparent 65%)}
.overlay h1,.overlay h2,.overlay h3{max-height:none!important;overflow:visible!important;white-space:normal}
@media(max-width:760px){.stage::before{background:linear-gradient(0deg,rgba(36,22,51,.35),transparent 85%)}}

.overlay .sources .cardList__btn{font:400 32px/1 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;padding:0!important;color:#30243c!important;display:flex;align-items:center;justify-content:center}
.yoz-intro p,.yoz-intro a,.yoz-header a{text-transform:none!important}.overlay .sources .info .name{letter-spacing:.04em!important}

@media(max-width:380px){html[lang=en] .stage footer.yoz-header .yoz-brand{font-size:12px;letter-spacing:0}.stage footer.yoz-header .yoz-brand span{min-width:0}}
.stage .animal-nav{pointer-events:auto}
@media(max-width:760px){.stage .animal-nav{display:none!important}.yoz-intro-actions{gap:12px;flex-wrap:nowrap}.yoz-intro-actions a{font-size:12px;gap:12px;white-space:nowrap}.yoz-primary{padding:0 14px}}
