/* RuGo v082 — LAB SPACE
   Goals:
   - preserve v081 editorial layout;
   - increase block scale by +25% vs v081;
   - keep six-size masonry;
   - remove premature RuGo freeze on collision;
   - RuGo only stops when truly trapped by the built wall or at completion. */

.core-panel--lab{
  --lab-red:var(--launch-accent,#e1261c);
  --lab-ink:var(--launch-ink,#11110f);
  --lab-paper:var(--launch-paper,#f4f1ea);
  --lab-muted:rgba(17,17,15,.64);

  --lab-title-scale:clamp(38px,calc((100vh / 8) * .583),74px);
  --lab-statement-scale:clamp(13px,calc((100vh / 8) * .175),18px);

  --lab-right-axis:8.45vw;
  --lab-field-left:5.55vw;
  --lab-field-width:26.25vw;
}

.lab-space-v082{
  position:absolute;
  inset:0;
  z-index:18;
  color:var(--lab-ink);
  font-family:var(--launch-font);
  overflow:hidden;
}

.lab-space-v082__visual{
  position:absolute;
  z-index:1;
  left:var(--lab-field-left);
  top:0;
  bottom:0;
  width:var(--lab-field-width);
  height:100%;
  margin:0;
  padding:0;
  overflow:hidden;
}

.lab-masonry-v082{
  position:absolute;
  inset:0;
  overflow:hidden;
  background:transparent;
  isolation:isolate;
}

.lab-masonry-v082__canvas{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  display:block;
  touch-action:none;
  background:transparent;
  cursor:auto;
}

.lab-masonry-v082.is-rugo-active .lab-masonry-v082__canvas{
  cursor:none;
}

.lab-space-v082__content{
  position:absolute;
  z-index:3;
  right:var(--lab-right-axis);
  top:50%;
  transform:translateY(-50%);
  width:min(46vw,610px);
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  text-align:right;
}

.lab-space-v082__content-inner{
  width:100%;
  min-width:0;
}

.lab-space-v082__intro{
  width:100%;
  margin:0 0 calc((100vh / 8) * .22);
  text-align:right;
}

.lab-space-v082__kicker{
  display:block;
  margin:0 0 clamp(7px,.7vh,11px);
  font-size:clamp(10px,.72vw,12px);
  line-height:1;
  font-weight:650;
  letter-spacing:.12em;
  color:var(--lab-red);
  text-align:right;
}

.lab-space-v082__lead{
  margin:0 0 0 auto;
  width:min(100%,520px);
  font-size:clamp(13px,1.02vw,17px);
  line-height:1.42;
  letter-spacing:-.012em;
  color:var(--lab-muted);
  text-align:right;
}

.lab-space-v082__lead strong{
  color:var(--lab-ink);
  font-weight:650;
}

.lab-space-v082__territories{
  width:100%;
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:calc((100vh / 8) * .29);
}

.lab-space-v082__territory{
  width:100%;
  margin:0;
  padding:0;
  cursor:default;
  text-align:right;
}

.lab-space-v082__territory-title{
  position:relative;
  display:block;
  width:100%;
  height:.90em;
  margin:0;
  padding:0;
  font-size:var(--lab-title-scale)!important;
  font-weight:650;
  line-height:.90;
  letter-spacing:-.055em;
  color:var(--lab-ink);
  overflow:visible;
}

.lab-space-v082__territory-title > span{
  position:absolute;
  top:0;
  right:0;
  display:block;
  width:max-content;
  white-space:nowrap;
  font:inherit;
  line-height:inherit;
  letter-spacing:inherit;
  color:inherit;
  text-align:right;
}

.lab-space-v082__territory:hover .lab-space-v082__territory-title{
  color:var(--lab-red);
}

.lab-space-v082__territory-copy{
  display:block;
  width:min(100%,520px);
  margin:calc((100vh / 8) * .08) 0 0 auto;
  font-size:var(--lab-statement-scale);
  line-height:1.42;
  letter-spacing:-.012em;
  color:var(--lab-muted);
  font-weight:400;
  text-align:right;
}

.lab-space-v082__territory-copy strong{
  color:var(--lab-red);
  font-weight:650;
}

.lab-space-v082__note{
  width:min(100%,520px);
  margin:calc((100vh / 8) * .20) 0 0 auto;
  font-size:clamp(10.5px,.78vw,13px);
  line-height:1.42;
  letter-spacing:-.006em;
  color:rgba(17,17,15,.50);
  text-align:right;
}

@media (max-width:1180px){
  .core-panel--lab{
    --lab-right-axis:7.6vw;
    --lab-field-left:5.0vw;
    --lab-field-width:26.5vw;
  }

  .lab-space-v082__content{
    width:min(49vw,600px);
  }

  .lab-space-v082__lead,
  .lab-space-v082__territory-copy{
    font-size:13px;
  }

  .lab-space-v082__note{
    font-size:10.5px;
  }
}