/* The brand's thin blue lines describe a puzzle, without simulated materials or lighting. */
.bjcs-logo-loop{--cube-size:57px;--unit:calc(var(--cube-size)/3);--half:calc(var(--unit)/2);position:relative;isolation:isolate;mix-blend-mode:normal;perspective:480px}
.bjcs-logo-loop .logo-static{position:absolute;inset:0;width:100%;height:100%;display:block}
.warm-home.bjcs-home-entry .bjcs-logo-loop{padding:0;border:0;background:none;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;transition:opacity .15s}
.bjcs-logo-loop:active{opacity:.76}
.bjcs-logo-loop:focus-visible{outline:2px solid var(--ink);outline-offset:5px;border-radius:6px}
.logo-turntable{position:absolute;left:50%;top:50%;width:0;height:0;visibility:hidden;transform-style:preserve-3d;transform:rotateX(-12deg) rotateY(-12deg);will-change:transform}
.puzzle-layer{position:absolute;inset:0;width:0;height:0;transform-style:preserve-3d}
.puzzle-piece{position:absolute;left:calc(-1 * var(--half));top:calc(-1 * var(--half));width:var(--unit);height:var(--unit);transform-style:preserve-3d;transform:translate3d(calc(var(--x)*var(--unit)),calc(var(--y)*var(--unit)),calc(var(--z)*var(--unit)))}
.puzzle-face{position:absolute;inset:.08px;display:block;backface-visibility:hidden;-webkit-backface-visibility:hidden;box-sizing:border-box;background:var(--cream,#f6f3e9);border:0;box-shadow:inset 0 0 0 .35px rgba(21,61,131,.28)}
.face-front{transform:translateZ(var(--half))}
.face-right{transform:rotateY(90deg) translateZ(var(--half))}
.face-back{transform:rotateY(180deg) translateZ(var(--half))}
.face-left{transform:rotateY(-90deg) translateZ(var(--half))}
.face-top{transform:rotateX(90deg) translateZ(var(--half))}
.face-bottom{transform:rotateX(-90deg) translateZ(var(--half))}
.puzzle-face.artwork-tile{background-size:var(--cube-size) var(--cube-size);background-position:calc(-1 * var(--col)*var(--unit) - .08px) calc(-1 * var(--row)*var(--unit) - .08px);background-repeat:no-repeat}
.bjcs-logo-loop.is-animated .logo-static{visibility:hidden}
.bjcs-logo-loop.is-animated .logo-turntable{visibility:visible}
.bjcs-logo-loop.is-sleeping .logo-turntable,.bjcs-logo-loop.is-sleeping .puzzle-layer{animation-play-state:paused}
@media(max-width:640px){.bjcs-logo-loop{--cube-size:49px}.bjcs-entry-brand{gap:17px}}
@media(prefers-reduced-motion:reduce){.bjcs-logo-loop.is-animated .logo-static{visibility:visible}.bjcs-logo-loop.is-animated .logo-turntable{visibility:hidden;animation:none}.puzzle-layer{animation:none}}
