/* MBS V35 — Interactive 3D Hero */
.hero.hero-v35{
  grid-template-columns:minmax(0,.88fr) minmax(480px,1.12fr);
  gap:46px;
  padding-top:58px;
}
.hero-v35 .hero-copy{position:relative;z-index:2}
.hero-v35 .hero-v35-title{
  font-size:clamp(46px,5.45vw,78px);
  line-height:.88;
  letter-spacing:-.064em;
  max-width:760px;
}
.hero-v35 .hero-v35-title .accent{color:var(--sage-deep)}
.hero-v35 .hero-subline{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  margin-top:20px;
}
.hero-v35 .hero-subline span{
  display:inline-flex;
  align-items:center;
  border-top:1px solid var(--line);
  padding-top:9px;
  min-width:110px;
  font-size:10px;
  font-weight:900;
  letter-spacing:.12em;
  color:var(--muted);
}
.ring-stage{
  position:relative;
  min-height:620px;
  border:1px solid var(--line);
  border-radius:34px;
  overflow:hidden;
  background:
    radial-gradient(circle at 52% 40%, rgba(255,255,255,.95) 0 18%, rgba(229,236,230,.74) 43%, rgba(242,240,233,.18) 72%),
    linear-gradient(145deg,#f8f7f2,#e6ece7);
  box-shadow:var(--shadow);
  isolation:isolate;
}
.ring-stage::before{
  content:"";
  position:absolute;
  width:64%;
  aspect-ratio:1;
  border-radius:50%;
  left:18%;
  top:18%;
  background:rgba(149,167,151,.20);
  filter:blur(45px);
  pointer-events:none;
  z-index:0;
}
.ring-stage::after{
  content:"";
  position:absolute;
  left:12%;
  right:12%;
  bottom:15%;
  height:9%;
  border-radius:50%;
  background:rgba(21,24,22,.12);
  filter:blur(25px);
  transform:scaleX(.72);
  pointer-events:none;
  z-index:0;
}
.ring-model{
  width:100%;
  height:620px;
  display:block;
  position:relative;
  z-index:1;
  --poster-color:transparent;
  --progress-bar-color:var(--sage-deep);
}
.ring-topline{
  position:absolute;
  top:18px;
  left:18px;
  right:18px;
  z-index:4;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:10px;
  pointer-events:none;
}
.ring-live{
  display:inline-flex;
  align-items:center;
  gap:8px;
  border:1px solid rgba(21,24,22,.12);
  border-radius:999px;
  padding:9px 12px;
  background:rgba(242,240,233,.82);
  backdrop-filter:blur(12px);
  font-size:10px;
  font-weight:950;
  letter-spacing:.12em;
}
.ring-live::before{
  content:"";
  width:7px;
  height:7px;
  border-radius:50%;
  background:var(--sage-deep);
  box-shadow:0 0 0 5px rgba(85,112,95,.12);
}
.ring-hint{
  font-size:10px;
  line-height:1.3;
  font-weight:900;
  letter-spacing:.1em;
  color:var(--muted);
  text-align:right;
}
.ring-bottom-ui{
  position:absolute;
  left:18px;
  right:18px;
  bottom:18px;
  z-index:5;
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:12px;
}
.ring-presets{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  max-width:78%;
}
.ring-preset,.ring-reset,.ring-ar{
  min-height:36px;
  border:1px solid rgba(21,24,22,.14);
  border-radius:999px;
  background:rgba(242,240,233,.88);
  color:var(--ink);
  backdrop-filter:blur(12px);
  padding:8px 11px;
  font-size:9px;
  line-height:1;
  font-weight:950;
  letter-spacing:.1em;
  cursor:pointer;
}
.ring-preset.active{
  background:var(--ink);
  border-color:var(--ink);
  color:var(--paper);
}
.ring-reset{font-size:15px;line-height:1;padding:8px 12px}
.ring-ar{
  position:absolute;
  right:18px;
  top:62px;
  z-index:5;
  background:var(--sage);
  border-color:var(--sage);
  padding:10px 13px;
}
.ring-feature-copy{
  position:absolute;
  left:18px;
  bottom:72px;
  z-index:4;
  max-width:310px;
  padding:12px 14px;
  border-left:2px solid var(--sage-deep);
  background:rgba(242,240,233,.62);
  backdrop-filter:blur(12px);
  font-size:11px;
  line-height:1.45;
  color:#4d564f;
  transition:opacity .22s ease, transform .22s ease;
}
.ring-feature-copy strong{
  display:block;
  color:var(--ink);
  font-size:10px;
  letter-spacing:.11em;
  margin-bottom:4px;
}
.ring-progress{
  position:absolute;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
  padding:10px 13px;
  border-radius:999px;
  background:rgba(242,240,233,.86);
  font-size:10px;
  font-weight:900;
  letter-spacing:.1em;
}
.hero-v35-note{
  margin:10px 2px 0;
  font-size:11px;
  color:var(--muted);
  line-height:1.45;
}
@media(max-width:960px){
  .hero.hero-v35{grid-template-columns:1fr;gap:28px}
  .ring-stage{min-height:560px}
  .ring-model{height:560px}
}
@media(max-width:680px){
  .hero.hero-v35{padding-top:30px}
  .hero-v35 .hero-v35-title{font-size:clamp(43px,13.3vw,63px)}
  .ring-stage{min-height:500px;border-radius:26px}
  .ring-model{height:500px}
  .ring-topline{top:14px;left:14px;right:14px}
  .ring-hint{max-width:145px}
  .ring-bottom-ui{left:14px;right:14px;bottom:14px}
  .ring-feature-copy{left:14px;bottom:66px;max-width:270px}
  .ring-presets{max-width:86%;gap:5px}
  .ring-preset{padding:8px 9px;font-size:8px}
  .ring-ar{right:14px;top:58px}
}
@media(prefers-reduced-motion:reduce){
  .ring-feature-copy{transition:none}
}
