.gallery-hero{position:relative;padding-top:clamp(7.5rem,13vw,11rem);padding-bottom:clamp(3.5rem,7vw,6rem);overflow:hidden}.gallery-hero:after{content:"";position:absolute;top:28%;right:-10rem;width:32rem;height:22rem;border-radius:50%;background:#4c8dff2e;filter:blur(70px);pointer-events:none}.gallery-hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(19rem,.85fr);align-items:end;gap:clamp(2rem,7vw,6rem)}.gallery-hero h1{max-width:11ch;margin-top:.8rem;font-size:clamp(3.2rem,8.5vw,7.2rem);line-height:.85;letter-spacing:-.075em;text-wrap:balance}.gallery-hero h1 span{color:transparent;background:linear-gradient(95deg,#f4f7fb,#7baaff 48%,#b59bff);background-clip:text;-webkit-background-clip:text}.gallery-hero-copy{padding-bottom:.4rem}.gallery-hero-copy p{color:var(--color-ink-soft);font-size:clamp(1rem,2vw,1.2rem)}.gallery-hero-copy .soft-button{margin-top:1.5rem}.gallery-hero-copy .gallery-profile-link{margin-top:1rem;font-size:.82rem}.gallery-section{position:relative}.gallery-toolbar{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;margin-bottom:1.4rem;padding-right:9rem}.gallery-toolbar>p{color:var(--color-mute);font-size:.82rem;font-weight:720}.gallery-filters{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.55rem}.gallery-filter{min-height:2.75rem;padding:.65rem .9rem;border:1px solid var(--studio-line);border-radius:999px;color:var(--color-mute);background:#ffffff09;font-size:.78rem;font-weight:750;-webkit-tap-highlight-color:transparent;transition:color .16s ease,border-color .16s ease,background-color .16s ease,transform .16s ease}.gallery-filter:hover,.gallery-filter:focus-visible{color:var(--color-ink);border-color:#7eabff8c;transform:translateY(-1px)}.gallery-filter[aria-pressed=true]{color:var(--color-ink);border-color:#7eabff9e;background:#4c8dff29}.animated-gallery{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-auto-flow:dense;gap:1rem}.gallery-card{--scene-one: #4c8dff;--scene-two: #8b5cf6;position:relative;grid-column:span 4;min-height:23rem;overflow:hidden;padding:0;border:1px solid var(--studio-line);border-radius:clamp(1.25rem,3vw,2rem);color:var(--color-ink);background:#0b1729;box-shadow:0 24px 55px #00000040;text-align:left;animation:gallery-enter .7s cubic-bezier(.2,.75,.25,1) both;animation-delay:calc(var(--gallery-index) * 65ms);-webkit-tap-highlight-color:transparent}.gallery-card[hidden]{display:none}.gallery-card.gallery-replay{animation:gallery-enter .52s cubic-bezier(.2,.75,.25,1) both}.gallery-wide{grid-column:span 8}.gallery-tall{min-height:31rem}.gallery-media,.gallery-media>img,.gallery-media>video,.gallery-scene{position:absolute;inset:0;width:100%;height:100%}.gallery-media>img,.gallery-media>video{object-fit:cover;transition:transform .7s cubic-bezier(.2,.75,.25,1),filter .4s ease}.gallery-scene{display:block;overflow:hidden;background:radial-gradient(circle at 50% 18%,color-mix(in srgb,var(--scene-one) 66%,white),transparent 23%),radial-gradient(circle at 76% 55%,color-mix(in srgb,var(--scene-two) 65%,transparent),transparent 38%),linear-gradient(150deg,color-mix(in srgb,var(--scene-one) 30%,#101d31),#07111f 72%);transition:transform .7s cubic-bezier(.2,.75,.25,1),filter .4s ease}.scene-blue{--scene-one:#4c8dff;--scene-two:#8b5cf6}.scene-violet{--scene-one:#8b5cf6;--scene-two:#d277ff}.scene-cyan{--scene-one:#36b7d9;--scene-two:#4c8dff}.scene-gold{--scene-one:#d69d45;--scene-two:#7d58dd}.scene-rose{--scene-one:#ca6387;--scene-two:#5e7be8}.scene-indigo{--scene-one:#6658df;--scene-two:#31a6d8}.scene-emerald{--scene-one:#35a783;--scene-two:#4c79d8}.scene-cobalt{--scene-one:#2f6fd5;--scene-two:#bc5ad8}.scene-wall{position:absolute;inset:14% 10% 29%;border:1px solid rgba(255,255,255,.15);border-radius:1.5rem;background:linear-gradient(145deg,#ffffff1a,#ffffff04);box-shadow:inset 0 0 70px color-mix(in srgb,var(--scene-one) 28%,transparent)}.scene-table{position:absolute;right:10%;bottom:15%;left:10%;height:22%;border:1px solid rgba(255,255,255,.18);border-radius:50%;background:linear-gradient(180deg,#ffffff2e,#ffffff0b);box-shadow:0 28px 48px #00000085;transform:perspective(360px) rotateX(58deg)}.scene-person{position:absolute;z-index:2;bottom:25%;width:14%;aspect-ratio:.72;border-radius:50% 50% 34% 34%;background:linear-gradient(180deg,#d4def0 0 22%,color-mix(in srgb,var(--scene-one) 44%,#17243a) 23%);box-shadow:0 15px 25px #0000006b}.person-one{left:23%}.person-two{right:23%}.person-three{left:43%;display:none}.gallery-wide .person-one{left:28%}.gallery-wide .person-two{right:28%}.gallery-wide .person-three{display:block}.scene-light{position:absolute;z-index:1;top:12%;width:4rem;height:4rem;border:1px solid rgba(255,255,255,.34);border-radius:50%;background:color-mix(in srgb,var(--scene-one) 60%,white);box-shadow:0 0 65px 22px color-mix(in srgb,var(--scene-one) 46%,transparent);opacity:.68}.light-one{left:12%}.light-two{right:12%;background:color-mix(in srgb,var(--scene-two) 58%,white)}.gallery-overlay{position:absolute;inset:auto 0 0;z-index:4;display:flex;min-height:54%;flex-direction:column;justify-content:flex-end;padding:clamp(1.1rem,3vw,1.6rem);background:linear-gradient(transparent,#050c16d1 38%,#050c16f7)}.gallery-tag{color:var(--color-accent-soft);font-size:.68rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.gallery-overlay strong{margin-top:.45rem;font-size:clamp(1.25rem,2.5vw,1.75rem);letter-spacing:-.035em}.gallery-caption{max-width:36rem;margin-top:.45rem;color:var(--color-ink-soft);font-size:.82rem}.gallery-open{margin-top:.8rem;color:var(--color-accent-soft);font-size:.72rem;font-weight:760;opacity:0;transform:translateY(.4rem);transition:opacity .2s ease,transform .2s ease}.gallery-card:hover .gallery-scene,.gallery-card:hover .gallery-media>img,.gallery-card:hover .gallery-media>video,.gallery-card:focus-visible .gallery-scene,.gallery-card:focus-visible .gallery-media>img,.gallery-card:focus-visible .gallery-media>video{transform:scale(1.045);filter:saturate(1.12)}.gallery-card:hover .gallery-open,.gallery-card:focus-visible .gallery-open{opacity:1;transform:translateY(0)}.gallery-cta{display:flex;align-items:center;justify-content:space-between;gap:2rem;margin-top:1.25rem;padding:clamp(1.3rem,4vw,2rem)}.gallery-cta>div{max-width:46rem}.gallery-cta h2{margin-top:.7rem;font-size:clamp(1.55rem,4vw,2.5rem);letter-spacing:-.045em}.gallery-cta p{margin-top:.55rem;color:var(--color-mute)}.gallery-cta .soft-button{flex:0 0 auto}.gallery-lightbox{width:min(68rem,calc(100vw - 2rem));max-width:none;max-height:calc(100svh - 2rem);overflow:visible;padding:0;border:1px solid rgba(255,255,255,.18);border-radius:1.75rem;color:var(--color-ink);background:#07111ff7;box-shadow:0 40px 120px #000000b8}.gallery-lightbox::backdrop{background:#02070ed1;backdrop-filter:blur(14px)}.gallery-lightbox[open]{animation:lightbox-in .24s ease both}.lightbox-shell{position:relative;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(17rem,.75fr);overflow:hidden;border-radius:inherit}.lightbox-media{position:relative;min-height:min(72svh,40rem);background:#091527}.lightbox-media .gallery-media,.lightbox-media .gallery-scene{position:absolute;inset:0}.lightbox-copy{align-self:end;padding:clamp(1.5rem,4vw,2.5rem)}.lightbox-copy h2{margin-top:.65rem;font-size:clamp(1.7rem,4vw,3rem);line-height:.95;letter-spacing:-.05em}.lightbox-copy p{margin-top:.85rem;color:var(--color-mute)}.lightbox-close{position:absolute;z-index:5;top:.8rem;right:.8rem;width:2.75rem;height:2.75rem;border:1px solid rgba(255,255,255,.18);border-radius:50%;color:var(--color-ink);background:#07111fc7;font-size:1.5rem;line-height:1}.lightbox-nav{position:absolute;right:1.5rem;bottom:1rem;display:flex;gap:.6rem}.lightbox-nav button{min-height:2.75rem;padding:.55rem .75rem;border:0;color:var(--color-accent-soft);background:transparent;font-size:.76rem;font-weight:750}@keyframes gallery-enter{0%{opacity:0;transform:translateY(1.6rem) scale(.985)}to{opacity:1;transform:none}}@keyframes lightbox-in{0%{opacity:0;transform:translateY(.8rem) scale(.985)}to{opacity:1;transform:none}}@media(max-width:900px){.gallery-hero-grid{grid-template-columns:1fr;align-items:start}.gallery-hero-copy{max-width:38rem}.gallery-card{grid-column:span 6}.gallery-wide{grid-column:span 12}.gallery-toolbar{padding-right:4rem}.lightbox-shell{grid-template-columns:1fr;max-height:calc(100svh - 2rem);overflow-y:auto}.lightbox-media{min-height:50svh}.lightbox-copy{padding-bottom:4.5rem}}@media(max-width:640px){.gallery-hero{padding-top:7.9rem;padding-bottom:3.5rem}.gallery-hero h1{font-size:clamp(2.75rem,14vw,4.4rem)}.gallery-hero-copy .soft-button{width:100%}.gallery-toolbar{align-items:start;flex-direction:column;padding-right:0}.gallery-filters{justify-content:flex-start;flex-wrap:wrap;width:100%;padding:0;overflow:visible;scroll-snap-type:none}.gallery-filters::-webkit-scrollbar{display:none}.gallery-filter{flex:0 0 auto;scroll-snap-align:start}.animated-gallery{gap:.75rem}.gallery-card,.gallery-wide,.gallery-tall{grid-column:span 12;min-height:20.5rem}.gallery-overlay{min-height:60%;padding:1.15rem}.gallery-open{opacity:1;transform:none}.gallery-cta{align-items:stretch;flex-direction:column}.gallery-cta .soft-button{width:100%}.gallery-lightbox{width:calc(100vw - 1rem);max-height:calc(100svh - 1rem);border-radius:1.2rem}.lightbox-shell{max-height:calc(100svh - 1rem)}.lightbox-media{min-height:45svh}.lightbox-copy{padding:1.2rem 1.2rem 4.25rem}.lightbox-nav{right:.8rem;bottom:.55rem;left:.8rem;justify-content:space-between}.gallery-hero:after{display:none}.gallery-card,.gallery-card.gallery-replay,.gallery-lightbox[open]{animation:none}.gallery-media>img,.gallery-media>video,.gallery-scene,.gallery-open,.gallery-filter{transition:none}.gallery-lightbox::backdrop{backdrop-filter:none}}@media(max-height:560px)and (orientation:landscape){.gallery-hero{padding-top:3rem;padding-bottom:2.5rem}.gallery-hero-grid{grid-template-columns:1.1fr .9fr;gap:1.5rem}.gallery-hero h1{font-size:clamp(2.35rem,6vw,3.2rem)}.gallery-hero-copy p{font-size:.88rem}.gallery-hero-copy .soft-button{min-height:2.75rem;margin-top:.75rem;padding-block:.6rem}.lightbox-shell{grid-template-columns:1.2fr .8fr;max-height:calc(100svh - 1rem)}.lightbox-media{min-height:calc(100svh - 1rem)}.lightbox-copy{padding:1.15rem 1.15rem 3.6rem}}@media(prefers-reduced-motion:reduce){.gallery-card,.gallery-card.gallery-replay,.gallery-lightbox[open]{animation:none}.gallery-scene,.gallery-media>img,.gallery-media>video,.gallery-open{transition:none}}
