/* A single collection evolves from source documents to an anonymous export. */
.collection-section { background:#f8f9fe; padding:110px 0 88px; --collection-ease:cubic-bezier(.22,1,.36,1); }
.collection-intro { text-align:center; padding-bottom:58px; }
.collection-intro .eyebrow { color:#74638e; font-size:10px; letter-spacing:.2em; }
.collection-intro h2 { font-size:clamp(48px,6.1vw,88px); line-height:1.025; letter-spacing:-.065em; margin:26px -15px 25px; }
.collection-intro h2 span { color:#7864b9; background:linear-gradient(105deg,#5243b2,#a185ca); background-clip:text; -webkit-text-fill-color:transparent; }
.collection-intro>p:not(.eyebrow) { font-size:18px; color:#707084; line-height:1.65; }
.collection-jump { display:inline-flex; align-items:center; gap:16px; min-height:44px; margin-top:20px; font-size:12px; color:#65577f; }
.collection-jump span { font-size:20px; }
.collection-track { max-width:1440px; margin:0 auto; padding:0 40px; scroll-margin-top:100px; }
.collection-shell { position:relative; isolation:isolate; color:#f6f3ff; background:#101021; border:1px solid #29243c; border-radius:36px; box-shadow:0 35px 70px -45px #33245266; overflow:hidden; }
.collection-shell:before { content:''; position:absolute; inset:0; pointer-events:none; z-index:-1; background:radial-gradient(ellipse at 90% 30%,#7553aa24,transparent 65%),linear-gradient(120deg,#24203d55,transparent 60%); }
.collection-topline { padding:27px 36px 0; display:flex; justify-content:space-between; align-items:center; gap:16px; color:#a5a0bb; font-size:9px; letter-spacing:.14em; }
.collection-topline>span:first-child { display:flex; align-items:center; gap:10px; }
.collection-topline i { width:6px; height:6px; border-radius:50%; background:#b39be9; box-shadow:0 0 16px #b39be980; }
.collection-topline-divider { opacity:.35; margin:0 3px; }
.collection-topline>span:last-child { font-size:8px; letter-spacing:.1em; color:#a49caf; }
.collection-layout { display:grid; grid-template-columns:.85fr 1.3fr; align-items:center; gap:25px; min-height:510px; padding:20px 44px; }
.collection-story { padding:0 0 0 4px; z-index:2; min-width:0; }
.collection-counter { color:#c2b0e5; font-size:13px; letter-spacing:.06em; margin-bottom:28px; font-variant-numeric:tabular-nums; }
.collection-counter>span:last-child { color:#777084; font-size:10px; margin-left:10px; }
.collection-story h3 { font-size:clamp(33px,3.6vw,51px); line-height:1.06; letter-spacing:-.055em; }
.collection-story h3 span { color:#b5a3d7; }
#collection-description { font-size:15px; color:#b8b2c7; max-width:330px; margin:22px 0 20px; line-height:1.75; }
.collection-story .collection-detail { border-left:1px solid #76608f; padding-left:13px; max-width:300px; font-size:11px; color:#a89bbd; line-height:1.6; }
#collection-panel { outline-offset:10px; }
.collection-shell.is-changing .collection-story h3 { animation:collection-copy .75s var(--collection-ease) both; }
.collection-shell.is-changing #collection-description { animation:collection-copy .8s .06s var(--collection-ease) both; }
.collection-visual { position:relative; height:460px; min-width:0; }
.collection-glow { position:absolute; inset:5% -15%; background:radial-gradient(ellipse,#8161d42e,transparent 65%); transition:background 1.5s; pointer-events:none; }
.collection-orbits { position:absolute; inset:8% -2%; pointer-events:none; }
.collection-orbits i { position:absolute; border:1px solid #baa1e710; border-radius:50%; inset:0; transform:rotate(-23deg); }
.collection-orbits i+ i { inset:14% -6%; transform:rotate(24deg); }
.collection-documents { position:absolute; inset:0; transition:opacity .6s,transform 1s var(--collection-ease); }
.collection-document { position:absolute; width:260px; height:282px; top:87px; left:calc(50% - 130px); border:1px solid #6e607f80; border-radius:18px; padding:24px; background:linear-gradient(125deg,#353044,#211e31); box-shadow:0 20px 45px #02010d50; }
.collection-document span { font-size:8px; letter-spacing:.1em; color:#b2a8bf; }
.document-back { transform:translate(82px,-23px) rotate(14deg); background:#242133; }
.document-middle { transform:translate(-75px,10px) rotate(-15deg); background:#2a253a; }
.document-front { transform:rotate(-3deg); background:linear-gradient(140deg,#4b3e60,#282137); }
.document-top { display:flex; align-items:center; justify-content:space-between; }
.document-top svg { width:22px; height:22px; color:#c7b5e2; }
.collection-document h4 { margin:22px 0 17px; font-size:26px; font-weight:400; letter-spacing:-.04em; line-height:1.12; }
.collection-document p { font-size:12px; line-height:1.95; color:#c2b9cc; }
.collection-document mark { background:#b99be923; border-bottom:1px solid #b99be965; border-radius:2px; color:#e1d0f9; padding:1px 3px; }
.document-signature { display:flex; align-items:center; gap:7px; margin-top:18px; font-size:8px; color:#a89cb9; }
.document-signature i { width:4px; height:4px; border-radius:50%; background:#ac94d1; }
.document-lines { margin:30px 0; }
.document-lines i { display:block; height:4px; border-radius:4px; margin:14px 0; width:90%; background:#8c7c9a33; }
.document-lines i:nth-child(2) { width:75%; }.document-lines i:nth-child(4) { width:55%; }
.collection-document b { font-weight:400; font-size:10px; color:#a69aaf; }
.collection-request { position:absolute; top:16px; left:3%; right:3%; padding:18px 22px; border:1px solid #7f60ac55; border-radius:18px; background:linear-gradient(130deg,#342744,#241f36); opacity:0; visibility:hidden; transform:translateY(20px); transition:opacity .6s,transform .8s var(--collection-ease),visibility .6s; }
.collection-request>span { font-size:8px; letter-spacing:.13em; color:#c0a9dd; }
.collection-request p { font-size:16px; line-height:1.5; color:#e0d4ed; margin:8px 0 12px; }
.collection-request>div { display:flex; flex-wrap:wrap; gap:7px; }
.collection-request>div>span { font-size:9px; padding:5px 8px; border:1px solid #82709265; border-radius:6px; color:#c5b5d7; }
.collection-transfer { position:absolute; top:190px; left:10%; right:10%; display:flex; justify-content:space-around; gap:8px; opacity:0; pointer-events:none; }
.collection-transfer span { background:#b39be9; color:#241831; padding:7px 12px; border-radius:7px; font-size:10px; }
.collection-table-card { position:absolute; top:105px; left:0; right:0; border:1px solid #85779155; border-radius:18px; background:linear-gradient(120deg,#302b3f,#221f31); overflow:hidden; box-shadow:0 25px 60px #02010e40; opacity:0; visibility:hidden; transform:translateY(65px) scale(.88) rotateX(8deg); transition:opacity .7s,visibility .7s,transform 1s var(--collection-ease); }
.collection-table-heading { display:flex; justify-content:space-between; align-items:center; padding:21px 22px 18px; gap:12px; }
.collection-table-heading>div>span { color:#b8a6ca; font-size:8px; letter-spacing:.15em; }
.collection-table-heading h4 { margin:8px 0 0; font-size:19px; font-weight:400; letter-spacing:-.035em; }
.collection-table-badge { font-size:9px; color:#c2b4d5; padding:6px 9px; border:1px solid #80658d55; border-radius:20px; white-space:nowrap; }
.collection-table-scroll { overflow-x:auto; }
.collection-table-card table { width:100%; border-collapse:collapse; text-align:left; font-size:11px; white-space:nowrap; }
.collection-table-card th,.collection-table-card td { border-top:1px solid #8f76ab26; padding:15px 12px; font-weight:400; color:#dfd7e9; }
.collection-table-card thead th { font-size:9px; color:#a89ab8; padding-top:11px; padding-bottom:11px; background:#ffffff03; }
.collection-table-card th:first-child { padding-left:22px; }
.collection-table-card td:last-child { padding-right:22px; }
.collection-table-card tbody th { color:#c3b2d5; font-size:10px; min-width:130px; }
.collection-table-card .collection-missing { color:#b5a0bd; }
#collection-source-button { background:none; border:0; border-radius:5px; padding:0; color:inherit; font-size:11px; min-height:20px; }
#collection-source-button:disabled { cursor:default; }
#collection-source-button span { opacity:0; margin-left:3px; color:#d8baff; }
.collection-table-footer { border-top:1px solid #8f76ab26; padding:15px 22px; display:flex; align-items:center; gap:7px; font-size:8px; color:#b9a8c9; }
.collection-table-footer>span:last-child { margin-left:auto; color:#a49aae; }
.collection-status-dot { width:4px; height:4px; border-radius:50%; background:#b09acb; }
.collection-evidence { position:absolute; left:8%; right:0; top:330px; padding:16px 19px; background:#3d2f50; border:1px solid #a789cd66; border-radius:13px; box-shadow:0 12px 36px #0003; animation:collection-copy .6s var(--collection-ease) both; }
.collection-evidence>span:first-child { font-size:8px; letter-spacing:.08em; color:#c4abdf; }
.collection-evidence p { font-size:12px; line-height:1.6; margin:7px 0; color:#e1d5ee; }
.collection-evidence mark { background:#b891e94d; color:#fff; padding:1px 3px; border-radius:3px; }
.collection-evidence-foot { color:#b9a5cb; font-size:8px; }
.collection-privacy { position:absolute; left:9%; right:9%; top:352px; display:flex; align-items:center; gap:13px; padding:17px 20px; background:linear-gradient(120deg,#273b36,#202d2c); border:1px solid #73b99f50; border-radius:17px; opacity:0; visibility:hidden; transform:translateY(20px) scale(.96); transition:opacity .7s .15s,transform .9s .15s var(--collection-ease),visibility .7s; }
.collection-lock { width:38px; height:38px; display:grid; place-items:center; border:1px solid #91d9bb44; background:#91d9bb0d; border-radius:50%; flex-shrink:0; }
.collection-lock svg { width:20px; height:20px; color:#b1ddc9; }
.collection-privacy strong { display:block; color:#d2e8dd; font-size:12px; font-weight:400; }
.collection-privacy div>span { display:block; font-size:10px; color:#9fc1b1; margin-top:4px; }
.collection-privacy-check { margin-left:auto; color:#b5e4d0; font-size:17px; }
.collection-scan { position:absolute; inset:-2px; pointer-events:none; opacity:0; background:linear-gradient(105deg,transparent 40%,#afffd521 49%,#c0ffe480 50%,#afffd521 51%,transparent 60%); transform:translateX(-110%); }
.collection-export { position:absolute; top:337px; left:0; right:0; text-align:center; animation:collection-copy .8s .15s var(--collection-ease) both; }
.collection-formats { display:flex; justify-content:center; gap:7px; margin-bottom:15px; }
.collection-formats span { font-size:10px; border:1px solid #82709066; border-radius:7px; padding:7px 13px; color:#c4b6d5; }
#collection-download { border:1px solid #c9b5eb; border-radius:25px; background:#d6c3f3; color:#2e2042; padding:13px 20px; font-size:11px; min-height:44px; }
#collection-download span { margin-left:16px; }
#collection-download:hover { background:#e7d7ff; }
.collection-export p { font-size:8px; color:#b3a6c1; margin-top:12px; }
.collection-controls { display:flex; justify-content:center; align-items:center; gap:17px; margin:7px 28px 26px; }
.collection-tabs { display:flex; align-items:center; gap:4px; padding:5px; border:1px solid #7b66893b; border-radius:30px; background:#ffffff05; }
.collection-tabs button { display:flex; align-items:center; gap:7px; border:1px solid transparent; border-radius:22px; background:none; color:#aba0bd; font-size:11px; min-height:42px; padding:11px 16px; transition:background .35s,color .35s,border-color .35s; white-space:nowrap; }
.collection-tabs button>span { font-size:9px; opacity:.6; }
.collection-tabs button:hover { color:#f4edff; }
.collection-tabs button[aria-selected=true] { background:#c5a9e724; border-color:#bca2d52e; color:#f1e8ff; }
.collection-play { display:grid; place-items:center; border:1px solid #7b668956; border-radius:50%; background:#ffffff07; color:#c5b4d8; width:44px; height:44px; flex-shrink:0; }
.collection-play svg { width:19px; height:19px; }
.collection-play .collection-pause-symbol { display:none; }
.collection-play[aria-pressed=true] .collection-play-symbol { display:none; }
.collection-play[aria-pressed=true] .collection-pause-symbol { display:block; }
.collection-progress { height:2px; position:absolute; bottom:0; left:0; right:0; background:#baa0dc0c; }
.collection-progress>span { display:block; width:100%; height:100%; background:linear-gradient(90deg,#75629a,#c9b5df); transform-origin:left; transform:scaleX(var(--collection-progress,.2)); transition:transform .25s linear; }
.collection-outro { padding-top:40px; display:flex; align-items:center; justify-content:space-between; gap:22px; flex-wrap:wrap; }
.collection-outro>p { color:#777087; font-size:15px; line-height:1.7; }
.collection-outro strong { color:#312a40; font-weight:600; }
.collection-outro>span { width:100%; color:#80768e; font-size:10px; text-align:center; margin-top:4px; }
/* Each step retains the same table. Names are replaced in the DOM for export. */
.collection-shell:not([data-step="0"]) .collection-documents { opacity:0; transform:translateY(-50px) scale(.7); pointer-events:none; }
.collection-shell:not([data-step="0"]) .collection-table-card { opacity:1; visibility:visible; transform:none; }
.collection-shell[data-step="1"] .collection-request { opacity:1; visibility:visible; transform:none; }
.collection-shell[data-step="1"] .collection-table-card { transform:translateY(100px) scale(.94); }
.collection-shell[data-step="1"].is-changing .collection-transfer { animation:collection-transfer 1.6s .2s both; }
.collection-shell[data-step="2"] .collection-table-card { transform:translateY(-30px); }
.collection-shell[data-step="2"] #collection-source-button { background:#b497d82e; border:1px solid #b497d85e; color:#ebd9ff; padding:7px 9px; margin:-7px -10px; min-height:36px; }
.collection-shell[data-step="2"] #collection-source-button span { opacity:1; }
.collection-shell[data-step="3"] .collection-privacy { opacity:1; visibility:visible; transform:none; }
.collection-shell[data-step="3"] .collection-table-card { border-color:#93cdb460; }
.collection-shell[data-step="3"] .collection-table-badge,.collection-shell[data-step="4"] .collection-table-badge { color:#b0dcca; border-color:#7caf9744; }
.collection-shell[data-step="3"] tbody th,.collection-shell[data-step="4"] tbody th { color:#b1dcc8; letter-spacing:.04em; }
.collection-shell[data-step="3"].is-changing .collection-scan { animation:collection-scan 1.6s .1s var(--collection-ease) both; }
.collection-shell[data-step="4"] .collection-table-card { transform:translateY(-36px) scale(.94); }
.collection-shell.is-paused *, .collection-shell:not(.is-in-view) *, .tab-hidden .collection-shell * { animation-play-state:paused!important; }
.collection-shell.is-paused * { transition:none!important; }
.collection-no-motion .collection-shell * { animation:none!important; transition:none!important; }
.collection-no-motion .collection-play { display:none; }
.collection-shell [hidden] { display:none!important; }
@keyframes collection-copy { from { opacity:0; transform:translateY(13px); } to { opacity:1; transform:none; } }
@keyframes collection-transfer { 0% { opacity:0; transform:translateY(-15px); } 30% { opacity:1; } 100% { opacity:0; transform:translateY(60px) scale(.8); } }
@keyframes collection-scan { 0% { opacity:0; transform:translateX(-110%); } 15%,85% { opacity:1; } 100% { opacity:0; transform:translateX(110%); } }
@media(max-width:1100px) {
  .header nav { gap:18px; }
  .collection-track { padding:0 24px; }
  .collection-layout { padding:20px 28px; gap:22px; grid-template-columns:.8fr 1.2fr; }
  .collection-story h3 { font-size:38px; }
  .collection-table-card table { font-size:10px; }
  .collection-table-card th,.collection-table-card td { padding:15px 9px; }
  .collection-table-card tbody th { min-width:105px; font-size:9px; }
  .collection-table-card th:first-child { padding-left:15px; }
  .collection-table-card td:last-child { padding-right:15px; }
  .collection-document { width:230px; left:calc(50% - 115px); }
  .document-back { transform:translate(45px,-25px) rotate(12deg); }
  .document-middle { transform:translate(-40px,10px) rotate(-12deg); }
  .collection-privacy { left:3%; right:3%; }
}
@media(max-width:800px) {
  .collection-section { padding:70px 0 60px; }
  .collection-intro { padding-bottom:32px; }
  .collection-intro h2 { font-size:58px; margin:20px 0; }
  .collection-intro>p:not(.eyebrow) { font-size:16px; }
  .collection-wide { display:none; }
  .collection-track { padding:0 18px; }
  .collection-shell { border-radius:27px; }
  .collection-topline { padding:22px 24px 0; font-size:8px; }
  .collection-topline>span:last-child { font-size:7px; }
  .collection-layout { grid-template-columns:1fr; gap:0; padding:30px 30px 10px; }
  .collection-story { padding:0; }
  .collection-counter { margin-bottom:17px; font-size:11px; }
  .collection-story h3 { font-size:42px; }
  #collection-description { max-width:520px; font-size:14px; margin:16px 0; min-height:72px; }
  .collection-story .collection-detail { max-width:470px; font-size:10px; min-height:32px; }
  .collection-visual { width:100%; max-width:530px; height:450px; margin:8px auto 0; }
  .collection-table-card table { font-size:11px; }
  .collection-table-card tbody th { font-size:10px; }
  .collection-document { width:250px; left:calc(50% - 125px); }
  .document-back { transform:translate(62px,-20px) rotate(12deg); }
  .document-middle { transform:translate(-55px,10px) rotate(-12deg); }
  .collection-controls { margin:0 20px 23px; gap:10px; }
  .collection-tabs { flex:1; justify-content:center; padding:4px; gap:1px; }
  .collection-tabs button { flex:1; flex-direction:column; gap:4px; font-size:10px; padding:9px 8px; min-height:48px; border-radius:18px; }
  .collection-tabs button>span { font-size:8px; }
  .collection-outro { padding-top:30px; justify-content:center; text-align:center; }
  .collection-outro>p { width:100%; }
}
@media(max-width:480px) {
  .collection-intro h2 { font-size:46px; }
  .collection-intro>p:not(.eyebrow) { font-size:15px; }
  .collection-intro .eyebrow { font-size:8px; }
  .collection-track { padding:0 12px; }
  .collection-topline { padding:23px 20px 0; font-size:7px; letter-spacing:.1em; }
  .collection-topline>span:first-child { gap:6px; }
  .collection-topline-divider { margin:0; }
  .collection-layout { padding:27px 20px 5px; }
  .collection-story h3 { font-size:37px; }
  #collection-description { font-size:13px; min-height:90px; }
  .collection-story .collection-detail { min-height:33px; }
  .collection-visual { height:425px; margin-top:5px; }
  .collection-document { width:220px; height:268px; left:calc(50% - 110px); padding:21px; }
  .document-back { transform:translate(30px,-17px) rotate(10deg); }
  .document-middle { transform:translate(-28px,7px) rotate(-10deg); }
  .collection-document h4 { font-size:24px; }
  .collection-request { left:0; right:0; padding:16px; }
  .collection-request p { font-size:14px; }
  .collection-request>div>span { font-size:8px; }
  .collection-table-heading { padding:16px 13px; }
  .collection-table-heading h4 { font-size:17px; }
  .collection-table-badge { font-size:8px; padding:5px 7px; }
  .collection-table-card table { font-size:9px; }
  .collection-table-card th,.collection-table-card td { padding:13px 6px; }
  .collection-table-card thead th { font-size:8px; }
  .collection-table-card tbody th { font-size:8px; min-width:83px; }
  .collection-table-card th:first-child { padding-left:12px; }
  .collection-table-card td:last-child { padding-right:12px; }
  .collection-table-footer { padding:13px 12px; gap:5px; font-size:7px; }
  #collection-source-button { font-size:9px; }
  #collection-source-button span { margin-left:0; }
  .collection-shell[data-step="2"] #collection-source-button { padding:7px 5px; margin:-7px -6px; }
  .collection-evidence { top:304px; left:0; padding:14px; }
  .collection-evidence p { font-size:11px; }
  .collection-evidence-foot { font-size:7px; }
  .collection-privacy { top:330px; left:0; right:0; padding:14px; gap:10px; }
  .collection-privacy strong { font-size:11px; }
  .collection-privacy div>span { font-size:9px; }
  .collection-export { top:314px; }
  .collection-export p { font-size:7px; }
  .collection-formats { margin-bottom:12px; }
  .collection-formats span { font-size:9px; padding:6px 11px; }
  .collection-controls { margin:8px 12px 20px; gap:8px; flex-wrap:wrap; }
  .collection-tabs { flex-basis:100%; border-radius:22px; }
  .collection-tabs button { font-size:9px; padding:8px 3px; }
  .collection-play { width:40px; height:40px; }
  .collection-outro>p { font-size:14px; }
  .collection-outro .button { font-size:13px; }
}
@media(max-width:350px) {
  .collection-intro h2 { font-size:40px; }
  .collection-layout { padding-left:14px; padding-right:14px; }
  .collection-topline { padding-left:16px; padding-right:16px; }
  .collection-topline>span:last-child { font-size:6px; }
  .collection-story h3 { font-size:33px; }
  .collection-table-card table { font-size:8px; }
  .collection-table-card tbody th { min-width:75px; font-size:7px; }
  .collection-table-card thead th { font-size:7px; }
  .collection-table-card th,.collection-table-card td { padding-left:5px; padding-right:5px; }
  .collection-table-heading h4 { font-size:15px; }
  .collection-table-footer { font-size:6px; }
  .collection-document { width:205px; left:calc(50% - 102px); }
}
@media(prefers-reduced-motion:reduce) {
  .collection-shell * { animation:none!important; transition:none!important; }
}
/* Keep annotations below the complete table, including at larger text sizes. */
.collection-visual { height:500px; }
.collection-table-heading { padding:17px 20px; line-height:1.3; }
.collection-table-heading h4 { margin-top:7px; line-height:1.2; }
.collection-table-card th,.collection-table-card td { padding-top:12px; padding-bottom:12px; line-height:1.4; }
.collection-table-card thead th { padding-top:10px; padding-bottom:10px; }
.collection-table-footer { padding-top:12px; padding-bottom:12px; line-height:1.4; }
.collection-shell[data-step="2"] .collection-table-card,.collection-shell[data-step="3"] .collection-table-card { transform:translateY(-50px); }
.collection-evidence,.collection-privacy { top:calc(55px + var(--collection-table-height,270px) + 16px); }
.collection-shell[data-step="4"] .collection-table-card { transform:translateY(-50px); }
.collection-export { top:calc(55px + var(--collection-table-height,270px) + 20px); }
.collection-shell[data-step="1"] .collection-table-card { transform:translateY(100px); }
.collection-story h3 { text-wrap:balance; }
@media(max-width:800px) {
  .collection-visual { height:490px; }
}
@media(max-width:480px) {
  .collection-visual { height:460px; }
  .collection-table-heading { padding:16px 12px; }
  .collection-table-card th,.collection-table-card td { padding-top:12px; padding-bottom:12px; }
  .collection-table-footer { padding:12px; }
  .collection-shell[data-step="1"] .collection-table-card { transform:translateY(78px); }
  .collection-request { top:12px; }
}
.collection-visual { height:max(500px,calc(var(--collection-table-height,280px) + 220px)); }
.collection-shell[data-step="0"].is-changing .document-back { animation:collection-back-in 1.3s var(--collection-ease) both; }
.collection-shell[data-step="0"].is-changing .document-middle { animation:collection-middle-in 1.2s .08s var(--collection-ease) both; }
.collection-shell[data-step="0"].is-changing .document-front { animation:collection-front-in 1.1s .15s var(--collection-ease) both; }
.collection-shell[data-step="3"].is-changing tbody th { animation:collection-anonymous .9s var(--collection-ease) both; }
.collection-shell[data-step="3"].is-changing tbody tr:nth-child(2) th { animation-delay:.15s; }
.collection-shell[data-step="3"].is-changing tbody tr:nth-child(3) th { animation-delay:.3s; }
.collection-shell[data-step="4"].is-changing .collection-formats span { animation:collection-copy .8s var(--collection-ease) both; }
.collection-shell[data-step="4"] .collection-formats span:nth-child(2) { animation-delay:.08s; }
.collection-shell[data-step="4"] .collection-formats span:nth-child(3) { animation-delay:.16s; }
.collection-shell[data-step="4"] .collection-formats span:nth-child(4) { animation-delay:.24s; }
@keyframes collection-back-in { from { opacity:0; translate:-25px 40px; rotate:-12deg; } to { opacity:1; translate:0 0; rotate:0deg; } }
@keyframes collection-middle-in { from { opacity:0; translate:25px 40px; rotate:12deg; } to { opacity:1; translate:0 0; rotate:0deg; } }
@keyframes collection-front-in { from { opacity:0; translate:0 45px; scale:.93; } to { opacity:1; translate:0 0; scale:1; } }
@keyframes collection-anonymous { from { opacity:.2; filter:blur(6px); } to { opacity:1; filter:blur(0); } }
@media(min-width:1101px) {
  .collection-table-card table,#collection-source-button { font-size:13px; }
  .collection-table-card thead th,.collection-table-card tbody th { font-size:11px; }
  .collection-table-footer { font-size:9px; }
  .collection-table-heading h4 { font-size:21px; }
}
@media(max-width:480px) {
  .collection-visual { height:max(480px,calc(var(--collection-table-height,270px) + 230px)); }
}

/* A native scroll runway holds the stage while its playhead moves both ways. */
.collection-pin { position:relative; }
.collection-scroll .collection-pin { position:sticky; top:var(--collection-pin-top,94px); height:var(--collection-pin-height); }
.collection-scroll .collection-shell { transform:scale(var(--collection-pin-scale,1)); transform-origin:top center; }
.collection-scroll .collection-shell *, .collection-scroll .collection-shell *:before, .collection-scroll .collection-shell *:after { animation:none!important; transition:none!important; }
.collection-scroll-cue { color:#b3a4c4; font-size:10px; text-align:center; margin:-12px 0 20px; letter-spacing:.03em; }
.collection-scroll-cue span { display:inline-block; margin-left:10px; font-size:16px; }
.collection-no-motion .collection-scroll-cue { display:none; }
@media(max-width:800px) {
  .collection-scroll .collection-topline { padding-top:17px; }
  .collection-scroll .collection-layout { padding-top:18px; padding-bottom:0; }
  .collection-scroll .collection-counter { margin-bottom:10px; font-size:10px; }
  .collection-scroll .collection-story h3 { font-size:30px; min-height:96px; }
  .collection-scroll #collection-description { font-size:12px; line-height:1.5; min-height:72px; margin:10px 0 0; }
  .collection-scroll .collection-detail { display:none; }
  .collection-scroll .collection-visual { margin-top:0; }
  .collection-scroll .collection-controls { margin-bottom:18px; }
  .collection-scroll .collection-scroll-cue { margin-top:-9px; margin-bottom:14px; font-size:9px; }
}
.collection-shell { overflow:clip; }
