/* Scoped dark exhibition; the other site pages retain their existing materials. */
body:has(main.creative-gallery){background:#080808!important;color:#eee!important;overflow-x:hidden}
body:has(main.creative-gallery) .site-nav{background:#080808!important;color:#eee!important;border:0!important;box-shadow:none!important;backdrop-filter:none!important;position:relative;z-index:4}
body:has(main.creative-gallery) .site-nav a{color:#ddd!important;background:transparent!important;box-shadow:none!important;border:0!important}
body:has(main.creative-gallery) .site-nav svg{stroke:currentColor}
body:has(main.creative-gallery)>footer{display:none}
.creative-gallery{--muted:#999;box-sizing:border-box;width:100%;max-width:none!important;margin:0!important;padding:24px 40px!important;min-height:calc(100svh - 100px);display:flex;flex-direction:column;position:relative;font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif;color:#eee}
.creative-gallery *{box-sizing:border-box}
.creative-gallery button,.creative-gallery input,.creative-gallery select{font:inherit;color:#eee!important;background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important}
.creative-gallery button,.creative-gallery a{cursor:pointer;touch-action:manipulation}
.creative-gallery a{color:inherit;text-decoration:none}
.creative-gallery button{min-width:44px;min-height:44px;padding:8px 12px}
.creative-gallery :is(button,a,input,select):focus-visible{outline:2px solid #d6f8ae!important;outline-offset:4px}
.cg-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}
.cg-heading p{font-size:10px;letter-spacing:.16em;color:var(--muted);margin:0 0 6px}
.cg-heading h1{font-size:clamp(20px,2vw,30px);font-weight:400;letter-spacing:-.04em;line-height:1.2;margin:0}
.cg-heading>button{font-size:12px;color:#bbb!important}
.cg-filters{display:flex;align-items:center;gap:24px;margin:16px 0 0;z-index:2;font-size:12px}
.cg-tabs{display:flex;gap:8px}.cg-tabs button{color:#999!important}.cg-tabs [aria-current]{color:#fff!important;box-shadow:inset 0 -1px #fff!important}
.cg-search{display:flex;align-items:center;gap:4px;margin-left:auto;border-bottom:1px solid #383838}
.cg-search input{width:160px;min-width:0;padding:10px 0;outline-offset:0!important}
.cg-search input::placeholder{color:#999}.cg-filters select{max-width:150px;height:44px}.cg-filters option{background:#171717}
.cg-stage{position:relative;flex:1;min-height:360px;height:52svh;margin:0 -40px;overflow:hidden;touch-action:pan-y}
.cg-stage canvas{position:absolute;inset:0;width:100%;height:100%;display:none}
.cg-fallback{display:flex;gap:24px;overflow-x:auto;scroll-snap-type:x mandatory;padding:40px max(24px,20vw);height:100%;align-items:center}
.cg-card{display:block;flex:0 0 min(60vw,720px);width:min(60vw,720px);min-width:min(60vw,720px);scroll-snap-align:center}
.cg-card img{width:100%;height:36svh;object-fit:cover;display:block;background:#171717}
.cg-card>span{display:block;font-size:15px;padding-top:12px}.cg-card small{display:block;color:#999;font-size:11px;padding-top:4px}
.cg-stage.is-webgl{cursor:grab;touch-action:none}.cg-stage.is-webgl:active{cursor:grabbing}.cg-stage.is-webgl canvas{display:block}.cg-stage.is-webgl .cg-fallback{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);padding:0}
.cg-stage.is-list{height:auto;min-height:360px}.cg-stage.is-list canvas{display:none}.cg-stage.is-list .cg-fallback{position:static;width:100%;height:auto;clip-path:none;overflow:visible;padding:40px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px 24px}.cg-stage.is-list .cg-card{width:auto;min-width:0}.cg-stage.is-list .cg-card img{height:auto;aspect-ratio:1.5}
.cg-bottom{display:flex;justify-content:space-between;gap:24px;align-items:flex-end;padding:8px 0 16px}.cg-bottom[hidden]{display:none}
.cg-caption>span{font-size:11px;color:#999}.cg-caption h2{font-size:clamp(22px,3vw,38px);font-weight:400;line-height:1.3;margin:8px 0 4px;letter-spacing:-.04em}.cg-caption button{padding-left:0;font-size:12px}
.cg-controls{text-align:right;font-size:11px;color:#aaa}.cg-controls p{margin:0 0 10px}.cg-controls p span{margin-left:24px}.cg-controls>div{display:flex;align-items:center;gap:24px}.cg-controls [data-cg-count]{font-variant-numeric:tabular-nums;min-width:55px}.cg-controls button{font-size:22px}
.cg-empty{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:24px}.cg-empty h2{font-size:24px;font-weight:400}.cg-empty p{color:#aaa}.cg-empty a{padding:16px;text-decoration:underline}
.cg-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.creative-gallery .cg-detail{position:fixed;inset:0;width:100%;max-width:none;height:100svh;max-height:none;margin:0;padding:0;border:0;background:#080808;color:#eee;overflow-y:auto;overscroll-behavior:contain}
.cg-detail::backdrop{background:#080808}.cg-detail-bar{position:sticky;top:0;z-index:2;display:flex;justify-content:space-between;align-items:center;padding:16px 40px;background:#080808ed;border-bottom:1px solid #222;font-size:12px}.cg-detail-bar b{font-weight:400;color:#aaa}
.cg-detail-content{padding:48px 10vw 96px;animation:cg-reveal .5s ease both}.cg-detail-copy{max-width:600px;margin:0 auto 48px}.cg-detail-copy>p:first-child{font-size:12px;color:#999}.cg-detail-copy h2{font-size:clamp(30px,6vw,72px);font-weight:400;margin:16px 0 24px;letter-spacing:-.04em}.cg-detail-copy p{white-space:pre-wrap;line-height:1.8;color:#bbb;font-size:14px}.cg-detail-copy a{display:inline-block;border-bottom:1px solid #777;padding:12px 0;margin:8px 0}.cg-detail-copy small{display:block;font-size:11px;color:#999;margin-top:12px}
.cg-detail-images{display:grid;gap:32px}.cg-detail-images img{width:100%;height:auto;display:block;background:#171717}.cg-detail-images figure{margin:0}.cg-detail-images figcaption{font-size:11px;color:#999;text-align:right;margin-top:8px}
@keyframes cg-reveal{from{opacity:0;transform:translateY(32px)}to{opacity:1;transform:none}}
@media(min-height:850px) and (min-width:821px){.cg-stage{height:58svh}}
@media(max-width:820px){.creative-gallery{padding:20px 24px!important}.cg-stage{margin:0 -24px;min-height:340px}.cg-filters{gap:12px}.cg-search input{width:130px}.cg-stage.is-list .cg-fallback{padding:24px;grid-template-columns:repeat(2,minmax(0,1fr))}.cg-detail-bar{padding:16px 24px}.cg-detail-content{padding:32px 24px 64px}}
@media(max-width:540px){.creative-gallery{padding:16px!important;min-height:calc(100svh - 140px)}.cg-heading p{font-size:8px}.cg-heading>button{font-size:11px}.cg-filters{flex-wrap:wrap;gap:0 12px;margin-top:12px}.cg-tabs{gap:0}.cg-search{margin-left:auto}.cg-search input{width:128px}.cg-filters>label:last-child{width:100%}.cg-filters select{font-size:11px;height:36px}.cg-stage{margin:0 -16px;height:43svh;min-height:280px}.cg-card{width:80vw;min-width:80vw}.cg-card img{height:31svh}.cg-bottom{padding-top:0;align-items:flex-end}.cg-caption h2{font-size:24px}.cg-controls>div{gap:8px}.cg-controls p{font-size:10px}.cg-controls p span{margin-left:8px}.cg-stage.is-list .cg-fallback{padding:24px 16px;grid-template-columns:1fr}.cg-detail-bar{padding:12px 16px}.cg-detail-content{padding:32px 16px 64px}.cg-detail-images{gap:20px}}
@media(prefers-reduced-motion:reduce){.cg-detail-content{animation:none}}

.cg-card-placeholder{height:36svh;background:#191919;border:1px solid #333;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:24px;font-size:24px}.cg-card-placeholder small{font-size:12px;color:#aaa}

.creative-gallery h1,.creative-gallery h2{color:#eee!important}

html:has(.creative-gallery){background:#080808!important}
body:has(main.creative-gallery){color-scheme:dark}
body .creative-gallery button,body .creative-gallery button:hover,body .creative-gallery button:active,body .creative-gallery input,body .creative-gallery input:focus,body .creative-gallery select{background:transparent!important;box-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
body .creative-gallery .cg-detail{background:#080808!important;color:#eee!important;box-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
body .creative-gallery small{color:#aaa!important}

body:has(main.creative-gallery) .site-nav{grid-template-columns:minmax(240px,1fr) auto 54px}
body:has(main.creative-gallery) .site-nav nav{grid-template-columns:repeat(4,minmax(70px,110px))}
body:has(main.creative-gallery) .site-nav .brand{white-space:nowrap;flex-shrink:0}
@media(max-width:767px){body:has(main.creative-gallery) .site-nav{grid-template-columns:minmax(0,1fr) 50px}body:has(main.creative-gallery) .site-nav nav{grid-template-columns:repeat(4,minmax(0,1fr))}body:has(main.creative-gallery) .site-nav .account-icon{grid-column:2}}

/* Course identity belongs to this gallery only; omit the auxiliary control block. */
.cg-bottom{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px}
.cg-course-name{grid-column:2;text-align:center;font-size:clamp(18px,2.1vw,32px);letter-spacing:.04em;color:#ddd;margin:0;line-height:1.5}
@media(max-width:640px){.cg-bottom{grid-template-columns:1fr;gap:16px}.cg-course-name{grid-column:1;grid-row:1;text-align:left;font-size:18px}.cg-caption{grid-row:2}}

/* Keep the work title on the card; WebGL draws it into the rotating preview texture. */
.cg-fallback .cg-card{position:relative}
.cg-fallback .cg-card>span{position:absolute;left:0;right:0;bottom:0;padding:32px 16px 16px;text-align:center;color:#fff!important;font-size:clamp(16px,2vw,26px);background:linear-gradient(transparent,#0008);text-shadow:0 1px 8px #0009}
.cg-bottom{display:block;text-align:center}
.cg-bottom .cg-course-name{text-align:center}

.cg-tabs a{display:inline-flex;align-items:center;min-height:44px;padding:8px 12px;border-bottom:1px solid #ddd;color:#eee}

body .home-intro-img-wrap,body .home-intro-body,body .home-map-content-wrap,body .home-map-intro{display:none!important}
body .home-intro-grid{display:block!important;height:auto!important;min-height:0!important;padding:0!important}
body .home-intro,body .home-intro-wrap{height:auto!important;min-height:0!important;padding:0!important}
body .panda-home-courses{background:#fff!important;color:#252a30!important;--muted:#59616a;padding:48px 40px!important;min-height:85svh}
body .panda-home-courses :is(h1,h2,button,input,select,a){color:#252a30!important}
body .panda-home-courses :is(button,input,select){background:#fff!important}
body .panda-home-courses :is(button,a,input,select):focus-visible{outline:2px solid #456275!important}
body .panda-home-courses .cg-stage,body .panda-home-courses .cg-fallback,body .panda-home-courses canvas{background:#fff!important}
body .panda-home-courses .cg-filters{border-color:#d5dbe0}
body .panda-home-courses .cg-detail,body .panda-home-courses .cg-detail-bar{background:#fff!important;color:#252a30!important}
body .panda-home-courses .cg-detail-copy p,body .panda-home-courses .cg-detail-copy small,body .panda-home-courses .cg-detail-bar b{color:#59616a}
body .panda-home-courses .cg-detail-images img{background:transparent}
body .panda-home-courses .cg-bottom{color:#59616a}
body .panda-downloads{grid-template-columns:minmax(170px,.65fr) minmax(0,3fr);gap:32px;align-items:start}
body .panda-home-download-links{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;min-width:0}
body .panda-home-download-links>a{display:flex;flex-direction:column;align-items:flex-start;gap:20px;padding:24px 16px;min-height:165px;background:#fff;border:1px solid #d9dfe4;color:#252a30;text-decoration:none}
body .panda-home-download-links strong{font-size:19px;font-weight:500;line-height:1.5;overflow-wrap:anywhere}
body .panda-home-download-links>a>span{font-size:12px;color:#59616a}
body .panda-home-download-links>a>span:last-child{align-self:flex-end;margin-top:auto;font-size:20px}
@media(max-width:1100px){body .panda-downloads{grid-template-columns:1fr}body .panda-home-download-links{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:767px){body .panda-home-courses{padding:32px 16px!important}body .panda-home-download-links{grid-template-columns:repeat(2,minmax(0,1fr))}body .panda-home-download-links>a{min-height:140px;padding:20px 16px}}

body .panda-home-courses .cg-course-name{color:#59616a!important}

/* The modal owns its native scroll; homepage smooth scrolling must not consume it. */
body .creative-gallery .cg-detail{overflow-y:auto!important;overflow-x:hidden!important;overscroll-behavior:contain;touch-action:pan-y;-webkit-overflow-scrolling:touch;max-height:100dvh;height:100dvh}
body .creative-gallery .cg-detail-content{touch-action:pan-y;min-height:100%}
@media(max-width:1100px){
 body .creative-gallery{color-scheme:light;--muted:#59616a;background:#fff!important;color:#252a30!important}
 body .creative-gallery :is(h1,h2,h3,button,input,select,a){color:#252a30!important}
 body .creative-gallery :is(button,input,select){background:#fff!important}
 body .creative-gallery :is(.cg-stage,.cg-fallback,canvas,.cg-detail,.cg-detail-bar){background:#fff!important;color:#252a30!important}
 body .creative-gallery :is(.cg-detail-copy p,.cg-detail-copy small,.cg-detail-bar b,.cg-course-name,.cg-heading p,.cg-detail-images figcaption){color:#59616a!important}
 body:has(main.creative-gallery){background:#fff!important;color:#252a30!important}
 body:has(main.creative-gallery) .site-nav{background:#f8fafbeF!important;color:#252a30!important}
 body:has(main.creative-gallery) .site-nav a{color:#252a30!important}
}


body .home-hero .panda-single-hero{width:100%;height:100svh!important;min-height:100svh}
body .home-hero .panda-single-hero .panda-slide-track{transform:none!important;width:100%;height:100%}
body .home-hero .panda-single-hero .panda-slide{width:100%;flex:0 0 100%;height:100%}
body .home-hero .panda-single-hero .panda-slide img{width:100%;height:100%;object-fit:cover!important;object-position:center}
body .panda-single-hero :is(.panda-slide-arrow,.panda-slide-meter){display:none!important}
