/* Each play surface belongs to its branch; all styles stay inside this boundary. */
.branch-play{--bp-paper:#e7e1d1;--bp-ink:#20201c;position:relative;isolation:isolate}.branch-play *{box-sizing:border-box}.branch-play button,.branch-play a{touch-action:manipulation}.branch-play button{font:11px/1.4 monospace;letter-spacing:.025em;min-height:44px;padding:10px 14px;border:1px solid currentColor;background:transparent;color:inherit;cursor:pointer;border-radius:0}.branch-play button:focus-visible,.branch-play a:focus-visible,.branch-play textarea:focus-visible{outline:3px solid currentColor;outline-offset:4px}.branch-play button:hover{background:color-mix(in srgb,currentColor 9%,transparent)}.branch-play [hidden]{display:none!important}.branch-play .bp-intro{display:grid;grid-template-columns:1fr 2fr;gap:20px 40px;margin-bottom:30px}.branch-play .bp-intro h2{font:clamp(42px,5.5vw,80px)/.98 Impact,sans-serif;text-transform:uppercase;letter-spacing:-.025em;margin:0}.branch-play .bp-intro p{grid-column:2;font:16px/1.7 Arial,sans-serif;max-width:650px;margin:0;opacity:.8}.branch-play .bp-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:12px 24px;margin:25px 0;font:11px/1.6 monospace}.branch-play .bp-toolbar>span{flex:1;min-width:140px}.branch-play .bp-stamp{display:flex;align-items:center;justify-content:space-between;gap:14px;font:9px/1.5 monospace;letter-spacing:.06em}.branch-play .bp-caption{font:11px/1.7 monospace;opacity:.75;max-width:830px;margin:18px 0 0}.branch-play .bp-pencil{position:absolute;right:28px;bottom:16px;font:33px/1 OffSoul,Impact,sans-serif;transform:rotate(-8deg);color:#a6342a;pointer-events:none}
/* OFFSTU / photographic contact sheet */
.branch-play .bp-lighttable{position:relative;background:#d7d4c7;color:#24211f;padding:28px 30px 65px;border:8px solid #514b48;box-shadow:inset 0 0 55px #fff8,0 15px 30px #0003;--bp-light-x:50%;--bp-light-y:40%}.branch-play .bp-lighttable::after{content:'';position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at var(--bp-light-x) var(--bp-light-y),#fff3,transparent 60%);mix-blend-mode:screen}.branch-play .bp-contact-sheet{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:25px}.branch-play .bp-frame{position:relative;background:#171716;color:#eae3cf;padding:14px;box-shadow:0 5px 10px #18150c50;transform:rotate(-1deg);border:1px solid #514c40}.branch-play .bp-frame:nth-child(2n){transform:rotate(1deg)}.branch-play .bp-frame-no{display:block;color:#d2a85b;font:9px/1.4 monospace;margin:0 0 12px}.branch-play .bp-enlarge{position:relative;display:block;width:100%;min-height:0;padding:0;border:0;overflow:hidden}.branch-play .bp-enlarge img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:contain;background:#080908}.branch-play .bp-enlarge>span{position:absolute;right:9px;bottom:9px;background:#181917bb;color:#fff;width:30px;height:30px;font:22px/30px Arial}.branch-play .bp-frame-foot{padding-top:15px}.branch-play .bp-frame-foot h3{font:22px/1.1 Impact,sans-serif;letter-spacing:.02em;margin:0 0 12px}.branch-play .bp-frame-foot button{padding:8px 10px;width:100%;min-height:40px;color:#d8d1bf;border-color:#6e6859}.branch-play .bp-frame.is-picked::after{content:'';pointer-events:none;position:absolute;inset:6px;border:3px solid #ec563a;border-radius:48% 4% 43% 2%;transform:rotate(-3deg)}.branch-play .bp-frame.is-picked [data-bp-pick]{background:#d7d1bc;color:#161715}.branch-play.bp-room-dark .bp-lighttable{background:#e4e2cc;box-shadow:0 0 80px #e0dcad24,inset 0 0 50px #fff6;border-color:#252324}.branch-play.bp-room-dark{background:#0b0b0c;outline:25px solid #0b0b0c}.branch-play .bp-viewer{position:fixed;width:min(94vw,1250px);max-width:94vw;max-height:92dvh;padding:18px;background:#111;color:#eee;border:1px solid #746d63;overflow:auto}.branch-play .bp-viewer::backdrop{background:#050505e6}.branch-play .bp-viewer>button{display:block;margin-left:auto}.branch-play .bp-viewer figure{margin:16px 0 0}.branch-play .bp-viewer img{display:block;width:100%;max-height:72dvh;object-fit:contain}.branch-play .bp-viewer figcaption{font:12px monospace;margin-top:15px}
/* OFFLAB / movable paper and a reflowing study board */
.branch-play .bp-desk{height:600px;position:relative;overflow:hidden;border:1px solid #686856;background-color:#c9c8b5;background-image:linear-gradient(#363c2612 1px,transparent 1px),linear-gradient(90deg,#363c2612 1px,transparent 1px);background-size:25px 25px;color:#20251d;perspective:1000px}.branch-play .bp-desk-ruler{position:absolute;top:14px;left:18px;font:9px/1.3 monospace;color:#525643;white-space:nowrap;pointer-events:none}.branch-play .bp-notebook{position:absolute;width:320px;height:410px;top:0;left:0;transform:translate(25px,75px) rotate(-2deg);z-index:3;filter:drop-shadow(6px 10px 6px #27281536);will-change:transform}.branch-play .bp-grip{display:flex;align-items:center;justify-content:space-between;width:100%;height:44px;background:#313a29;color:#eee9d5;border:0;cursor:grab;touch-action:none;font:9px/1.2 monospace;padding:12px}.branch-play .bp-grip:hover{background:#404a36}.branch-play .bp-notebook.is-dragging{z-index:6;filter:drop-shadow(15px 25px 12px #27281550)}.branch-play .bp-notebook.is-dragging .bp-grip{cursor:grabbing}.branch-play .bp-note-paper{height:366px;display:flex;flex-direction:column;background:#eee9d5;position:relative;padding:22px 18px 14px 30px;border:1px solid #9b9984;border-top:0}.branch-play .bp-note-paper::before{content:'';position:absolute;left:20px;top:0;bottom:0;border-left:1px solid #bc635f50;pointer-events:none}.branch-play .bp-note-paper label{font:30px/1 OffSoul,Impact,sans-serif;display:block;margin-bottom:12px}.branch-play .bp-note-paper textarea{display:block;flex:1;min-height:0;resize:none;background:repeating-linear-gradient(transparent 0 26px,#627f8c35 26px 27px);color:#252a22;border:0;width:100%;font:15px/27px Georgia,serif;padding:0;box-shadow:none;border-radius:0}.branch-play .bp-note-save{font:9px/1.4 monospace;display:block;padding:8px 0 4px}.branch-play .bp-note-foot{display:flex;justify-content:space-between;align-items:center;gap:8px}.branch-play .bp-note-foot>span{font:7px/1.5 monospace;max-width:70px}.branch-play .bp-note-foot button{font-size:9px;padding:7px;min-height:36px}.branch-play .bp-study{position:absolute;top:0;left:0;z-index:2;width:220px;padding:12px;background:#eae5d6;box-shadow:3px 7px 6px #27281535;transform:translate(370px,80px) rotate(2deg);transition:transform .32s cubic-bezier(.2,.7,.25,1);border:1px solid #a7a590}.branch-play .bp-study .bp-stamp{margin-bottom:10px}.branch-play .bp-study img{width:100%;height:140px;object-fit:contain;background:#babbac;display:block}.branch-play .bp-study h3{font:24px/1.1 Impact,sans-serif;margin:13px 0 5px}.branch-play .bp-study p{font:9px/1.4 monospace;margin:0 0 8px}.branch-play .bp-study a{display:inline-block;font:10px/1.5 monospace;min-height:36px;padding:8px 0}.branch-play .bp-desk-mark{position:absolute;right:35px;bottom:22px;transform:rotate(-8deg);font:40px/.95 OffSoul,Impact,sans-serif;color:#42523590;pointer-events:none}
/* OFFWEAR / printed hangtags, true two-sided CSS objects */
.branch-play .bp-tags{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;padding:0 10px 25px}.branch-play .bp-tag-wrap{position:relative;min-width:0;perspective:1200px;padding-top:65px;text-align:center}.branch-play .bp-string{position:absolute;top:0;left:50%;height:90px;width:26px;border:1px solid #8e826e;border-radius:50%;transform:rotate(12deg);z-index:2;pointer-events:none}.branch-play .bp-tag{position:relative;width:100%;height:440px;transform-style:preserve-3d;transition:transform .65s cubic-bezier(.25,.7,.3,1);transform:rotate(-2deg)}.branch-play .bp-tag-wrap:nth-child(2n) .bp-tag{transform:rotate(2deg)}.branch-play .bp-tag.is-flipped{transform:rotate(-2deg) rotateY(180deg)}.branch-play .bp-tag-wrap:nth-child(2n) .bp-tag.is-flipped{transform:rotate(2deg) rotateY(180deg)}.branch-play .bp-tag-front,.branch-play .bp-tag-back{position:absolute;inset:0;display:flex;flex-direction:column;align-items:stretch;padding:30px 22px 22px;text-align:left;background:#e4ddc7;color:#28251f;border:1px solid #b2a68c;box-shadow:6px 10px 10px #17130c20;backface-visibility:hidden;-webkit-backface-visibility:hidden}.branch-play .bp-tag-front{background-image:repeating-linear-gradient(90deg,#382a1104 0 1px,transparent 1px 3px)}.branch-play .bp-tag-front .bp-stamp{margin-bottom:18px}.branch-play .bp-tag-front img{width:100%;height:230px;object-fit:contain;background:#d8d1bc}.branch-play .bp-tag h3{font:28px/1.05 Impact,sans-serif;text-transform:uppercase;margin:18px 0 12px}.branch-play .bp-tag-punch{position:absolute;top:10px;left:calc(50% - 5px);width:10px;height:10px;border-radius:50%;background:#302a20;box-shadow:inset 2px 1px 1px #0007;border:1px solid #75684d}.branch-play .bp-tag-edition{margin-top:auto;font:8px/1.5 monospace}.branch-play .bp-tag-back{transform:rotateY(180deg);background:#2a2923;color:#e7dec7}.branch-play .bp-tag-back p{font:13px/1.65 Arial,sans-serif;margin:0}.branch-play .bp-stitch{font:22px monospace;letter-spacing:3px;display:block;padding:20px 0}.branch-play .bp-label-note{font:40px/.95 OffSoul,Impact,sans-serif;transform:rotate(-6deg);margin:auto 0 20px}.branch-play .bp-tag-back a{font:11px/1.5 monospace;padding:10px 0;min-height:40px;color:inherit}.branch-play .bp-tag-wrap>button{margin-top:30px}
/* OFFDIGITAL / an opt-in journey across a vector floor */
.branch-play .bp-grid-space{height:610px;position:relative;overflow:hidden;background:#101411;color:#d9e5d8;border:1px solid #4f5b4d;isolation:isolate;perspective:1000px}.branch-play .bp-grid-camera{position:absolute;inset:0;opacity:.13;transform:rotateY(var(--bp-yaw,0deg));pointer-events:none;transition:opacity .6s}.branch-play .bp-grid-floor{position:absolute;top:36%;left:-50%;width:200%;height:180%;background-image:linear-gradient(#7fe854 1px,transparent 1px),linear-gradient(90deg,#7fe854 1px,transparent 1px);background-size:65px 65px;transform:perspective(450px) rotateX(62deg);transform-origin:50% 0;animation:bp-grid-flight 1.5s linear infinite;animation-play-state:paused;mask-image:linear-gradient(transparent,#000 18%,#000 70%,transparent);-webkit-mask-image:linear-gradient(transparent,#000 18%,#000 70%,transparent)}.branch-play .bp-horizon{position:absolute;top:34%;left:0;right:0;height:2px;opacity:0;background:#a1f47a;box-shadow:0 0 45px 15px #8feb5040;transition:opacity .7s}.branch-play .bp-grid-readout,.branch-play .bp-space-bottom{position:absolute;display:flex;justify-content:space-between;left:24px;right:24px;font:9px/1.5 monospace;letter-spacing:.05em;z-index:2;pointer-events:none}.branch-play .bp-grid-readout{top:23px}.branch-play .bp-space-bottom{bottom:20px}.branch-play .bp-grid-readout>span:last-child{text-align:right}.branch-play .bp-product-windows{position:absolute;inset:80px 6% 70px;display:flex;gap:35px;align-items:center;justify-content:center;perspective:1100px}.branch-play .bp-product-window{display:flex;flex-direction:column;color:inherit;text-decoration:none;width:330px;max-width:45%;background:#202820ee;border:1px solid #677b5e;box-shadow:0 20px 40px #0007;padding:16px;transform:rotateY(0deg);transition:transform .45s,box-shadow .3s,border-color .3s}.branch-play .bp-product-window .bp-stamp{border-bottom:1px solid #63745d;padding-bottom:10px;margin-bottom:14px}.branch-play .bp-product-window img{width:100%;height:150px;object-fit:contain;background:#0a0e0b}.branch-play .bp-product-window>span{font:9px monospace;margin-top:16px}.branch-play .bp-product-window h3{font:35px/.98 Impact,sans-serif;text-transform:uppercase;margin:10px 0 3px}.branch-play .bp-product-window .bp-open{padding-top:12px;border-top:1px solid #63745d;font-size:10px}.branch-play .bp-grid-space.is-on{background:#080f09;color:#c2f4b1}.branch-play .is-on .bp-grid-camera,.branch-play .is-on .bp-horizon{opacity:.8}.branch-play .is-on .bp-product-window:nth-child(odd){transform:rotateY(12deg) rotateZ(-2deg)}.branch-play .is-on .bp-product-window:nth-child(even){transform:rotateY(-12deg) rotateZ(2deg)}.branch-play .is-on .bp-product-window:hover,.branch-play .is-on .bp-product-window:focus-visible{transform:translateZ(35px) rotateY(0deg);border-color:#b8ff9f;box-shadow:0 25px 60px #0009}.branch-play .is-on.is-running .bp-grid-floor{animation-play-state:running}@keyframes bp-grid-flight{to{background-position:0 65px}}
@media(max-width:900px){.branch-play .bp-tags{gap:20px;padding-left:0;padding-right:0}.branch-play .bp-tag{height:470px}.branch-play .bp-tag-front,.branch-play .bp-tag-back{padding:30px 15px 18px}.branch-play .bp-tag-front img{height:200px}.branch-play .bp-contact-sheet{gap:14px}.branch-play .bp-frame{padding:10px}.branch-play .bp-lighttable{padding:22px 20px 60px}.branch-play .bp-product-windows{gap:20px}.branch-play .bp-product-window{max-width:48%}.branch-play .bp-product-window h3{font-size:30px}}
@media(max-width:620px){.branch-play .bp-intro{display:block}.branch-play .bp-intro h2{font-size:44px;margin:16px 0}.branch-play .bp-intro p{font-size:14px}.branch-play .bp-toolbar{gap:10px;font-size:10px}.branch-play .bp-toolbar>span{flex-basis:100%;order:3}.branch-play .bp-toolbar button{font-size:10px}.branch-play .bp-contact-sheet{grid-template-columns:1fr;gap:25px}.branch-play .bp-lighttable{padding:18px 18px 65px;border-width:5px}.branch-play .bp-frame-foot{display:flex;align-items:center;gap:15px}.branch-play .bp-frame-foot h3{flex:1;margin:0;font-size:24px}.branch-play .bp-frame-foot button{width:auto;flex-shrink:0}.branch-play .bp-tags{grid-template-columns:1fr;gap:30px;max-width:340px;margin:auto}.branch-play .bp-tag{height:455px}.branch-play .bp-tag-front img{height:250px}.branch-play .bp-tag-front,.branch-play .bp-tag-back{padding-left:25px;padding-right:25px}.branch-play .bp-tag-back p{font-size:15px}.branch-play .bp-grid-space{height:690px}.branch-play .bp-product-windows{inset:70px 7% 60px;gap:18px;flex-direction:column}.branch-play .bp-product-window{width:100%;max-width:320px;padding:12px;display:grid;grid-template-columns:80px 1fr;column-gap:15px}.branch-play .bp-product-window .bp-stamp{grid-column:1/-1;margin-bottom:10px}.branch-play .bp-product-window img{grid-row:2/5;height:100%;max-height:135px}.branch-play .bp-product-window h3{font-size:27px;margin:7px 0}.branch-play .bp-product-window>span{font-size:8px;margin-top:0}.branch-play .bp-product-window .bp-open{margin-top:8px;padding-top:8px}.branch-play .bp-grid-readout,.branch-play .bp-space-bottom{font-size:8px;left:16px;right:16px}.branch-play .bp-pencil{font-size:28px}.branch-play .bp-desk{height:960px}.branch-play .bp-desk-mark{font-size:30px;right:15px;bottom:12px}.branch-play .bp-notebook{width:calc(100% - 36px);max-width:320px}.branch-play .bp-study{width:calc(100% - 36px);max-width:320px;display:grid;grid-template-columns:100px 1fr;gap:8px 12px;padding:12px}.branch-play .bp-study .bp-stamp{grid-column:1/-1;margin-bottom:0}.branch-play .bp-study img{width:100%;height:110px;grid-row:2/5}.branch-play .bp-study h3{font-size:25px;margin:0}.branch-play .bp-study p{font-size:9px;margin:0}.branch-play .bp-study a{padding:4px 0;min-height:30px;align-self:end}}
@media(prefers-reduced-motion:reduce){.branch-play *,.branch-play *::before,.branch-play *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.branch-play .bp-grid-camera{transform:none!important}.branch-play .bp-product-window{transform:none!important}}
body[data-motion=false] .branch-play *{animation:none!important;transition:none!important}body[data-motion=false] .branch-play .bp-grid-camera{transform:none!important}
.branch-play button:disabled{opacity:.45;cursor:not-allowed}.branch-play .bp-grid-space[data-bp-count="3"],.branch-play .bp-grid-space[data-bp-count="4"]{height:950px}.branch-play .bp-grid-space[data-bp-count="3"] .bp-product-windows,.branch-play .bp-grid-space[data-bp-count="4"] .bp-product-windows{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-content:center}.branch-play .bp-grid-space[data-bp-count="3"] .bp-product-window,.branch-play .bp-grid-space[data-bp-count="4"] .bp-product-window{width:100%;max-width:100%}
@media(max-width:620px){.branch-play .bp-grid-space[data-bp-count]{height:calc(160px + var(--bp-count,2)*245px);min-height:450px}.branch-play .bp-grid-space[data-bp-count="3"] .bp-product-windows,.branch-play .bp-grid-space[data-bp-count="4"] .bp-product-windows{display:flex}.branch-play .bp-grid-space[data-bp-count="3"] .bp-product-window,.branch-play .bp-grid-space[data-bp-count="4"] .bp-product-window{max-width:320px}}
.branch-play .bp-tag-back{overflow-y:auto;overscroll-behavior:contain}.branch-play .bp-tag-back>*{flex-shrink:0}.branch-play .bp-tag-back .bp-label-note{font-size:34px;margin:8px 0 16px}.branch-play .bp-tag-back .bp-stitch{padding:14px 0}
