.polybag-preview{aspect-ratio:448/552;outline-offset:4px;width:100%;position:relative}.polybag-stage{cursor:grab;position:absolute;inset:0}.polybag-stage:active{cursor:grabbing}.polybag-stage canvas{touch-action:none;width:100%;height:100%;display:block}.polybag-loading{pointer-events:none;place-items:center;margin:0;display:grid;position:absolute;inset:0}.polybag-hint{text-align:center;margin:16px 0 0}.shirt-preview{min-width:0;margin:0}.shirt-toggle{cursor:pointer;background:0 0;border:0;width:100%;padding:0;display:grid}.shirt-toggle>img,.shirt-toggle>picture{grid-area:1/1;width:100%;height:auto}.shirt-toggle .shirt-front,.shirt-toggle .shirt-back{grid-area:1/1;width:100%;height:auto;transition:opacity .2s;display:block}.shirt-toggle .shirt-back,.shirt-toggle.is-flipped .shirt-front{opacity:0}.shirt-toggle.is-flipped .shirt-back{opacity:1}.shirt-hint{text-align:center;margin-top:16px}@media (hover:hover){.shirt-toggle:hover .shirt-front{opacity:0}.shirt-toggle:hover .shirt-back{opacity:1}}@media (prefers-reduced-motion:reduce){.shirt-toggle .shirt-front,.shirt-toggle .shirt-back{transition:none}}.website-showcase{gap:32px;margin-bottom:32px;display:grid}.website-browser{border:1px solid var(--grey-500);background:var(--ink);border-radius:18px;display:block;overflow:hidden}:root,.dark{--browser-toolbar:0 0% 34%;--browser-controls:0 0% 100%}.website-browser-toolbar{background:hsl(var(--browser-toolbar));color:hsl(var(--browser-controls));align-items:center;gap:12px;padding:10px 14px;font-size:12px;display:flex}.website-browser-controls{flex-shrink:0;gap:8px;display:flex}.website-browser-controls svg,.website-browser-external{flex-shrink:0;width:12px;height:12px}.website-browser-dots{gap:6px;display:flex}.website-browser-dots i{background:hsl(var(--browser-controls));border-radius:50%;width:8px;height:8px}.website-browser-address{text-align:center;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.website-browser-open{margin-left:auto;display:inline-flex}.website-live-frame{aspect-ratio:968/582;background:var(--bg);border:0;width:100%;display:block}.website-embed-notice{background:var(--bg);color:var(--grey-300);margin:0;padding:12px 14px;font-size:12px}.website-embed-notice a{text-underline-offset:3px;text-decoration:underline}.website-preview{position:relative;overflow:hidden}.website-preview-image{max-width:none;height:auto;display:block}.website-preview-home{aspect-ratio:968/582}.website-preview-home .website-preview-image{width:108.26%;margin-top:-9.71%;margin-left:-4.55%}.website-shop-row{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);align-items:center;gap:24px;display:grid}.website-shop-logo{min-width:0}.website-shop-logo .project-artwork{-o-object-fit:contain;object-fit:contain;width:100%;max-height:280px}.website-preview-shop{aspect-ratio:471/249}.website-preview-shop .website-preview-image{width:213.8%;margin-top:-7.43%;margin-left:-3.82%}.website-captured-preview{display:block}.website-captured-preview .website-preview-image{-o-object-fit:cover;object-fit:cover;-o-object-position:center top;object-position:center top;width:100%;max-width:100%;height:100%;margin:0;position:absolute;inset:0}@media (width<=760px){.website-shop-row{gap:12px}.website-shop-row .website-browser-address,.website-shop-row .website-browser-controls{display:none}.website-shop-row .website-browser-toolbar{justify-content:space-between}.website-browser-toolbar{gap:8px;padding:10px}}.original-sequence{width:100%}.original-sequence-stage{width:100%;max-height:75vh;color:inherit;cursor:pointer;touch-action:pan-y;background:0 0;border:0;margin:0 auto;padding:0;display:block}.original-sequence-image{-o-object-fit:contain;object-fit:contain;-webkit-user-select:none;user-select:none;width:100%;height:100%;display:block}.gallery-inspect{width:100%;color:inherit;cursor:zoom-in;background:0 0;border:0;padding:0;display:block}.gallery-inspect-hint{text-align:left;margin-top:12px;display:block}.gallery-image-overlay{background:color-mix(in srgb, var(--bg) 35%, transparent);-webkit-backdrop-filter:blur(20px)}.gallery-image-dialog[role=dialog]{background:color-mix(in srgb, var(--bg) 30%, transparent);width:96vw;max-width:none;height:94dvh;max-height:94dvh;color:var(--fg);border:2px solid color-mix(in srgb, var(--fg) 45%, transparent);border-radius:28px;flex-direction:column;gap:12px;padding:56px clamp(16px,2vw,64px) 24px;display:flex;overflow:hidden}.gallery-expanded-image{-o-object-fit:contain;object-fit:contain;flex:1;width:100%;height:100%;min-height:0;display:block}.gallery-image-dialog>p:not(.sr-only){text-align:center;flex-shrink:0}.gallery-image-dialog>button:last-child{border:1px solid var(--fg);border-radius:50%;place-items:center;padding:8px;display:grid}.gallery-image-dialog>button:last-child:focus{box-shadow:none;outline:none}.gallery-image-dialog>button:last-child:focus-visible{opacity:1;border-width:2px}.gallery-image-dialog>button:last-child svg{width:24px;height:24px}.project-page-restored .gallery-pair:has(>.gallery-asset-disc){align-items:center}.disc-artwork{transform-origin:50%;animation:5s linear infinite paused portfolio-disc-spin}.gallery-inspect:hover .disc-artwork,.gallery-inspect:focus-visible .disc-artwork,.gallery-expanded-image.disc-artwork:hover{animation-play-state:running}.original-sequence-album{background:var(--bg)}@keyframes portfolio-disc-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.disc-artwork{animation:none}}.project-page-restored .gallery-pair{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:24px}.project-page-restored .gallery-pair>.gallery-asset{width:100%}.project-page-restored .gallery-asset .project-artwork{-o-object-fit:contain;object-fit:contain;max-height:80vh}.project-page-restored .project-visuals .case-body{gap:40px}@media (width<=600px){.project-page-restored .gallery-pair{grid-template-columns:minmax(0,1fr);gap:32px}.project-page-restored .gallery-asset-medium,.project-page-restored .gallery-asset-small{width:100%}.gallery-image-dialog{padding-left:12px;padding-right:12px}}.collective-print-row{grid-template-columns:minmax(0,1.8fr) minmax(0,1fr);align-items:center;gap:16px;display:grid}.collective-shopping-bag-artwork{width:100%;min-width:0}.collective-shopping-bag-artwork .project-artwork{-o-object-fit:contain;object-fit:contain;width:100%;max-width:100%;height:auto;margin:0;display:block}.business-card,.collective-shopping-bag{min-width:0;margin:0}.business-card-toggle{cursor:pointer;perspective:1200px;width:100%;color:var(--fg);background:0 0;border:0;padding:0;display:block}.business-card-inner{transform-style:preserve-3d;transition:transform .65s;display:grid}.business-card-inner.is-flipped{transform:rotateY(180deg)}.business-card-face{aspect-ratio:800/481;backface-visibility:hidden;grid-area:1/1;width:100%;display:block;overflow:hidden}.business-card-back{transform:rotateY(180deg)}.business-card-square .business-card-face{aspect-ratio:1}.business-card-image{-o-object-fit:contain;object-fit:contain;width:100%;height:100%;display:block}.business-card-hint{color:var(--grey-300);justify-content:center;align-items:center;gap:8px;margin:16px 0 0;font-size:12px;display:flex}@media (width<=600px){.collective-print-row{grid-template-columns:minmax(0,1fr);gap:28px}.collective-shopping-bag{justify-self:center;width:100%;max-width:360px}}@media (prefers-reduced-motion:reduce){.business-card-inner{transition:none}}.gallery-asset{width:100%;min-width:0;margin:0 auto}.gallery-asset-medium{width:75%}.gallery-asset-small{width:50%}.gallery-asset-caption{margin-top:16px}.gallery-pair{grid-template-columns:minmax(0,1.8fr) minmax(0,1fr);align-items:center;gap:16px;display:grid}.gallery-browser-image{aspect-ratio:968/582}.gallery-browser-image .website-preview-image{-o-object-fit:cover;object-fit:cover;width:100%;height:100%}@media (width>=1101px){.project-page-collective .gallery-pair{gap:12px}}@media (width<=600px){.gallery-pair{grid-template-columns:minmax(0,1fr);gap:32px}.gallery-pair>.gallery-asset{max-width:100%}}.user-flow-list{align-items:stretch;row-gap:24px;min-width:max-content;display:flex}.user-flow-step{align-items:stretch;display:flex}.user-flow-node{text-align:center;flex-direction:column;flex-shrink:0;width:160px;display:flex}.user-flow-stage{text-align:center;text-transform:uppercase;min-height:20px;margin-bottom:12px;display:block}.user-flow-card{border:1px solid var(--fg);text-align:center;border-radius:24px;flex-direction:column;flex:1;justify-content:center;align-items:center;width:100%;min-height:112px;padding:16px;transition:transform .18s,background-color .18s;display:flex}.user-flow-card-optional{border-style:dashed}.user-flow-card .single-line-title{text-align:center;margin:8px 0 0}.user-flow-card .single-line-title-text{margin-inline:auto}.user-flow-detail{text-align:center;width:100%;min-height:18px;margin-top:4px}.user-flow-arrow{opacity:.7;flex-shrink:0;align-self:flex-end;width:20px;height:20px;margin:0 8px 46px;transition:transform .18s,opacity .18s}.user-flow-card:focus-visible{background-color:color-mix(in srgb, var(--fg) 6%, transparent)}.user-flow-card:active{transform:translateY(-1px)}@media (hover:hover){.user-flow-node:hover .user-flow-card{background-color:color-mix(in srgb, var(--fg) 6%, transparent);transform:translateY(-3px)}.user-flow-node:hover+.user-flow-arrow{opacity:1;transform:translate(3px)}}@media (width>=901px){.user-flow-list{flex-wrap:wrap;min-width:0}}@media (prefers-reduced-motion:reduce){.user-flow-card,.user-flow-arrow{transition:none;transform:none!important}}.project-contents{border-block:1px solid var(--line);flex-wrap:wrap;gap:8px 20px;margin-block:24px;padding-block:8px;display:flex}.project-contents a{text-underline-offset:5px;overflow-wrap:anywhere;align-items:center;min-height:44px;font-size:12px;text-decoration:underline;display:inline-flex}.project-page :is(#project-brief,#project-process,#project-outcome,[id^=project-section-]){scroll-margin-top:calc(var(--portfolio-header-height,80px) + 24px)}.project-narrative-heading{overflow-wrap:anywhere;margin-bottom:16px;font-size:24px;line-height:1.3}
