/* ═══ ATLAS v7 — bundle page ═══ */
.bd-hero{padding:clamp(40px,7vh,84px) 0 clamp(48px,8vh,96px);overflow:hidden}
.bd-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,6vw,72px);align-items:center}

.bd-stage{align-self:center}
.orbit-mini{width:min(340px,72vw);height:min(380px,80vw)}
/* legacy shelf styles retained below (unused) */
/* shelf: three covers assemble into a fan, then breathe */
.bd-shelf{position:relative;height:clamp(320px,42vw,480px);perspective:1200px}
.bd-shelf .bk{position:absolute;top:50%;left:50%;width:clamp(180px,24vw,260px);height:auto;
  border-radius:12px;border:1px solid var(--line);
  box-shadow:0 30px 60px -28px rgba(22,24,29,.4);will-change:transform;opacity:0}
[data-theme="dark"] .bd-shelf .bk{box-shadow:0 30px 60px -24px rgba(0,0,0,.72)}
.bd-shelf.set .bk{opacity:1}
.bd-shelf.set .bk1{transform:translate(-50%,-50%) translateX(-34%) rotate(-7deg) scale(.92)}
.bd-shelf.set .bk2{transform:translate(-50%,-50%) translateY(-3%) rotate(.5deg);z-index:2}
.bd-shelf.set .bk3{transform:translate(-50%,-50%) translateX(34%) rotate(7deg) scale(.92)}
.bd-shelf.enter .bk{transition:transform 1s var(--ease-spring),opacity .5s ease}
.bd-shelf.pre .bk1{transform:translate(-50%,-50%) translate(-70%,30%) rotate(-22deg) scale(.8)}
.bd-shelf.pre .bk2{transform:translate(-50%,-50%) translateY(40%) scale(.84)}
.bd-shelf.pre .bk3{transform:translate(-50%,-50%) translate(70%,30%) rotate(22deg) scale(.8)}
.bd-shelf.idle .bk1{animation:bkfloat 8.6s ease-in-out infinite}
.bd-shelf.idle .bk2{animation:bkfloat 9.8s ease-in-out .6s infinite}
.bd-shelf.idle .bk3{animation:bkfloat 11s ease-in-out 1.1s infinite}
@keyframes bkfloat{0%,100%{translate:0 0}50%{translate:0 -8px}}
@media (prefers-reduced-motion:reduce){
  .bd-shelf .bk{opacity:1;transition:none!important;animation:none!important}
}

/* comparison columns — clickable cards */
.bd-table{padding-bottom:clamp(56px,9vh,110px)}
.bd-cols{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(16px,2.4vw,28px);margin-top:36px}
.bd-col{position:relative;display:flex;flex-direction:column;gap:12px;text-decoration:none;
  background:var(--surface);border:1px solid var(--line);border-radius:18px;
  padding:26px 24px;overflow:hidden;
  transition:transform var(--dur-micro) var(--ease-out),border-color var(--dur-micro)}
.bd-col:hover{transform:translateY(-4px);border-color:var(--accent)}
.bd-col .toprule{position:absolute;top:-1px;left:18px;right:18px;height:3px;border-radius:0 0 3px 3px;
  transition:height var(--dur-micro)}
.bd-col:hover .toprule{height:5px}
.bd-col.c-vault .toprule{background:var(--tint-vault)}
.bd-col.c-income .toprule{background:var(--tint-income)}
.bd-col.c-trading .toprule{background:var(--tint-trading)}
.bd-col h3{font-size:1.12rem}
.bd-col ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}
.bd-col li{font-size:13.5px;color:var(--ink-soft);padding-left:16px;position:relative;line-height:1.5}
.bd-col li::before{content:"·";position:absolute;left:2px;color:var(--accent);font-weight:700}
.bd-val{font-family:var(--mono);font-size:12px;color:var(--ink-soft);margin-top:auto}
.bd-more{font-size:13.5px;font-weight:600;color:var(--accent)}

/* receipt section */
.bd-receipt{padding-bottom:clamp(56px,9vh,110px)}
.bd-receipt .receipt{margin-top:36px}

/* all-access */
.bd-access .bd-access-card{display:flex;align-items:center;justify-content:space-between;
  gap:clamp(20px,4vw,48px);background:color-mix(in srgb,var(--accent) 5%,var(--surface));
  border:1.5px solid var(--accent);border-radius:20px;
  padding:clamp(24px,4vw,40px);position:relative;overflow:hidden;
  transition:transform .45s var(--ease-spring),box-shadow .45s var(--ease-out)}
.bd-access .bd-access-card::before{content:"";position:absolute;inset:0;
  background:radial-gradient(120% 160% at 100% 0%,color-mix(in srgb,var(--accent) 12%,transparent),transparent 55%)}
.bd-access .bd-access-card>*{position:relative}
.bd-access .bd-access-card:hover{transform:translateY(-4px);
  box-shadow:0 20px 46px -20px color-mix(in srgb,var(--accent) 45%,transparent)}
.bd-access h2{font-size:clamp(1.3rem,2.2vw,1.7rem);margin:6px 0 10px}
.bd-access p{color:var(--ink-soft);line-height:1.7;max-width:56ch}
.bd-access p b{color:var(--ink)}
.bd-access .btn{flex:0 0 auto}

/* faq */
.bd-faq{padding:clamp(56px,9vh,110px) 0}
.bd-faq h2{margin-bottom:18px}

/* ── relaunch: the Set additions ── */
/* digital card toprule — picks up --tint-digital when the brand slot lands */
.bd-col.c-digital .toprule{background:var(--tint-digital,var(--tint-income))}

/* the pair table — mechanics of the two Blueprints, never outcomes */
.bd-pair{max-width:680px;margin:clamp(32px,5vh,48px) auto 0;overflow-x:auto}
.bd-pair table{width:100%;min-width:460px;border-collapse:separate;border-spacing:0;
  background:var(--surface);border:1px solid var(--line);border-radius:16px}
.bd-pair th,.bd-pair td{padding:12px 16px;text-align:left;vertical-align:top}
.bd-pair thead th{font-family:var(--mono);font-size:11px;letter-spacing:.1em;
  color:var(--ink);text-transform:uppercase;border-bottom:1px solid var(--line)}
.bd-pair tbody th{font-family:var(--mono);font-size:10.5px;letter-spacing:.08em;
  color:var(--ink-soft);text-transform:uppercase;font-weight:500;white-space:nowrap}
.bd-pair tbody td{font-size:13.5px;color:var(--ink-soft);line-height:1.55}
.bd-pair tbody tr+tr th,.bd-pair tbody tr+tr td{border-top:1px solid var(--line)}
.bd-pair-cap{max-width:680px;margin:14px auto 0;font-size:13.5px;color:var(--ink-soft);
  line-height:1.6;text-align:center}

/* receipt recommendation tag (ours, never "most popular") */
.bd-receipt .r-rec{font-family:var(--mono);font-size:11px;letter-spacing:.06em;
  color:var(--ink-soft);text-align:center;line-height:1.6}

/* all-access: space between stacked paragraphs */
.bd-access p+p{margin-top:10px}

@media (max-width:880px){
  .bd-grid{grid-template-columns:1fr}
  .bd-shelf{order:-1;height:clamp(260px,60vw,340px)}
  .bd-shelf .bk{width:clamp(150px,34vw,200px)}
  .bd-cols{grid-template-columns:1fr}
  .bd-access .bd-access-card{flex-direction:column;align-items:flex-start}
}
