.square-intro{justify-content:space-between;align-items:end;gap:32px;padding-bottom:44px;display:flex}.square-intro p{max-width:32ch}.square-wall{overflow-clip-margin:24px;grid-template-columns:repeat(5,minmax(0,1fr));align-items:start;gap:48px clamp(24px,3vw,48px);padding-bottom:24px;display:grid;overflow:clip}.square-work{min-width:0;scroll-margin-top:120px}.square-work:nth-child(n){margin-top:0}.square-work-art{aspect-ratio:1;place-items:center;display:grid}.square-work-art img{object-fit:contain;width:100%;height:100%;transition:filter .25s;display:block}.square-work-caption{text-align:center;flex-direction:column;align-items:center;gap:6px;margin-top:14px;display:flex}.print-design .square-work h2{letter-spacing:-.035em;justify-content:center;align-items:flex-start;width:100%;min-height:2.5em;font-size:clamp(15px,1.15vw,18px);line-height:1.25;display:flex}.square-work-caption>span{color:#626262;font-size:12px}.square-work a:focus-visible{outline-offset:10px;outline:2px solid #b63d10;display:block}.square-room{color:#171717;width:100%;max-width:none;height:100dvh;max-height:none;font-family:var(--font-portfolio,Arial,sans-serif);background:0 0;border:0;margin:0;padding:0;position:fixed;inset:0;overflow:hidden}.square-room[open]{grid-template-rows:auto minmax(0,1fr) auto;display:grid}.square-room::backdrop{background:0 0}.square-room-ground{z-index:-1;background:#fff;position:absolute;inset:0}.square-room-header{justify-content:space-between;align-items:start;gap:20px;padding:26px 40px 12px;display:flex}.print-design .square-room-header h2{letter-spacing:-.035em;margin-top:5px;font-size:clamp(22px,2.2vw,34px);line-height:1.15}.print-design .square-room p{color:#626262;font-size:13px;line-height:1.4}.square-room button{color:inherit;cursor:pointer;min-width:44px;min-height:44px;font:inherit;background:0 0;border:0;padding:10px}.square-room button:focus-visible,.square-room a:focus-visible{outline-offset:4px;outline:2px solid #b63d10}.square-room button:hover{color:#b63d10}.square-close{align-items:center;gap:14px;display:flex;font-size:15px!important}.square-close>span{font-size:28px;line-height:20px}.square-stage{touch-action:none;isolation:isolate;min-height:0;position:relative;overflow:hidden}.square-canvas{width:var(--art-size,60vh);height:var(--art-size,60vh);transform-origin:50%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.square-art{object-fit:contain;user-select:none;-webkit-user-drag:none;cursor:zoom-in;width:100%;height:100%;display:block}.square-stage[data-zoomed] .square-art{cursor:grab}.square-stage[data-dragging] .square-art{cursor:grabbing}.square-zoom{align-items:center;gap:12px;display:flex;position:absolute;bottom:12px;right:30px;background:#fff!important;font-size:14px!important}.square-room-footer{padding:16px 40px max(20px,env(safe-area-inset-bottom));background:#fff;grid-template-columns:1fr auto 1fr;align-items:center;gap:16px;display:grid;position:relative}.square-step{justify-self:start;align-items:center;gap:16px;display:flex;font-size:14px!important}.square-step:last-of-type{justify-self:end}.square-colours{text-align:center}.square-colour-list{justify-content:center;gap:12px;display:flex}.square-colour-list button{opacity:.55;width:48px;height:48px;padding:4px;transition:opacity .18s}.square-colour-list button img{object-fit:contain;width:100%;height:100%;display:block}.square-colour-list button[aria-pressed=true]{opacity:1;outline-offset:2px;outline:1px solid #171717}.square-colour-list button:hover{opacity:1}.square-colours>p{margin-top:10px!important}.square-process{grid-column:1/-1;justify-self:center;font-size:13px}.square-status{text-align:center;background:#fff;padding:16px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.square-room [hidden]{display:none!important}@media (width<=1100px){.square-wall{grid-template-columns:repeat(3,minmax(0,1fr));gap:36px 32px}}@media (width<=850px){.square-intro{padding-bottom:48px;display:block}.square-intro p{margin-top:24px}.square-wall{gap:32px 24px}.square-work:nth-child(n){grid-column:auto;width:100%}.square-room-header{padding:20px 24px 12px}.square-room-footer{padding-inline:24px}.square-zoom{right:14px}}@media (width<=600px){.square-wall{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 16px}.square-intro{padding-bottom:28px}.square-work-art{margin-inline:8px}.square-work-caption{gap:6px;margin-top:14px}.print-design .square-work h2{font-size:16px}.square-work-caption>span{font-size:12px}.square-room-header{padding:16px 16px 8px}.print-design .square-room-header h2{max-width:230px;font-size:23px}.square-room-header p{font-size:12px}.square-room-footer{padding:12px 12px max(16px,env(safe-area-inset-bottom));grid-template-columns:44px minmax(0,1fr) 44px;gap:4px}.square-step{justify-content:center;padding:0!important}.square-step [aria-hidden]{font-size:24px}.square-step span:not([aria-hidden]){display:none}.square-colour-list{gap:5px}.square-colour-list button{width:40px;min-width:40px;height:40px;min-height:40px}.square-zoom{bottom:4px;right:8px}.square-process{margin-top:4px}.square-colours>p{font-size:12px!important}.square-close{gap:5px;padding-right:0!important}}@media (prefers-reduced-motion:reduce){.square-work-art img,.square-colour-list button{transition:none}}.square-work-art{isolation:isolate;perspective:1100px;margin:20px 12px 8px;position:relative}.square-work-art img{position:relative}.square-work-art .square-wall-cover{z-index:8;transform:rotate(var(--stack-lean))}.square-work-art .square-wall-layer{transform:translate(var(--sheet-x),var(--sheet-y)) rotate(var(--sheet-angle));transform-origin:50% 65%;position:absolute;inset:0;box-shadow:0 1px 3px #00000018}.square-stage{--rail:clamp(100px,13vw,168px);--rail-gap:64px;perspective:1400px}.square-canvas{left:calc(50% - (var(--rail) + var(--rail-gap))/2)}.square-stage>.square-colours{width:var(--rail);z-index:2;position:absolute;top:50%;right:40px;transform:translateY(-50%)}.square-colour-list{flex-direction:column;align-items:center;gap:16px}.square-colour-list button{width:var(--rail);opacity:1;aspect-ratio:1;perspective:700px;height:auto;min-height:0;padding:0;position:relative}.square-colour-list button[aria-pressed=true]{display:none}.square-colour-list button img{transition:transform .3s cubic-bezier(.22,1,.36,1)}.square-colour-list button:hover img{transform:translateY(-3px)}.square-room-footer{grid-template-columns:1fr auto 1fr;padding-top:6px}.square-selection{text-align:center}.square-selection button{color:#626262;min-height:36px;padding:6px;font-size:13px}.square-zoom{z-index:3;right:calc(var(--rail) + 80px);bottom:8px}.square-stage[data-zoomed]>.square-colours{opacity:0;pointer-events:none}.square-stage[data-zoomed] .square-canvas{left:50%}.square-stage[data-zoomed] .square-zoom{right:24px}.square-stage[data-piled] .square-canvas{visibility:hidden}.square-stage[data-piled]>.square-colours{width:auto;inset:0;transform:none}.square-stage[data-piled] .square-colour-list{display:block;position:absolute;inset:0}.square-stage[data-piled] .square-colour-list button{width:var(--pile-size);height:var(--pile-size);transform:translate(calc(-50% + var(--pile-x)),calc(-50% + var(--pile-y))) rotate(var(--pile-angle));transform-origin:50% 65%;position:absolute;top:50%;left:50%;box-shadow:0 8px 26px #0000001a}.square-stage[data-piled] .square-colour-list button[aria-pressed=true]{z-index:8;outline:0;display:block}.square-stage[data-piled] .square-colour-list button:hover img{transform:none}.square-stage[data-piled] .square-zoom{display:none}.square-flight{box-shadow:0 8px 28px #00000018}@media (width<=850px){.square-stage{--rail:100px;--rail-gap:36px}.square-stage>.square-colours{right:24px}.square-zoom{right:150px}}@media (width<=600px){.square-stage{--rail:64px;--rail-gap:0px}.square-canvas{top:calc(50% - 52px);left:50%}.square-stage>.square-colours{width:auto;inset:auto 16px 12px;transform:none}.square-colour-list{flex-direction:row;gap:14px}.square-colour-list button{width:64px;min-width:0;height:64px}.square-zoom{bottom:92px;right:12px}.square-stage[data-zoomed] .square-canvas{top:50%}.square-stage[data-zoomed] .square-zoom{bottom:8px;right:12px}.square-stage[data-piled]>.square-colours{inset:0}.square-stage[data-piled] .square-colour-list button{max-width:none}.square-selection button{font-size:12px}}@media (prefers-reduced-motion:reduce){.square-colour-list button img{transition:none}}.square-work-art img{transform-origin:50% 85%;transition:transform .52s cubic-bezier(.22,1,.36,1),filter .25s}.square-work a{cursor:pointer}@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){.square-work:has(a:hover),.square-work:has(a:focus-visible){z-index:2;position:relative}.square-work a:is(:hover,:focus-visible) .square-wall-cover{transform:translateY(-5px) rotate(var(--cover-turn))}.square-work a:is(:hover,:focus-visible) .square-wall-layer{transform:translate(calc(var(--sheet-x) + var(--sheet) * var(--fan-x)),calc(var(--sheet-y) + var(--sheet) * var(--fan-y))) rotate(calc(var(--sheet-angle) + var(--sheet) * var(--fan-turn)))}}
