.project-media{width:100%;min-width:0;color:var(--foreground);gap:10px;display:grid;container-type:inline-size}.project-media__stage{aspect-ratio:16/9;border:1px solid var(--border-base);background:var(--surface-media);border-radius:10px;flex-shrink:0;width:100%;min-width:0;position:relative;overflow:hidden}.project-media__stage>:is(.project-media__image,.project-media__video-cover,.project-media__example-video,.project-media__player){width:100%;height:100%;position:absolute;inset:0}.project-media__example-video{color:#aaa;background:#000;flex-direction:column;justify-content:center;align-items:center;gap:10px;margin:0;font-size:14px;display:flex}.project-media__example-video small{font-size:12px}.project-media__image{cursor:zoom-in;background:0 0;border:0;width:100%;height:100%;margin:0;padding:0;display:block;position:relative}.project-media .project-media__image img{object-fit:contain;object-position:center;width:100%;max-width:none;height:100%;min-height:0;max-height:none;display:block;position:absolute;inset:0}.project-media__expand{width:36px;height:36px;color:var(--accent-text,var(--magma));background:linear-gradient(135deg, #ff6a351f, transparent), var(--surface);border:1px solid var(--border-hover);pointer-events:none;border-radius:10px;place-items:center;transition:border-color .16s,background .16s,transform .16s;display:grid;position:absolute;bottom:10px;right:10px;box-shadow:0 2px 8px #00000026}.project-media__image:focus-visible .project-media__expand{border-color:var(--magma);background:var(--surface-active)}@media (hover:hover) and (pointer:fine){.project-media__image:hover .project-media__expand{border-color:var(--magma);background:var(--surface-active);transform:translateY(-1px)}}.project-media__gallery{border:1px solid var(--border-base);background:var(--surface);border-radius:9px;min-width:0;padding:9px}.project-media__gallery-heading{color:#fff;font:500 var(--type-label-size,12px)/1.4 var(--font-mono), monospace;letter-spacing:.02em;justify-content:space-between;gap:12px;margin:0 3px 7px;display:flex}html[data-theme=light] .project-media__gallery-heading{color:#000}.project-media__gallery-heading>:last-child{font-variant-numeric:tabular-nums}.project-media__navigation{align-items:center;gap:8px;min-width:0;display:flex}.project-media__arrow{border:1px solid var(--border-base);background:var(--surface);width:36px;height:40px;color:var(--foreground);cursor:pointer;border-radius:7px;flex:0 0 36px;place-items:center;padding:0;display:grid}.project-media__thumbnails{overscroll-behavior-x:contain;scroll-snap-type:x proximity;scrollbar-width:thin;flex:1;gap:7px;min-width:0;padding:3px;display:flex;overflow-x:auto}.project-media__thumbnail{border:1px solid var(--border-strong);background:var(--surface);height:44px;color:var(--text-secondary);cursor:pointer;scroll-snap-align:start;border-radius:6px;flex:0 0 65px;margin:0;padding:3px;transition:border-color .16s,background .16s;overflow:hidden}.project-media .project-media__thumbnail img{object-fit:contain;width:100%;height:100%;min-height:0;display:block}.project-media__thumbnail[aria-pressed=true]{border:2px solid var(--magma);color:var(--foreground);background:#ff6a351f}.project-media__thumbnail--video{justify-content:center;align-items:center;gap:3px;font-size:10px;display:flex}:is(.project-media button:focus-visible,.project-media a:focus-visible){outline:2px solid var(--magma);outline-offset:3px}.project-media :is(.project-media__image,.project-media__thumbnail):focus-visible{outline-offset:-3px}.project-media__caption{overflow-wrap:anywhere;color:var(--text-secondary);font:11px/1.5 var(--font-mono), monospace;flex-wrap:wrap;justify-content:space-between;gap:8px;display:flex}.project-media__video-cover{background:radial-gradient(ellipse at 50% 120%, #ff6a353b, transparent 70%), var(--surface-media);flex-direction:column;justify-content:center;align-items:center;gap:14px;height:100%;display:flex}.project-media__eyebrow{font:10px/1.4 var(--font-mono), monospace;letter-spacing:.14em;color:var(--text-secondary)}.project-media__video-poster{object-fit:contain;width:100%;height:100%;position:absolute;inset:0}.project-media__video-cover--poster:after{content:"";pointer-events:none;background:linear-gradient(#0000003d,#000000a3);position:absolute;inset:0}.project-media__video-cover--poster>:not(.project-media__video-poster){z-index:1;position:relative}.project-media__video-cover--poster :is(.project-media__eyebrow,small){color:#fff}.project-media__video-cover--poster .project-media__play{color:#fff;background:#121214d9}.project-media__play{border:1px solid var(--magma);color:var(--foreground);cursor:pointer;white-space:normal;text-align:center;overflow-wrap:anywhere;background:#ff6a3521;border-radius:9px;align-items:center;gap:12px;min-width:0;max-width:calc(100% - 16px);padding:14px 22px;font-size:15px;text-decoration:none;display:flex}.project-media__play>svg{flex-shrink:0}.project-media__video-cover small{color:var(--text-secondary);font-size:11px}.project-media__video-consent{text-align:center;justify-content:safe center;gap:8px;padding:12px;overflow:auto}.project-media__video-consent small{max-width:36ch;font-size:12px;line-height:1.4}.project-media__video-consent .project-media__play{min-height:44px;font-size:var(--type-action-compact-size);font-weight:var(--type-action-weight);justify-content:center;padding:10px 14px;line-height:1.4}.project-media__player{background:#080808;flex-direction:column;height:100%;display:flex}.project-media__player video,.project-media__player iframe{object-fit:contain;border:0;flex:1;width:100%;height:100%;min-height:0;display:block}.project-media__playback-fallback{text-align:center;color:#fff;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:8px;min-height:0;padding:12px;display:flex;overflow:auto}.project-media__playback-fallback p{margin:0;font-size:13px;line-height:1.4}.project-media__playback-fallback>span{color:#aaa;font-size:11px;line-height:1.4}.project-media__playback-fallback .project-media__play{color:#fff;min-height:44px;font-size:var(--type-action-compact-size);font-weight:var(--type-action-weight);padding:10px 14px;line-height:1.4}.project-media__source{text-align:right;color:var(--text-secondary);text-underline-offset:3px;justify-self:end;padding:3px 0;font-size:11px}.project-media__source:hover{color:var(--foreground)}.project-media__unavailable{text-align:center;padding:20px}.project-media__dialog{border:1px solid var(--border-strong);background:var(--background);width:min(1400px,100vw - 32px);max-width:none;max-height:calc(100dvh - 32px);color:var(--foreground);overscroll-behavior:contain;border-radius:14px;margin:auto;padding:18px}.project-media__dialog::backdrop{background:#000000d9}.project-media__dialog-bar,.project-media__dialog-nav{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.project-media__dialog-bar{margin-bottom:14px;font-size:13px}.project-media .project-media__dialog>img{object-fit:contain;width:100%;height:min(70dvh,800px);min-height:0;display:block}.project-media__dialog-nav{margin-top:14px}.project-shot:has(.project-media){align-self:start;min-height:0;padding:clamp(12px,2vw,22px)}@media (max-width:600px){.project-media__expand{width:44px;height:44px}.project-media__arrow{flex-basis:44px;width:44px;height:44px}.project-media__navigation{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;display:grid}.project-media__navigation>.project-media__arrow{grid-row:2}.project-media__navigation>.project-media__arrow:last-child{grid-column:2;justify-self:end}.project-media__thumbnails{flex-wrap:wrap;grid-area:1/1/auto/-1;overflow:visible}.project-media__thumbnail{flex-basis:72px;height:46px}.project-media__dialog{width:calc(100vw - 16px);padding:12px}}@container (width<=300px){.project-media__video-cover{gap:6px}.project-media__play{gap:8px;min-height:44px;padding:8px 10px;font-size:12px;line-height:1.4}.project-media__eyebrow{letter-spacing:.06em;font-size:9px}.project-media__video-cover small{overflow-wrap:anywhere;max-width:calc(100% - 16px);font-size:10px;line-height:1.4}}@media (prefers-reduced-motion:reduce){.project-media__thumbnail,.project-media__expand{transition:none}.project-media__image:hover .project-media__expand{transform:none}}
