/* v0.9 ORIGINAL CONCEPT GALLERY — images are original concept art, not videos */
:root{--gallery-glow:#f14caf}
.hero-gallery-link{display:inline-flex;align-items:center;gap:12px;margin-top:15px;font-size:12px;font-weight:800;color:#6ef4ed;letter-spacing:.4px;border-bottom:1px solid #6ef4ed66;padding-bottom:7px}
.hero-gallery-link:hover{color:#fff}
.gallery-head{display:flex;justify-content:space-between;align-items:end;gap:32px;margin:0 0 30px}
.gallery-head>div{flex:1.15}.gallery-head>p{max-width:390px;line-height:1.75;color:#cdbbd2;font-size:15px;margin:0 0 7px}
.gallery-head-sticker{display:inline-block;background:#ff48af;color:#231025;transform:rotate(-2deg);font:900 10px 'Space Grotesk',sans-serif;letter-spacing:1.2px;padding:9px 15px;margin:0 0 17px;box-shadow:5px 5px 0 #3febea}
.gallery-controls{display:flex;gap:9px;flex-wrap:wrap;margin:0 0 28px}
.gallery-filter{background:#20162a;border:1px solid #ffffff34;border-radius:999px;color:#f7eafa;font-size:12px;font-weight:800;padding:12px 19px;transition:background .2s,transform .2s,box-shadow .2s}
.gallery-filter:hover{transform:translateY(-2px);border-color:#f56ac4}
.gallery-filter.is-active{color:#170c20;background:linear-gradient(110deg,#51f5e8,#84f9e0);border-color:transparent;box-shadow:0 5px 25px #48e9d345}
.concept-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;align-items:stretch}
.concept-card{background:linear-gradient(155deg,#21142d,#120e1c 75%);border:1px solid #ffffff30;border-radius:20px;overflow:hidden;min-width:0;transition:transform .25s,border-color .25s,box-shadow .25s;position:relative}
.concept-card:nth-child(2){--gallery-glow:#ffab62}.concept-card:nth-child(3){--gallery-glow:#fe7bd1}.concept-card:nth-child(4){--gallery-glow:#65e5e6}
.concept-card:hover{transform:translateY(-7px);border-color:var(--gallery-glow);box-shadow:0 20px 48px #0009,0 0 30px color-mix(in srgb,var(--gallery-glow) 23%,transparent)}
.concept-card[hidden]{display:none!important}
.concept-media{aspect-ratio:4/5;overflow:hidden;position:relative;background:#25192f}
.concept-media:after{content:'';position:absolute;inset:auto 0 0;height:47%;background:linear-gradient(0deg,#14091d99,transparent);pointer-events:none}
.concept-media img{width:100%;height:100%;object-fit:cover;transition:transform .55s ease-out,filter .55s}
.concept-card:hover img{transform:scale(1.055);filter:saturate(1.12)}
.concept-index{position:absolute;z-index:1;left:13px;top:13px;background:#100c1ac7;border:1px solid #ffffff42;border-radius:99px;font-weight:900;color:#fff;font-size:9px;letter-spacing:1.2px;padding:8px 12px}
.concept-art-label{position:absolute;z-index:1;left:11px;bottom:12px;font-size:9px;font-weight:900;letter-spacing:1px;color:#fff;background:#13091acc;border:1px solid #ffffff3b;padding:8px 10px;border-radius:6px}
.concept-info{padding:18px 17px 20px}.concept-category{font:800 10px 'DM Sans',sans-serif;letter-spacing:1.7px;text-transform:uppercase;color:var(--gallery-glow)}
.concept-info h3{font:700 clamp(18px,1.8vw,24px)/1.07 'Space Grotesk',sans-serif;letter-spacing:-.7px;margin:12px 0 9px;color:#fff}
.concept-info p{font-size:12px;line-height:1.65;color:#c6b8cb;min-height:39px;margin:0 0 22px}
.concept-actions{display:flex;gap:8px;flex-direction:column;align-items:stretch}.concept-remix{display:flex;justify-content:space-between;align-items:center;gap:8px;background:var(--gallery-glow);border:0;border-radius:9px;padding:13px 12px;color:#150c19;font:900 12px 'DM Sans',sans-serif;transition:filter .2s}.concept-remix:hover{filter:brightness(1.15)}.concept-remix span{font-size:17px}
.concept-details{color:#fff;opacity:.78;font-weight:800;font-size:11px;text-align:center;padding:8px}.concept-details:hover{opacity:1;color:#66f0e9}
.gallery-bottom{display:flex;align-items:center;justify-content:space-between;gap:22px;margin:31px 0 0;border-top:1px solid #ffffff23;padding-top:25px}.gallery-bottom p{font-size:12px;line-height:1.65;color:#bcaac7;max-width:600px}.gallery-bottom p strong{color:#e7d4e7}.gallery-more{font-size:12px;padding:15px 18px;white-space:normal;text-align:center}
/* editorial page with truly distinct storyboard content */
.gallery-article-hero{padding-top:83px;padding-bottom:79px}.gallery-article-hero h1{font:700 clamp(55px,7.7vw,104px)/.95 'Space Grotesk',sans-serif;letter-spacing:-5px;margin:20px 0 24px}.gallery-article-hero>p{color:#d3c1d4;line-height:1.8;max-width:780px;font-size:17px}.gallery-article-hero strong{color:#fff}.gallery-article-quick{display:flex;gap:11px;flex-wrap:wrap;margin-top:28px}.gallery-article-quick a{background:#20142c;border:1px solid #ffffff36;border-radius:100px;padding:11px 17px;font-weight:800;font-size:12px}.gallery-article-quick a:hover{border-color:#52f1e2;color:#59f7e8}
.gallery-story-list{display:grid;gap:80px;padding-bottom:110px}.gallery-story{display:grid;grid-template-columns:.92fr 1.08fr;gap:7%;align-items:center;scroll-margin-top:25px}.gallery-story:nth-child(even) .gallery-story-image{order:2}
.gallery-story-image{position:relative;border-radius:24px;overflow:hidden;box-shadow:0 18px 72px #0009,0 0 38px #ff42af15;border:1px solid #ffffff2b;aspect-ratio:4/5}.gallery-story-image img{width:100%;height:100%;object-fit:cover}
.gallery-story-text h2{font:700 clamp(35px,4vw,61px)/1.03 'Space Grotesk',sans-serif;letter-spacing:-2px;margin:18px 0}.gallery-story-text .gallery-story-lead{font-size:17px;line-height:1.8;color:#eee0ef}.gallery-story-text h3{font-size:17px;margin:23px 0 10px}.gallery-story-text>p,.gallery-story-text li{font-size:14px;line-height:1.8;color:#ccbed2}.gallery-story-text ol{padding-left:20px}.gallery-small{border-left:3px solid #fc60b3;background:#25142d;padding:12px 15px;border-radius:0 9px 9px 0}.gallery-small strong{color:#fff}.gallery-story-text .button{font-size:13px;padding:15px 20px;margin-top:12px}
.gallery-article-footer{padding-bottom:100px;text-align:center}.gallery-article-footer h2{font:700 clamp(35px,5vw,68px)/1.02 'Space Grotesk',sans-serif;letter-spacing:-2px;margin:10px auto}.gallery-article-footer p{max-width:660px;margin:20px auto 26px;color:#c4b5cc;line-height:1.75}
:where(.gallery-filter,.concept-remix,.concept-details,.gallery-article-quick a):focus-visible{outline:3px solid #6ff6eb;outline-offset:3px}
@media(max-width:1050px){.concept-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.concept-info h3{font-size:25px}.concept-info p{min-height:0}.gallery-head{align-items:start}}
@media(max-width:760px){.gallery-head{display:block}.gallery-head>p{margin:21px 0 0}.gallery-bottom{flex-direction:column;align-items:stretch}.gallery-more{width:100%}.gallery-story{grid-template-columns:1fr;gap:23px}.gallery-story:nth-child(even) .gallery-story-image{order:0}.gallery-story-image{max-width:550px}.gallery-story-list{gap:58px}.gallery-article-hero{padding:66px 0}.gallery-article-hero h1{letter-spacing:-3px}.gallery-story-text h2{margin-top:12px}}
@media(max-width:500px){.concept-grid{grid-template-columns:1fr;gap:18px}.concept-media{aspect-ratio:4/4.3}.concept-info{padding:20px}.concept-info h3{font-size:28px}.concept-info p{font-size:14px}.concept-actions{flex-direction:row;align-items:center}.concept-remix{flex:1}.concept-details{max-width:90px}.gallery-filter{padding:11px 13px;font-size:11px}.gallery-controls{gap:7px}.gallery-head-sticker{font-size:9px}.gallery-article-hero h1{font-size:clamp(43px,11vw,66px);letter-spacing:-2.5px}.gallery-article-hero>p{font-size:15px}.gallery-story-text h2{font-size:37px}.gallery-article-footer{padding-bottom:66px}}
@media(prefers-reduced-motion:reduce){.concept-card,.concept-media img,.gallery-filter{transition:none!important}.concept-card:hover{transform:none}.concept-card:hover img{transform:none}}

/* v0.9: visual deck, more creative directions and simple surprise interaction */
.visual-deck-section{padding:54px 0 50px;background:linear-gradient(180deg,#100c1c 0%,#16101f 70%,transparent 100%);border-bottom:1px solid #ffffff17;overflow:hidden}
.visual-deck-header{display:flex;align-items:end;gap:30px;margin-bottom:26px;flex-wrap:wrap}
.visual-deck-header .kicker{width:100%}.visual-deck-header h2{font:800 clamp(28px,3.2vw,49px)/1.05 'Space Grotesk',sans-serif;letter-spacing:-2px;margin:0;flex:1}
.visual-deck-header p{font-size:13px;line-height:1.75;color:#ddcce0;max-width:360px;margin:0}
.visual-deck{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}
.visual-deck-card{aspect-ratio:1.3;min-width:0;border:1px solid #ffffff39;border-radius:16px;position:relative;overflow:hidden;background:#20152b;box-shadow:0 12px 32px #0006;transition:transform .2s,border-color .2s}
.visual-deck-card img{width:100%;height:100%;object-fit:cover;object-position:center 38%;transition:transform .6s ease}
.visual-deck-card:after{content:"";position:absolute;inset:40% 0 0;background:linear-gradient(transparent,#0a061bdc);pointer-events:none}
.visual-deck-card:hover{transform:translateY(-4px);border-color:#ff83d0}.visual-deck-card:hover img{transform:scale(1.07)}
.visual-deck-caption{position:absolute;z-index:2;bottom:13px;left:15px;right:15px;display:flex;justify-content:space-between;align-items:end;gap:7px}
.visual-deck-caption strong{font:800 clamp(11px,1vw,16px)/1.05 'Space Grotesk',sans-serif;color:#fff;text-shadow:0 2px 10px #000}
.visual-deck-caption small{font-size:9px;font-weight:900;color:#6ef4ef;white-space:nowrap}
.visual-deck-note{font-size:10px;color:#afa1bc;margin:14px auto 0}
.gallery-toolbar{display:flex;align-items:start;gap:18px;justify-content:space-between;flex-wrap:wrap;margin-bottom:10px}.gallery-toolbar .gallery-controls{margin-bottom:0;flex:1}
.gallery-surprise{border-radius:999px;border:1px solid #ff60bc8a;color:#ffe7f5;background:linear-gradient(110deg,#512046,#22152f);padding:12px 18px;font-weight:800;font-size:12px;white-space:nowrap;box-shadow:0 0 23px #ff55ac20}
.gallery-surprise:hover{border-color:#fd82d4;background:#50214b}
.gallery-live-count{font-size:11px;color:#b3a5bf;margin:0 0 20px}.gallery-live-count strong{color:#67f5eb}
.concept-card{scroll-margin-top:30px}.concept-card.is-spotlit{outline:3px solid #69f8e8;outline-offset:3px;box-shadow:0 0 40px #45fbe555}
.gallery-accuracy{border-left:3px solid #70efeb;padding:11px 14px;background:#10282b91;border-radius:0 8px 8px 0}
.gallery-accuracy strong{color:#89fff3}
.concept-card:nth-child(5n+1){--gallery-glow:#ff83bf}.concept-card:nth-child(5n+2){--gallery-glow:#ffa663}.concept-card:nth-child(5n+3){--gallery-glow:#fd85cc}.concept-card:nth-child(5n+4){--gallery-glow:#90baff}.concept-card:nth-child(5n){--gallery-glow:#75f2ea}
.visual-deck-card:focus-visible,.gallery-surprise:focus-visible{outline:3px solid #6ff6eb;outline-offset:3px}
@media(max-width:800px){.visual-deck-header h2{flex-basis:100%}.visual-deck-header p{max-width:100%}.visual-deck{gap:11px}.visual-deck-caption{flex-wrap:wrap;left:9px;right:9px;bottom:8px}.visual-deck-caption small{font-size:8px}.visual-deck-card{aspect-ratio:.85}}
@media(max-width:550px){.visual-deck-section{padding:38px 0 30px}.visual-deck-header h2{font-size:32px}.visual-deck{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-left:0;padding-bottom:10px;overscroll-behavior-x:contain;scrollbar-color:#f15ca2 #24132e}.visual-deck-card{flex:0 0 63%;aspect-ratio:1.1;scroll-snap-align:start}.visual-deck-caption{bottom:14px;left:13px;right:13px}.visual-deck-caption strong{font-size:14px}.gallery-toolbar{gap:10px}.gallery-surprise{width:100%}.gallery-article-quick a{font-size:11px}}
@media(prefers-reduced-motion:reduce){.visual-deck-card,.visual-deck-card img{transition:none!important}.visual-deck-card:hover{transform:none!important}.visual-deck-card:hover img{transform:none!important}}
