
#aigc-grid{columns:4;column-gap:24px;min-height:300px}
.aigc-section{padding:62px 0 80px;background:var(--paper);color:var(--ink);scroll-margin-top:0}
.aigc-heading-row{display:flex;align-items:flex-end;justify-content:space-between;gap:50px;margin-bottom:38px}
.aigc-heading-row h2{font:400 clamp(62px,7.4vw,114px)/.95 var(--display);letter-spacing:-.03em}
.aigc-heading-row h2 em{color:var(--ink);display:block}
.aigc-heading-row>div{text-align:right;padding-bottom:5px;font-size:18px}
.aigc-handnote{font:400 32px/1.1 var(--hand);color:var(--accent);transform:rotate(-5deg);margin-top:15px}
.aigc-section-intro{display:flex;justify-content:space-between;gap:30px;padding-top:22px;margin-bottom:32px;font-size:16px}
.aigc-section-intro>span{font-size:11px;color:var(--muted);text-align:right}
.aigc-media-tabs{display:flex;gap:42px;margin:0 0 24px;padding-bottom:13px}
.aigc-media-tab{position:relative;display:flex;align-items:flex-start;gap:10px;padding:0 4px 3px 0;color:var(--muted);font:400 44px/1 var(--display);letter-spacing:-.025em}
.aigc-media-tab[aria-selected=true]{color:var(--ink)}
.aigc-media-tab[aria-selected=true]:after{content:'';position:absolute;bottom:-19px;left:0;right:-3px;height:10px;border-bottom:4px solid var(--yellow);border-radius:50%;transform:rotate(-3deg)}
.aigc-tab-count{font:400 12px/1 var(--body);padding-top:4px;letter-spacing:0;color:var(--muted)}
.aigc-media-tab:focus-visible,.aigc-open:focus-visible,.aigc-filter:focus-visible{outline:2px solid var(--accent);outline-offset:6px}
#aigc-filters{display:flex;flex-wrap:wrap;gap:10px 25px;margin:0 0 26px}
#aigc-filters[hidden]{display:none}
.aigc-filter{padding:4px 0 6px;border-bottom:1px solid transparent;color:var(--muted);font-size:13px}
.aigc-filter[aria-pressed=true]{color:var(--ink);border-bottom-color:var(--ink)}
.aigc-card{break-inside:avoid;display:block;margin:0 0 30px;padding:0;animation:gallery-entry .35s var(--ease) both}
.aigc-open{display:block;position:relative;overflow:hidden;width:100%;padding:0;cursor:zoom-in;background:#e6e5df;text-align:left}
.aigc-open img{display:block;width:100%;height:auto;max-width:100%;object-position:var(--art-position,50% 50%);transition:transform .6s var(--ease)}
.aigc-open:hover img{transform:scale(1.025)}
.aigc-card[data-format=portrait] .aigc-open{aspect-ratio:4/5}
.aigc-card[data-format=square] .aigc-open{aspect-ratio:1}
.aigc-card[data-format=wide] .aigc-open{aspect-ratio:16/9}
.aigc-card[data-format=portrait] .aigc-open img,.aigc-card[data-format=square] .aigc-open img,.aigc-card[data-format=wide] .aigc-open img{height:100%;object-fit:cover}
.aigc-caption{display:flex;align-items:baseline;justify-content:space-between;gap:5px 12px;flex-wrap:wrap;margin-top:11px;color:var(--ink);font-size:12px;line-height:1.5}
.aigc-title{font-weight:500}.aigc-medium{font-size:10px;color:var(--muted)}
.aigc-preview-note{font-size:11px;color:var(--muted);margin-top:12px}
#aigc-grid[data-media=video]{columns:3;column-gap:24px}
.aigc-video-card{position:relative}
.aigc-video-card .aigc-open{cursor:pointer}
.aigc-video-card[data-format=portrait] .aigc-open{aspect-ratio:3/4}
.aigc-video-card .aigc-video-poster{height:100%;object-fit:cover}
.aigc-play{position:absolute;left:50%;top:50%;translate:-50% -50%;display:flex;align-items:center;justify-content:center;width:58px;height:58px;border-radius:50%;background:var(--paper);color:var(--ink);transition:scale .25s}
.aigc-play svg{width:20px;height:20px;margin-left:3px;fill:currentColor;stroke-width:1}
.aigc-open:hover .aigc-play{scale:1.08}
.aigc-video-card .aigc-caption{display:grid;grid-template-columns:1fr auto;gap:3px 10px}
.aigc-video-card .aigc-title{font-size:14px;grid-column:1}
.aigc-video-card .aigc-medium{grid-column:1}
.aigc-duration{font-size:11px;letter-spacing:.04em;grid-column:2;grid-row:1/3;align-self:center;color:var(--muted)}
.aigc-section+.practice-section{border-top:0;padding-top:90px}
@keyframes gallery-entry{from{opacity:0;translate:0 12px}to{opacity:1;translate:0 0}}
body.art-dialog-open{overflow:hidden}
.art-dialog{position:fixed;inset:0;margin:0;border:0;padding:0;width:100%;height:100dvh;max-width:none;max-height:none;background:#151613;color:#f3f2ef;overflow:hidden;overscroll-behavior:contain;font-family:var(--body)}
.art-dialog[open]{display:flex;flex-direction:column}.art-dialog::backdrop{background:#151613}
.art-toolbar,.art-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:23px 4vw;flex:0 0 auto}
.art-title{font:400 18px/1.4 var(--body);overflow-wrap:anywhere}
.art-actions,.art-pagination{display:flex;align-items:center;gap:25px;flex:0 0 auto}
.art-dialog button{background:transparent;color:inherit;cursor:pointer}
.art-actions button{min-height:44px;padding:6px 3px;font-size:14px}
.art-actions button[hidden],.art-image-toggle[hidden],.art-video[hidden]{display:none!important}
.art-close{display:flex;align-items:center;gap:12px}.art-close span{font-size:28px;font-weight:300;line-height:1}
.art-dialog button:focus-visible{outline:2px solid #f5d866;outline-offset:5px}
.art-stage{flex:1 1 auto;min-height:0;position:relative;overflow:hidden;touch-action:pan-y;padding:0 4vw;display:flex;align-items:center;justify-content:center}
.art-image-toggle{display:flex;align-items:center;justify-content:center;width:100%;height:100%;padding:0;cursor:zoom-in!important;overflow:hidden}
.art-image{display:block;width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain;transition:transform .25s;transform-origin:50% 50%}
.art-video{display:block;width:100%;height:100%;max-height:100%;object-fit:contain;background:#10110f}
.art-is-zoomed{touch-action:none}.art-is-zoomed .art-image-toggle{cursor:zoom-out!important}.art-is-zoomed .art-image{transform:scale(1.8)}
.art-bottom{min-height:82px}.art-medium{font-size:13px;opacity:.7}.art-counter{font-size:13px;min-width:62px;text-align:center;white-space:nowrap}
.art-pagination button{display:flex;align-items:center;justify-content:center;width:44px;height:44px;padding:7px}.art-pagination button:disabled{opacity:.25;cursor:default}
.art-pagination svg{width:29px;height:24px;stroke-width:1.4}
.contact-section{position:relative;overflow:hidden;padding-top:160px}
.contact-seam{position:absolute;z-index:1;top:-1px;left:0;right:0;height:var(--seam-height,105px);overflow:hidden;pointer-events:none}
.contact-seam:after{content:'';position:absolute;bottom:0;left:-25%;width:150%;height:750%;border-radius:50%;background:var(--paper)}
.contact-reveal{translate:0 var(--contact-shift,24px);will-change:translate}
@media(max-width:1200px){#aigc-grid{columns:3;column-gap:22px}.aigc-heading-row>div{font-size:16px}}
@media(max-width:900px){.aigc-section{padding-block:50px 60px}.aigc-heading-row{gap:30px}.aigc-heading-row h2{font-size:8.5vw}.aigc-heading-row>div{font-size:14px}.aigc-handnote{font-size:27px}.aigc-section-intro{font-size:14px}#aigc-grid[data-media=video]{columns:2;column-gap:22px}.aigc-section+.practice-section{padding-top:65px}.contact-section{padding-top:130px}}
@media(max-width:640px){#aigc-grid{columns:2;column-gap:16px}.aigc-card{margin-bottom:24px}.aigc-section{padding-block:38px 45px}.aigc-heading-row{display:block;margin-bottom:30px}.aigc-heading-row h2{font-size:15vw}.aigc-heading-row>div{text-align:left;margin-top:25px}.aigc-handnote{font-size:27px;display:inline-block;margin-top:10px;transform:rotate(-3deg)}.aigc-section-intro{display:block;font-size:15px;line-height:1.6;margin-bottom:28px}.aigc-section-intro>span{display:block;text-align:left;margin-top:10px}.aigc-media-tabs{gap:30px;margin-bottom:22px}.aigc-media-tab{font-size:37px}.aigc-tab-count{font-size:10px}.aigc-caption{font-size:11px;gap:3px}.aigc-medium{font-size:9px}.aigc-preview-note{line-height:1.7}#aigc-filters{gap:20px}.aigc-filter{font-size:12px}#aigc-grid[data-media=video]{columns:2;column-gap:16px}.aigc-video-card .aigc-title{font-size:11px}.aigc-video-card .aigc-medium{font-size:9px}.aigc-duration{font-size:9px}.aigc-play{width:44px;height:44px}.aigc-play svg{width:16px;height:16px}.art-toolbar{align-items:flex-start;padding:15px 5vw;gap:15px}.art-title{font-size:15px;padding-top:10px}.art-actions{gap:13px}.art-actions button{font-size:12px}.art-close{gap:6px}.art-close span{font-size:25px}.art-stage{padding:0 3vw}.art-bottom{padding:14px 5vw;gap:10px;min-height:76px}.art-medium{font-size:11px}.art-pagination{gap:8px}.art-pagination button{width:40px}.art-counter{font-size:11px;min-width:48px}.contact-section{padding-top:110px}.aigc-section+.practice-section{padding-top:45px}}
@media(prefers-reduced-motion:reduce){.aigc-open img,.art-image,.aigc-play{transition:none}.aigc-card{animation:none}.contact-reveal{translate:none;will-change:auto}}


/* Each original image card now holds its own three-image carousel. */
.aigc-toolbar{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;margin-bottom:24px}
.aigc-toolbar .aigc-media-tabs{margin:0;min-width:0;flex:0 1 auto}
.aigc-autoplay{display:flex;align-items:center;gap:7px;min-height:39px;padding:7px 0 7px 10px;font-size:12px;color:var(--muted)}
.aigc-autoplay svg{width:16px;height:16px;stroke-width:1.7}
.aigc-autoplay[hidden]{display:none}
.aigc-autoplay:focus-visible{outline:2px solid var(--accent);outline-offset:5px}
.aigc-carousel{position:relative}
.aigc-carousel .aigc-open{aspect-ratio:var(--cover-ratio,1.5)}
.aigc-carousel .aigc-open img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;z-index:0;transition:opacity .55s var(--ease),transform .6s var(--ease)}
.aigc-carousel .aigc-open img.was-active{opacity:1;z-index:1}
.aigc-carousel .aigc-open img.is-active{opacity:1;z-index:2}
.aigc-carousel .art-peek{z-index:4}
.aigc-carousel-nav{position:absolute;top:50%;translate:0 -50%;z-index:5;display:flex;align-items:center;justify-content:center;width:38px;height:38px;padding:8px;border-radius:50%;background:var(--paper);color:var(--ink);opacity:0;pointer-events:none;transition:opacity .2s,scale .25s var(--ease)}
.aigc-carousel-nav svg{width:23px;height:20px}
.aigc-carousel-previous{left:10px}.aigc-carousel-next{right:10px}
.aigc-carousel:hover .aigc-carousel-nav,.aigc-carousel:focus-within .aigc-carousel-nav{opacity:1;pointer-events:auto}
.aigc-carousel-nav:hover{scale:1.08}
.aigc-carousel-nav:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.aigc-slide-status{position:absolute;z-index:3;right:10px;bottom:10px;padding:3px 7px;background:var(--paper);color:var(--ink);font-size:9px;line-height:1.6;letter-spacing:.025em;pointer-events:none}
.aigc-image-card .aigc-caption{display:grid;grid-template-columns:1fr auto;gap:2px 10px}
.aigc-image-card .aigc-title{grid-column:1}
.aigc-image-card .aigc-medium{grid-column:1}
.aigc-image-count{grid-column:2;grid-row:1/3;align-self:center;color:var(--muted);font-size:9px}
@media(hover:none),(pointer:coarse){.aigc-carousel-nav{opacity:1;pointer-events:auto}}
@media(max-width:640px){.aigc-toolbar{gap:10px;margin-bottom:22px}.aigc-autoplay{font-size:11px;padding-left:2px;gap:4px}.aigc-autoplay svg{width:14px;height:14px}.aigc-carousel-nav{width:32px;height:32px;padding:6px}.aigc-carousel-previous{left:6px}.aigc-carousel-next{right:6px}.aigc-slide-status{right:6px;bottom:6px;font-size:8px}.aigc-image-count{font-size:8px}}
@media(max-width:360px){.aigc-toolbar{flex-wrap:wrap}.aigc-autoplay{margin-left:auto}}
@media(prefers-reduced-motion:reduce){.aigc-carousel .aigc-open img,.aigc-carousel-nav{transition:none}}

/* Keep navigation targets stationary while their labels fade in. */
#aigc-media-tabs[data-reveal],#aigc-filters[data-reveal]{transform:none}

/* Video thumbnails retain each source video’s native frame. */
#aigc-grid .aigc-video-card .aigc-open img{object-fit:contain;object-position:center;transform:none}

/* Silent inline video previews retain their native frame. */
#aigc-grid .aigc-video-card .aigc-preview-video{display:block;width:100%;height:100%;max-width:100%;object-fit:contain;pointer-events:none}
.aigc-video-card .is-playing .aigc-play{opacity:0;pointer-events:none}

/* Image navigation sits beside the artwork; empty space dismisses the viewer. */
.art-dialog[data-media=image] .art-stage{padding-inline:86px}
.art-dialog .art-side-nav{position:absolute;z-index:5;top:50%;translate:0 -50%;width:52px;height:52px;padding:12px;display:flex;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.24);border-radius:50%;background:rgba(255,255,255,.06);color:inherit;cursor:pointer}
.art-dialog .art-side-nav:hover{background:rgba(255,255,255,.15)}
.art-side-nav svg{width:28px;height:24px;fill:none;stroke:currentColor;stroke-width:1.4}
.art-stage-previous{left:20px}.art-stage-next{right:20px}
.art-dialog .art-side-nav[hidden]{display:none!important}
.art-dialog .art-side-nav:disabled{opacity:.3;cursor:default}
.art-dialog[data-media=image] .art-pagination>.art-previous,.art-dialog[data-media=image] .art-pagination>.art-next{display:none}
.art-image-toggle{cursor:default!important}
.art-image{cursor:zoom-in}
.art-is-zoomed .art-image-toggle{cursor:default!important}
.art-is-zoomed .art-image{cursor:zoom-out}
@media(max-width:640px){.art-dialog[data-media=image] .art-stage{padding-inline:53px}.art-dialog .art-side-nav{width:40px;height:40px;padding:9px}.art-stage-previous{left:6px}.art-stage-next{right:6px}.art-side-nav svg{width:24px;height:21px}}

/* Personal artwork stays fully visible inside each collection’s native frame. */
#aigc-grid .aigc-carousel .aigc-open img{object-fit:contain}
#aigc-grid .aigc-carousel .aigc-open:hover img{transform:none}

#aigc-grid .aigc-carousel .aigc-open{aspect-ratio:var(--cover-ratio,1.5)}

