/* One scroll-linked field behind the page, with an independent weaving study. */
#main { position:relative; isolation:isolate; }
#signal-canvas {
  position:fixed;
  inset:0;
  width:100%;
  height:100%;
  z-index:-1;
  display:block;
  pointer-events:none;
}
.hero .signal-art { width:min(1280px,100%); height:clamp(230px,35svh,346px); margin-top:4px; }
@media (max-width:720px) {
  .hero .signal-art { height:clamp(180px,31svh,258px); }
}
@media (max-width:420px) and (max-height:700px) {
  .hero { padding-top:26px; }
  .hero .hero-eyebrow { margin-bottom:15px; }
  .hero .hero-description, html[lang=en] .hero .hero-description { margin-top:17px; font-size:16px; line-height:1.7; }
  .hero .hero-actions { margin-top:20px; }
  .hero .hero-facts { margin-top:15px; }
}
.hero-actions .hero-weaver-link{font-size:14px;color:#69518e}
.hero-weaver-link>span:last-child{display:inline-block;transition:transform .3s}.hero-weaver-link:hover>span:last-child{transform:translate(2px,-2px)}
@media(max-width:720px){.hero-actions .hero-weaver-link{flex-basis:100%;width:fit-content;max-width:max-content;margin-inline:25%}}
.motion-showcase{padding:66px 0 82px;scroll-margin-top:100px}
.weaver-disclosure{background:#fff;border:1px solid #e4dfea;border-radius:24px;overflow:hidden;box-shadow:0 8px 35px #35214104}
.weaver-summary{display:flex;align-items:center;gap:34px;padding:34px 40px;cursor:pointer;list-style:none;text-align:left}
.weaver-summary::-webkit-details-marker{display:none}.weaver-emblem{display:grid;place-items:center;flex:none;width:108px;height:108px;background:#f5f1fa;color:#80629f;border-radius:24px}
.weaver-emblem svg{width:83px;height:68px;transition:transform .8s cubic-bezier(.22,1,.36,1)}
.weaver-summary:hover .weaver-emblem svg{transform:rotate(-8deg)}
.weaver-summary-copy{display:flex;flex-direction:column;gap:11px;flex:1;min-width:0}.weaver-summary-copy .eyebrow{font-size:11px;letter-spacing:.12em;margin:0;color:#7c6b8d}
.weaver-summary-title{font-size:32px;font-weight:600;letter-spacing:-.035em;color:#25202e;line-height:1.3}
.weaver-summary-description{font-size:16px;line-height:1.8;color:#6b6276;max-width:38em}
.weaver-expand{display:flex;align-items:center;justify-content:center;gap:20px;font-size:14px;color:#69518e;flex:none;min-height:44px}
.weaver-chevron{display:grid;place-items:center;width:40px;height:40px;border:1px solid #ded4e9;border-radius:50%;font-size:20px;transition:transform .45s,background .3s}
.when-open{display:none}.weaver-disclosure[open] .when-open{display:inline}.weaver-disclosure[open] .when-closed{display:none}.weaver-disclosure[open] .weaver-chevron{transform:rotate(135deg);background:#f1eaf8}
.weaver-content{border-top:1px solid #ebe6f1}.weaver-toolbar{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:17px 28px;background:#fcfbfe}
.weaver-toolbar-title{display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-size:11px;color:#71647f;letter-spacing:.06em}.weaver-toolbar-title strong{font-size:12px;font-weight:600;letter-spacing:.10em;color:#574467}
.live-dot{height:6px;width:6px;border-radius:50%;background:#9471b9;box-shadow:0 0 0 4px #a486c311}
.weaver-pause,.weaver-refresh{color:#69518e;font-size:13px;min-height:44px;padding:8px 12px;border-radius:9px;white-space:nowrap}.weaver-pause:hover,.weaver-refresh:hover{background:#eee7f5}
#weaver-canvas{display:block;width:100%;height:100%}.weaver-column-labels{position:absolute;top:25px;left:28px;right:28px;display:flex;justify-content:space-between;font-size:10px;letter-spacing:.1em;color:#756286;pointer-events:none}
.weaver-column-labels span:last-child{width:34%;text-align:center}
.weaver-stage-caption{position:absolute;inset:auto 28px 19px;display:flex;justify-content:space-between;align-items:center;gap:15px;font-size:11px;line-height:1.7;color:#756783;pointer-events:none}
#weaver-action{color:#644a80;font-variant-numeric:tabular-nums}
.weaver-status-row{display:flex;gap:25px;flex-wrap:wrap;align-items:center;border-top:1px solid #ebe4f2;border-bottom:1px solid #ebe4f2;background:#fcfbfe;padding:17px 28px;font-size:12px;color:#71647f;line-height:1.7}
.weaver-status-row b{font-size:16px;font-weight:500;color:#5d4079;font-variant-numeric:tabular-nums;margin-right:4px}.weaver-data-status{margin-left:auto;color:#71647f;font-size:12px}
.weaver-data-status[data-state=loading]:before{content:'';display:inline-block;width:9px;height:9px;margin-right:8px;vertical-align:0;background:linear-gradient(90deg,#80609f 30%,transparent 30% 65%,#80609f 65%);animation:feed-pulse .85s ease-in-out infinite alternate}
@keyframes feed-pulse{to{opacity:.25;transform:scaleY(.5)}}
.weaver-feed{padding:28px}.weaver-feed-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:20px}.weaver-feed-heading .eyebrow{font-size:10px;letter-spacing:.1em;color:#82728e;margin:0 0 7px}.weaver-feed-heading h3{font-size:21px;font-weight:500;letter-spacing:-.02em;line-height:1.4}
.weaver-feed-list{display:grid;grid-template-columns:1fr 1fr;gap:0 26px;max-height:290px;overflow:auto;scrollbar-width:thin;scrollbar-color:#c8b9d7 transparent;padding-right:6px}
.weaver-feed-card{display:flex;flex-direction:column;gap:8px;padding:16px 2px;border-top:1px solid #ece7f1;min-width:0;text-decoration:none;transition:color .2s}.weaver-feed-card:hover .feed-title{color:#79539d}.feed-title{font-size:14px;font-weight:500;line-height:1.6;color:#40304f;overflow-wrap:anywhere;transition:color .2s}.feed-meta{display:flex;gap:8px;flex-wrap:wrap;align-items:center;font-size:11px;line-height:1.7;color:#7b6b89}.feed-origin{color:#8b70a3;font-size:10px;letter-spacing:.04em}.weaver-feed-note{margin-top:19px;color:#80718c;font-size:12px;line-height:1.9;max-width:88em}.weaver-feed-note a{color:#69518e;white-space:nowrap;text-decoration:underline;text-underline-offset:3px}.weaver-feed-empty{grid-column:1/-1;padding:26px 0;color:#7d6a8e;font-size:14px;line-height:1.8}
/* Small gestures answer deliberate interaction; the page keeps its existing hierarchy. */
.scenario-card .cap-number{display:inline-block;transform-origin:center;transition:transform .55s cubic-bezier(.22,1,.36,1),color .3s}
.scenario-card:hover .cap-number,.scenario-card:focus-within .cap-number{transform:translateY(-3px) rotate(-7deg);color:#9a76bd}.scenario-card[open] .cap-number{transform:rotate(10deg)}
.scenario-card{position:relative}.scenario-card:after{content:'';position:absolute;left:25px;right:25px;top:0;height:1px;background:linear-gradient(90deg,transparent,#a68abd,transparent);transform:scaleX(.25);opacity:0;transition:transform .65s,opacity .45s;pointer-events:none}.scenario-card:hover:after,.scenario-card:focus-within:after{transform:scaleX(1);opacity:.8}
.platform-media img.image-arrived{animation:image-arrive .55s cubic-bezier(.22,1,.36,1) both}@keyframes image-arrive{from{opacity:.45;transform:translateY(4px)}to{opacity:1;transform:none}}
.back-top span:last-child{display:inline-block;transition:transform .3s}.back-top:hover span:last-child{transform:translateY(-3px)}
body[data-motion=paused] .platform-media img.image-arrived{animation:none}body[data-motion=paused] .weaver-data-status:before{animation:none}
@media(max-width:1000px){.weaver-summary{padding:30px;gap:24px}.weaver-emblem{width:85px;height:85px}.weaver-emblem svg{width:65px}.weaver-summary-title{font-size:29px}.weaver-summary-description{font-size:15px}.weaver-expand{gap:12px}}
@media(max-width:720px){.motion-showcase{padding:40px 0 58px;scroll-margin-top:85px}.weaver-disclosure{border-radius:20px}.weaver-summary{padding:27px 23px;gap:20px;flex-wrap:wrap}.weaver-emblem{width:64px;height:64px;border-radius:16px}.weaver-emblem svg{width:50px;height:50px}.weaver-summary-copy{gap:8px}.weaver-summary-copy .eyebrow{font-size:8px;letter-spacing:.06em}.weaver-summary-title{font-size:25px}.weaver-summary-description{font-size:15px;line-height:1.75}.weaver-expand{width:100%;justify-content:space-between;border-top:1px solid #ede7f2;padding-top:15px;margin-top:2px;font-size:14px}.weaver-chevron{width:34px;height:34px}.weaver-toolbar{padding:12px 15px;gap:6px}.weaver-toolbar-title{gap:7px;font-size:10px;letter-spacing:0}.weaver-toolbar-title strong{font-size:10px;letter-spacing:.035em}.weaver-pause{font-size:12px;padding-inline:9px}.weaver-column-labels{left:17px;right:17px;top:20px;font-size:9px;letter-spacing:.04em}.weaver-stage-caption{inset:auto 17px 16px;font-size:10px;display:block}.weaver-stage-caption>span:last-child{display:block;margin-top:3px;font-size:10px}.weaver-status-row{gap:10px 18px;padding:15px 18px;font-size:11px}.weaver-status-row b{font-size:15px}.weaver-data-status{width:100%;margin-left:0;font-size:11px}.weaver-feed{padding:24px 18px}.weaver-feed-heading{gap:10px;margin-bottom:15px}.weaver-feed-heading h3{font-size:19px}.weaver-feed-heading .eyebrow{font-size:9px;letter-spacing:.045em}.weaver-refresh{font-size:12px;padding-inline:7px}.weaver-feed-list{grid-template-columns:1fr;max-height:300px;padding-right:3px}.feed-title{font-size:14px;line-height:1.7}.weaver-feed-note{font-size:11px;line-height:1.9}.weaver-summary-description{margin-left:-84px;margin-top:9px}}
@media(max-width:360px){.weaver-summary{padding:25px 20px;gap:15px}.weaver-summary-title{font-size:23px}.weaver-summary-description{margin-left:-79px}.weaver-toolbar-title>span:last-child{display:none}}
@media(prefers-reduced-motion:reduce){.weaver-emblem svg,.scenario-card .cap-number,.scenario-card:after{transition:none;transform:none!important}.platform-media img.image-arrived,.weaver-data-status:before{animation:none}}

.weaver-disclosure{scroll-margin-top:calc(var(--header-height) + 24px)}
body[data-motion=paused] .weaver-emblem svg,body[data-motion=paused] .scenario-card .cap-number{transform:none;transition:none}
@media(max-width:720px){.weaver-summary{align-items:flex-start}.weaver-summary-title{text-wrap:balance}.weaver-emblem{align-self:flex-start}}

#weaver-title>span{display:inline-block}

/* Session-only archive strip. */
.weaver-stream-row{display:flex;align-items:center;gap:18px;padding:16px 28px;background:#f8f4fc;border-top:1px solid #e8def0;overflow:hidden;font-size:12px;color:#725887}
.weaver-stream-row>span{white-space:nowrap;flex:none}.weaver-capture-stream{display:flex;align-items:center;gap:9px;min-width:0;overflow:hidden;mask-image:linear-gradient(90deg,#000 85%,transparent)}
.weaver-capture-stream>span{display:flex;gap:7px;align-items:center;white-space:nowrap;color:#58366e;background:#fff;border:1px solid #e0cfea;border-radius:7px;padding:6px 10px;animation:capture-arrive .4s cubic-bezier(.22,1,.36,1) both}
.weaver-capture-stream b{font-size:9px;font-weight:500;color:#9773ab;letter-spacing:.04em}
@keyframes capture-arrive{from{opacity:0;transform:translateX(-14px)}to{opacity:1;transform:none}}
@media(max-width:720px){.weaver-stream-row{padding:14px 18px;gap:12px}.weaver-stage-caption{font-size:11px}.weaver-capture-stream>span{padding:6px 8px}}
@media(prefers-reduced-motion:reduce){.weaver-capture-stream>span{animation:none}}body[data-motion=paused] .weaver-capture-stream>span{animation:none}

#weaver-stage {
  position:relative;
  height:clamp(490px,65svh,632px);
  overflow:hidden;
  isolation:isolate;
  touch-action:pan-y;
  scroll-margin-top:46px;
  background:
    repeating-linear-gradient(0deg,#d5bdff0b 0 1px,transparent 1px 27px),
    radial-gradient(ellipse at 73% 54%,#362858 0,transparent 58%),
    linear-gradient(128deg,#21182f,#151226 64%,#1b1830);
  box-shadow:0 20px 56px #2c173c1d;
}
#weaver-stage::after {
  content:'';
  position:absolute;
  inset:51px 48% 56px auto;
  width:1px;
  pointer-events:none;
  background:linear-gradient(transparent,#b293e238 19% 80%,transparent);
}
.weaver-stage .weaver-column-labels {
  inset:21px 25px 0;
  font:600 10px/1.4 Inter,var(--sans);
  letter-spacing:.12em;
  color:#d7c6ee;
}
.weaver-stage .weaver-column-labels span:last-child { width:45%; text-align:left; }
.weaver-stage .weaver-stage-caption { color:#bdb1d0; }
.weaver-stage #weaver-action {
  color:#eee2ff;
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.weaver-stage-caption>span:last-child { flex:none; }
.weaver-content .weaver-toolbar { background:transparent; }
.weaver-controls { display:flex; align-items:center; gap:8px; }
.weaver-capture {
  min-height:42px;
  padding:8px 12px;
  border-radius:9px;
  background:#e7dcf6;
  color:#503675;
  font-size:13px;
  font-weight:650;
  white-space:nowrap;
}
.weaver-capture:hover { background:#dccaf0; }
.weaver-stream-row>span { color:#60447d; font-weight:600; }
@media(max-width:740px) {
  #weaver-stage {
    height:clamp(446px,70svh,580px);
    background:
      repeating-linear-gradient(0deg,#d5bdff0a 0 1px,transparent 1px 23px),
      radial-gradient(ellipse at 50% 73%,#382a5d 0,transparent 46%),
      linear-gradient(149deg,#221831,#141124 71%);
  }
  #weaver-stage::after {
    inset:47% 15px auto;
    width:auto;
    height:1px;
    background:linear-gradient(90deg,transparent,#b293e24b 19% 81%,transparent);
  }
  .weaver-stage .weaver-column-labels { inset:16px 13px 0; font-size:9px; }
  .weaver-stage .weaver-column-labels span:last-child { position:absolute; top:49%; left:0; width:auto; }
  .weaver-stage .weaver-stage-caption { inset:auto 13px 9px; display:block; font-size:10px; }
  .weaver-stage-caption>span { display:block; }
  .weaver-stage-caption>span:last-child { margin-top:2px; }
  .weaver-controls { gap:5px; }
  .weaver-capture,.weaver-controls .weaver-pause { padding-inline:9px; font-size:12px; }
}
@media(max-width:480px) {
  .weaver-toolbar { flex-wrap:wrap; }
  .weaver-toolbar-title>span[data-i18n] { display:none; }
}
