/* Calibrex OSINT Academy — showcase pieces (Academy home + calibrex.org homepage feature). Builds on /styles.css variables. */
.kicker{display:block;font:500 10px 'DM Mono',monospace;letter-spacing:2px;color:var(--gold)}
[data-show] h2,.sx-worlds h2{font:700 clamp(30px,4vw,52px)/1.08 'Playfair Display',Georgia,serif;letter-spacing:-.5px;margin:12px 0 16px}
.sx-rise{opacity:0;transform:translateY(18px);animation:sx-rise .9s cubic-bezier(.2,.7,.2,1) forwards}
.sx-rise:nth-child(2){animation-delay:.12s}.sx-rise:nth-child(3){animation-delay:.24s}.sx-rise:nth-child(4){animation-delay:.36s}
@keyframes sx-rise{to{opacity:1;transform:none}}

/* ---------- 1. Vault ---------- */
.sx-vault{position:relative;min-height:calc(100vh - 76px);min-height:calc(100svh - 76px);display:flex;align-items:center;overflow:hidden;padding:50px 0 80px;background:radial-gradient(900px 600px at 72% 45%,#e9bd7814,transparent 65%),radial-gradient(700px 500px at 10% 90%,#1b2c5c33,transparent 60%)}
.sx-dust{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.sx-vault-in{position:relative;z-index:1;display:grid;grid-template-columns:1.05fr 1fr;gap:30px;align-items:center}
.sx-vault h1{font:700 clamp(46px,7vw,98px)/.98 'Playfair Display',Georgia,serif;letter-spacing:-2px;margin:18px 0 0}
.sx-vault h1 em{font-style:italic;color:var(--gold);text-shadow:0 0 40px #e9bd7855}
.sx-vault-copy>p{color:#b9c2d3;font-size:17.5px;line-height:1.75;max-width:560px;margin:24px 0 0}
.sx-vault .pg-ctas{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}
.sx-seal-stage{position:relative;aspect-ratio:1;max-width:540px;width:100%;justify-self:center;transform:perspective(1200px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));transition:transform .4s ease-out}
.sx-seal{width:100%;height:100%;overflow:visible;filter:drop-shadow(0 0 40px #e9bd7826)}
.sx-rings path{fill:none;stroke-width:.6;vector-effect:non-scaling-stroke}
.sx-g1{stroke:#e9bd7866;animation:sx-spin 120s linear infinite}
.sx-g2{stroke:#88baff3a;animation:sx-spin 90s linear infinite reverse}
.sx-g3{stroke:#e9bd7833;animation:sx-spin 160s linear infinite}
.sx-ring-gold{fill:none;stroke:url(#none);stroke:#e9bd78;stroke-width:2.2;filter:drop-shadow(0 0 8px #e9bd78aa);animation:sx-pulse 3.6s ease-in-out infinite}
.sx-ring-thin{fill:none;stroke:#e9bd7888;stroke-width:.8}
.sx-core{fill:#0a0d16;stroke:#e9bd7855;stroke-width:1}
.sx-legend-text{fill:#e9bd78;font:600 10.5px 'DM Mono',monospace;letter-spacing:3.2px}
.sx-legend{animation:sx-spin 70s linear infinite;transform-origin:0 0}
.sx-rings{transform-origin:0 0}
.sx-rings path{transform-origin:0 0}
@keyframes sx-spin{to{transform:rotate(360deg)}}
@keyframes sx-pulse{50%{opacity:.55}}
.sx-file{position:absolute;right:-2%;bottom:4%;width:min(250px,48%);padding:16px 16px 14px;border-radius:6px;background:linear-gradient(160deg,#f3e7cc,#e2d1a8);color:#2a2112;box-shadow:0 30px 60px #000b;transform:translate(30px,40px) rotate(6deg);opacity:0;animation:sx-file 1.2s cubic-bezier(.2,.8,.2,1) .9s forwards}
.sx-file-tab{position:absolute;top:-18px;left:14px;padding:4px 10px;border-radius:6px 6px 0 0;background:#e2d1a8;font:600 9px 'DM Mono',monospace;letter-spacing:1.5px}
.sx-file b{font:700 20px 'Playfair Display',Georgia,serif;letter-spacing:.5px}
.sx-file dl{margin:10px 0 0;display:grid;grid-template-columns:auto 1fr;gap:4px 10px;font-size:11.5px}
.sx-file dt{font:500 9px 'DM Mono',monospace;letter-spacing:1px;text-transform:uppercase;color:#7a6343;padding-top:2px}
.sx-file dd{margin:0;font-weight:700}
.sx-stamp{position:absolute;right:12px;top:12px;padding:3px 8px;border:2px solid #1e8a4c;color:#1e8a4c;border-radius:4px;font:700 10px 'DM Mono',monospace;letter-spacing:2px;transform:rotate(-8deg) scale(2);opacity:0;animation:sx-stamp .45s cubic-bezier(.3,1.6,.5,1) 2.1s forwards}
@keyframes sx-file{to{opacity:1;transform:rotate(-3deg)}}
@keyframes sx-stamp{to{opacity:.9;transform:rotate(-8deg) scale(1)}}
.sx-scroll{position:absolute;left:50%;bottom:22px;transform:translateX(-50%);width:24px;height:38px;border:1.5px solid #ffffff44;border-radius:12px;z-index:1}
.sx-scroll span{position:absolute;left:50%;top:7px;width:3px;height:8px;margin-left:-1.5px;border-radius:2px;background:var(--gold);animation:sx-cue 1.8s ease-in-out infinite}
@keyframes sx-cue{50%{transform:translateY(12px);opacity:.3}}

/* ---------- 2. Anatomy ---------- */
.sx-anatomy{padding:100px 0 40px}
.sx-anatomy-in{display:grid;grid-template-columns:1.1fr 1fr;gap:50px;align-items:start}
.sx-ana-stage{position:sticky;top:110px}
.sx-photo{position:relative;border-radius:14px;overflow:hidden;box-shadow:0 40px 90px #000b,0 0 0 1px #ffffff14;background:#0a0d16}
.sx-photo-art{display:block;width:100%;height:auto;transition:filter .8s}
.sx-photo[data-step="4"] .sx-photo-art{filter:grayscale(.6) brightness(.6)}
.sx-post{position:absolute;left:12px;right:12px;bottom:12px;padding:10px 12px;border-radius:10px;background:#0b0e17e6;color:#fff;font-size:13px;display:flex;flex-direction:column;gap:2px;transition:opacity .5s,transform .5s}
.sx-post small{color:#9aa3b5;font-size:11px}
.sx-photo:not([data-step="0"]) .sx-post{opacity:0;transform:translateY(10px)}
.sx-ov{position:absolute;opacity:0;transition:opacity .6s,transform .6s;pointer-events:none}
.sx-ov b{font:600 11px 'DM Mono',monospace;letter-spacing:1.5px;color:#fff;display:block}
.sx-ov small{font-size:11.5px;color:#cfd6e4}
.sx-ov-search{right:12px;top:12px;width:62%;padding:12px;border-radius:10px;background:#0b0e17ee;border:1px solid #88baff55;transform:translateY(-8px)}
.sx-ov-search span{font:600 9.5px 'DM Mono',monospace;letter-spacing:1.5px;color:#88baff}
.sx-ov-search ol{margin:8px 0 0;padding-left:18px;font-size:12px;color:#cfd6e4;line-height:1.7}
.sx-ov-search li.hit{color:#f5c26b;font-weight:700}
.sx-photo[data-step="1"] .sx-ov-search{opacity:1;transform:none}
.sx-ov-geo{inset:0;padding:12px;display:flex;flex-direction:column;justify-content:flex-end;background:linear-gradient(transparent 55%,#0b0e17dd)}
.sx-pin{position:absolute;width:18px;height:18px;margin:-9px 0 0 -9px;border-radius:50%;border:2px solid #3ddc84;box-shadow:0 0 0 6px #3ddc8433;animation:sx-ping 1.6s ease-out infinite}
@keyframes sx-ping{70%{box-shadow:0 0 0 14px #3ddc8400}}
.sx-photo[data-step="2"] .sx-ov-geo{opacity:1}
.sx-ov-sun{inset:0;padding:12px;display:flex;flex-direction:column;justify-content:flex-end;background:linear-gradient(transparent 55%,#0b0e17dd)}
.sx-ov-sun svg{position:absolute;inset:0;width:100%;height:100%}
.sx-photo[data-step="3"] .sx-ov-sun{opacity:1}
.sx-ov-verdict{inset:0;display:grid;place-content:center;text-align:center;gap:8px}
.sx-verdict{font:700 clamp(26px,4vw,40px) 'DM Mono',monospace;letter-spacing:4px;color:#ff6b6b;border:3px solid #ff6b6b;padding:6px 16px;transform:rotate(-6deg) scale(1.6);opacity:0;transition:transform .45s cubic-bezier(.3,1.6,.5,1),opacity .3s}
.sx-photo[data-step="4"] .sx-ov-verdict{opacity:1}
.sx-photo[data-step="4"] .sx-verdict{transform:rotate(-6deg) scale(1);opacity:1}
.sx-ana-steps ol{list-style:none;padding:0;margin:26px 0 0;display:grid;gap:14px}
.sx-ana-steps li{padding:22px;border:1px solid var(--line);border-radius:18px;background:#ffffff04;cursor:pointer;opacity:.45;transition:opacity .4s,border-color .4s,background .4s;min-height:22vh}
.sx-ana-steps li.on{opacity:1;border-color:#e9bd7866;background:#e9bd780a}
.sx-ana-steps li b{font:600 12px 'DM Mono',monospace;letter-spacing:1.2px;color:var(--gold)}
.sx-ana-steps li p{margin:8px 0 0;color:#cfd6e4;line-height:1.7;font-size:15px}

/* ---------- 3. Cycle ---------- */
.sx-cycle{padding:100px 0 40px}
.sx-cycle-in{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}
.sx-cycle-desc{color:#cfd6e4;font-size:17px;line-height:1.75;min-height:8.5em;max-width:520px}
.sx-cycle-desc b{color:var(--gold);font-family:'Playfair Display',Georgia,serif;font-size:22px}
.sx-cycle-wheel{position:relative;width:min(100%,420px);aspect-ratio:1;justify-self:center}
.sx-cycle-wheel svg{position:absolute;inset:0;width:100%;height:100%;transform:rotate(-90deg)}
.sx-orbit{fill:none;stroke:#ffffff14;stroke-width:1.5}
.sx-orbit-run{fill:none;stroke:var(--gold);stroke-width:2.5;stroke-linecap:round;stroke-dasharray:741;stroke-dashoffset:741;transition:stroke-dashoffset 1.2s cubic-bezier(.2,.7,.2,1);filter:drop-shadow(0 0 6px #e9bd78aa)}
.sx-cycle-wheel button{position:absolute;left:50%;top:50%;width:86px;height:86px;margin:-43px 0 0 -43px;border-radius:50%;border:1px solid var(--line);background:#0b0e17;color:var(--text);font:700 13px Manrope,sans-serif;cursor:pointer;transform:rotate(var(--a)) translate(calc(min(420px,100vw - 48px) * .369)) rotate(calc(var(--a) * -1));transition:background .3s,border-color .3s,box-shadow .3s,color .3s}
.sx-cycle-wheel button.on{background:linear-gradient(135deg,#fff0d7,#e9bd78 50%,#cda05b);color:#17130d;border-color:#e9bd78;box-shadow:0 0 30px #e9bd7866}
.sx-cycle-core{position:absolute;inset:34%;border-radius:50%;display:grid;place-content:center;text-align:center;border:1px dashed #e9bd7844}
.sx-cycle-core b{font:700 22px 'Playfair Display',Georgia,serif}
.sx-cycle-core small{font:500 9px 'DM Mono',monospace;letter-spacing:2px;color:var(--muted);text-transform:uppercase}

/* ---------- 4/5. Network + Geo ---------- */
.sx-duo{display:grid;grid-template-columns:1fr 1fr;gap:18px;padding-top:90px}
.sx-panel{border:1px solid var(--line);border-radius:24px;padding:24px;background:linear-gradient(160deg,#ffffff06,#0a0d16);display:flex;flex-direction:column;gap:6px}
.sx-panel h3{font:700 26px 'Playfair Display',Georgia,serif;margin:6px 0 10px}
.sx-panel p{color:#cfd6e4;font-size:14.5px;line-height:1.6;min-height:3.2em;margin:12px 0 10px}
.sx-panel .link-btn{align-self:flex-start;border:1px solid #e9bd7855;background:none;color:var(--gold);border-radius:99px;padding:8px 14px;font:700 12.5px Manrope,sans-serif;cursor:pointer}
.sx-net,.sx-geo{position:relative;border-radius:16px;background:#070a12;border:1px solid #ffffff10;overflow:hidden}
.sx-net-svg,.sx-geo-svg{display:block;width:100%;height:auto}
.sx-edge line{stroke:#e9bd78;stroke-width:1.5;stroke-dasharray:4 5;opacity:0;transition:opacity .6s}
.sx-edge text{fill:#9aa3b5;font:500 8.5px 'DM Mono',monospace;opacity:0;transition:opacity .6s}
.sx-edge.on line,.sx-edge.on text{opacity:1}
.sx-edge.on line{animation:sx-flow 1.4s linear infinite}
@keyframes sx-flow{to{stroke-dashoffset:-18}}
.sx-node{opacity:.12;transition:opacity .6s}
.sx-node.on{opacity:1}
.sx-node circle:first-child{fill:#0b0e17;stroke:#88baff;stroke-width:2}
.sx-node.co circle:first-child{stroke:#e9bd78}.sx-node.person circle:first-child{stroke:#c46bff}.sx-node.place circle:first-child{stroke:#3ddc84}.sx-node.doc circle:first-child{stroke:#ff8a2a}
.sx-halo{fill:none;stroke:#e9bd78;stroke-width:1;opacity:0}
.sx-node.hot .sx-halo{animation:sx-halo 1.6s ease-out infinite}
@keyframes sx-halo{0%{opacity:.8;r:15}100%{opacity:0;r:30}}
.sx-nn{fill:#f2f5fb;font:700 9px Manrope,sans-serif;letter-spacing:.5px}
.sx-ns{fill:#8b96ab;font:500 7.5px 'DM Mono',monospace}
.sx-land{fill:#121a2c;stroke:#2c3a5a;stroke-width:1.2}
.sx-river{fill:none;stroke:#2d6f8f;stroke-width:3}
.sx-river.thin{stroke-width:2.2}
.sx-bridge{stroke:#e9bd78;stroke-width:2.5}
.sx-zone{fill:#e9bd7814;stroke:#e9bd78;stroke-width:1.5;stroke-dasharray:4 4;opacity:0;transition:opacity .6s}
.sx-geo[data-stage="0"] .z0,[data-stage="0"] .z0,[data-stage="1"] .z1{opacity:1}
.sx-street{stroke:#3a4866;stroke-width:1}
.sx-tram{stroke:#f5a944;stroke-width:1.6;stroke-dasharray:3 2;opacity:0;transition:opacity .6s}
[data-stage="2"] .sx-tram,[data-stage="3"] .sx-tram{opacity:1}
.sx-cross{opacity:0;transition:opacity .6s}
.sx-cross circle{fill:none;stroke:#3ddc84;stroke-width:2}.sx-cross line{stroke:#3ddc84;stroke-width:1.5}
[data-stage="3"] .sx-cross{opacity:1}
.sx-geo-lock{position:absolute;left:12px;bottom:12px;padding:6px 10px;border-radius:8px;background:#0b0e17ee;border:1px solid #3ddc8466;color:#3ddc84;font:600 10.5px 'DM Mono',monospace;letter-spacing:1.2px;opacity:0;transform:translateY(6px);transition:opacity .5s .8s,transform .5s .8s}
[data-stage="3"] .sx-geo-lock{opacity:1;transform:none}

/* ---------- 6. Spot the fake ---------- */
.sx-fake{padding-top:100px}
.sx-fake-q{font:italic 600 20px 'Playfair Display',Georgia,serif;color:#f3e7cc;margin:0 0 20px}
.sx-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.sx-card{text-align:left;cursor:pointer;border:1px solid var(--line);border-radius:18px;padding:18px;background:#0b0e17;color:var(--text);display:flex;flex-direction:column;gap:8px;transition:transform .25s,border-color .25s,box-shadow .25s}
.sx-card:hover{transform:translateY(-3px);border-color:#e9bd7866}
.sx-k{font:600 9.5px 'DM Mono',monospace;letter-spacing:1.4px;color:var(--gold)}
.sx-card b{font-size:15px;line-height:1.45}
.sx-card small{color:var(--muted);font-size:12.5px;line-height:1.5}
.sx-why{display:none;font-style:normal;font-size:12.5px;line-height:1.5;padding-top:8px;border-top:1px solid var(--line)}
.done .sx-why{display:block}
.sx-card.real{border-color:#3ddc8466}.sx-card.real .sx-why{color:#9be7bd}
.sx-card.fake{border-color:#ff6b6b;box-shadow:0 0 0 1px #ff6b6b,0 0 40px #ff6b6b22}.sx-card.fake .sx-why{color:#ffb3b3}
.done .sx-card{cursor:default;transform:none}
.sx-fake-out{margin:18px 0 0;font-size:15.5px;line-height:1.6;color:#cfd6e4;min-height:1.6em}
.sx-fake-out b{color:var(--gold)}.sx-fake-out a{color:var(--gold);font-weight:700}

/* ---------- 7. Ladder ---------- */
.sx-ladder{padding-top:100px}
.sx-steps{list-style:none;padding:0;margin:10px 0 0;display:grid;grid-template-columns:repeat(5,1fr);gap:12px;align-items:end}
.sx-steps li{display:flex;flex-direction:column;gap:6px;padding:16px;border:1px solid #e9bd7833;border-radius:16px 16px 6px 6px;background:linear-gradient(180deg,color-mix(in srgb,var(--gold) calc(var(--lv) * 4%),transparent),#0a0d16);min-height:calc(110px + var(--lv) * 26px);justify-content:flex-end;opacity:0;transform:translateY(30px);transition:opacity .7s,transform .7s cubic-bezier(.2,.7,.2,1);transition-delay:calc(var(--lv) * 110ms)}
.sx-in .sx-steps li{opacity:1;transform:none}
.sx-steps span{font:500 10px 'DM Mono',monospace;letter-spacing:1.4px;color:var(--gold);text-transform:uppercase}
.sx-steps b{font:700 18px/1.2 'Playfair Display',Georgia,serif}
.sx-steps small{color:var(--muted);font-size:12px;line-height:1.45}
.sx-steps em{font-style:normal;font-weight:800;font-size:13px;color:#f3e7cc}
.sx-ladder .pg-ctas,.sx-worlds .pg-ctas,.sx-final .pg-ctas{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}

/* ---------- 8. Worlds ---------- */
.sx-worlds{padding-top:100px;display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}
.sx-worlds p{color:#b9c2d3;line-height:1.75;font-size:16px}
.sx-world-chips{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:10px}
.sx-world-chips li{padding:10px 14px;border-radius:99px;border:1px solid color-mix(in srgb,var(--p) 50%,transparent);background:color-mix(in srgb,var(--p) 10%,transparent);font-size:13px;font-weight:700;color:#f2f5fb;box-shadow:0 0 24px color-mix(in srgb,var(--p) 12%,transparent)}
.sx-world-chips li:before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--p);margin-right:8px;vertical-align:1px;box-shadow:0 0 8px var(--p)}

/* ---------- 9. Reveal ---------- */
.sx-reveal{padding-top:100px;display:grid;grid-template-columns:.9fr 1.3fr;gap:40px;align-items:center}
.sx-reveal p{color:#b9c2d3;line-height:1.75;font-size:16px}
.sx-reveal .button{cursor:pointer}
.sx-reveal-frame{position:relative;overflow:hidden;border-radius:6px;padding:12px;background:linear-gradient(135deg,#2a2112,#0e0b06);box-shadow:0 40px 100px #000c,0 0 0 1px #e9bd7833;transform:perspective(1400px) rotateY(8deg) rotateX(3deg) scale(.96);filter:blur(10px) brightness(.5);opacity:.2;transition:transform 1.4s cubic-bezier(.2,.7,.2,1),filter 1.4s,opacity 1.4s}
.sx-in .sx-reveal-frame{transform:perspective(1400px) rotateY(-4deg) rotateX(2deg);filter:none;opacity:1}
.sx-reveal-frame img{display:block;width:100%;height:auto;border-radius:3px}
.sx-glint{position:absolute;inset:0;background:linear-gradient(105deg,transparent 35%,#fff6 50%,transparent 65%);transform:translateX(-120%);pointer-events:none}
.sx-in .sx-glint{animation:sx-glint 2.2s ease 1.2s 1 forwards}
@keyframes sx-glint{to{transform:translateX(120%)}}
.sx-final{margin-top:100px}

@media (max-width:980px){
  .sx-vault-in,.sx-anatomy-in,.sx-cycle-in,.sx-duo,.sx-worlds,.sx-reveal{grid-template-columns:1fr}
  .sx-seal-stage{max-width:380px;order:-1}
  .sx-ana-stage{top:76px;z-index:2}
  .sx-ana-steps li{min-height:0}
  .sx-steps{grid-template-columns:1fr}
  .sx-steps li{min-height:0;border-radius:16px}
  .sx-cards{grid-template-columns:1fr}
}
@media (max-width:560px){
  .sx-vault{padding-top:24px;min-height:0}
  .sx-seal-stage{max-width:300px}
  .sx-file{width:58%;right:-4%}
  .sx-anatomy,.sx-cycle{padding-top:70px}
  .sx-ana-stage{top:66px}
  .sx-ana-steps li{padding:16px}
  .sx-ov-search{width:78%}
  .sx-cycle-wheel button{width:70px;height:70px;margin:-35px 0 0 -35px;font-size:12px}
  .sx-panel{padding:16px}
}
@media (prefers-reduced-motion:reduce){
  .sx-rise,.sx-file,.sx-stamp{animation:none;opacity:1;transform:none}
  .sx-g1,.sx-g2,.sx-g3,.sx-legend,.sx-ring-gold,.sx-pin,.sx-edge.on line{animation:none}
  .sx-steps li,.sx-reveal-frame{transition:none;opacity:1;transform:none;filter:none}
}

/* ---------- Homepage feature ---------- */
.hp-ac.sx-vault{min-height:0;padding:110px 0 70px;border-top:1px solid #e9bd7822;background:radial-gradient(900px 600px at 75% 40%,#e9bd7816,transparent 65%),linear-gradient(#05070d,#070a12)}
.hp-ac .sx-title{font:700 clamp(42px,6vw,84px)/.98 'Playfair Display',Georgia,serif;letter-spacing:-2px;margin:18px 0 0}
.hp-ac .sx-title em{font-style:italic;color:var(--gold);text-shadow:0 0 40px #e9bd7855}
.hp-ac .sx-vault-copy>p{color:#b9c2d3;font-size:17px;line-height:1.75;max-width:560px;margin:22px 0 0}
.hp-ac .sx-seal-stage{max-width:470px}
.hp-ac .sx-file{opacity:1;transform:rotate(-3deg);animation:none}
.hp-ac.sx-in .sx-file{animation:sx-file 1.2s cubic-bezier(.2,.8,.2,1) .2s both}
.hp-ac .sx-stamp{animation:none;opacity:0}
.hp-ac.sx-in .sx-stamp{animation:sx-stamp .45s cubic-bezier(.3,1.6,.5,1) 1.3s forwards}
.hp-ac-ladder{list-style:none;padding:0;margin:24px 0 0;display:flex;align-items:flex-end;gap:6px;counter-reset:l}
.hp-ac-ladder li{counter-increment:l;flex:1;min-width:0;padding:8px 8px 9px;border:1px solid #e9bd7840;border-radius:10px 10px 3px 3px;font:700 11.5px Manrope,sans-serif;color:#f2e6cf;background:linear-gradient(180deg,#e9bd7818,transparent);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hp-ac-ladder li:before{content:"0" counter(l);display:block;font:500 9px 'DM Mono',monospace;color:var(--gold);letter-spacing:1px;margin-bottom:4px}
.hp-ac-ladder li:nth-child(1){height:52px}.hp-ac-ladder li:nth-child(2){height:62px}.hp-ac-ladder li:nth-child(3){height:72px}.hp-ac-ladder li:nth-child(4){height:82px}.hp-ac-ladder li:nth-child(5){height:92px}
.hp-ac-try{padding-bottom:40px}
.hp-ac-try .sx-fake{padding-top:30px}
.hp-ac-try h2{font:700 clamp(28px,3.4vw,44px)/1.1 'Playfair Display',Georgia,serif;margin:12px 0 14px}
.hp-ac-cert{padding-top:70px}
@media (max-width:560px){.hp-ac.sx-vault{padding:70px 0 40px}.hp-ac-ladder li{font-size:0;padding:6px}.hp-ac-ladder li:before{font-size:9px;margin:0}}

/* Field Notes teaser */
.sx-notes{padding-top:100px;display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}
.sx-notes p{color:#b9c2d3;line-height:1.75;font-size:16px}
.sx-notes h2{font:700 clamp(30px,4vw,52px)/1.08 'Playfair Display',Georgia,serif;margin:12px 0 16px}
.sx-notes .pg-ctas{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}
.sx-notes-list{list-style:none;counter-reset:fnn;padding:0;margin:0;display:grid;grid-template-columns:1fr 1fr;gap:8px}
.sx-notes-list li{counter-increment:fnn;padding:12px 14px;border:1px solid var(--line);border-radius:12px;font-size:13.5px;font-weight:700;background:#ffffff04}
.sx-notes-list li:before{content:counter(fnn,decimal-leading-zero);display:block;font:500 10px 'DM Mono',monospace;color:var(--gold);margin-bottom:4px}
@media (max-width:980px){.sx-notes{grid-template-columns:1fr}}
@media (max-width:420px){.sx-notes-list{grid-template-columns:1fr}}

/* World chips are links into their missions */
.sx-world-chips li{padding:0}
.sx-world-chips a{display:block;padding:10px 14px}
.sx-world-chips li:before{display:none}
.sx-world-chips a:before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--p);margin-right:8px;vertical-align:1px;box-shadow:0 0 8px var(--p)}
.sx-world-chips li{transition:transform .2s,box-shadow .2s}
.sx-world-chips li:hover{transform:translateY(-2px);box-shadow:0 0 30px color-mix(in srgb,var(--p) 30%,transparent)}
.sx-vault + .sx-ladder{padding-top:40px}

/* =====================================================================
   ACADEMY HOME — chapters
   ===================================================================== */
.ax-glance{position:relative;z-index:1;display:grid;grid-template-columns:repeat(5,1fr);gap:0;margin-top:46px;border:1px solid #e9bd7833;border-radius:18px;background:#05070dcc;backdrop-filter:blur(8px);overflow:hidden}
.ax-glance div{padding:16px 18px;border-right:1px solid #e9bd7822;display:flex;flex-direction:column;gap:4px}
.ax-glance div:last-child{border-right:0}
.ax-glance b{font:700 26px 'Playfair Display',Georgia,serif;color:var(--gold)}
.ax-glance span{font-size:12.5px;color:#b9c2d3;line-height:1.4}
.sx-vault{flex-direction:column;justify-content:center}
.sx-vault>.wrap{width:min(var(--max),calc(100% - 48px))}

.ax-chapters{position:sticky;top:76px;z-index:40;display:flex;gap:4px;justify-content:center;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;padding:10px max(16px,calc((100vw - var(--max))/2));background:#05070de6;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-top:1px solid #e9bd7822;border-bottom:1px solid #e9bd7822}
.ax-chapters::-webkit-scrollbar{display:none}
.ax-chapters a{flex-shrink:0;display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:99px;font-size:12.5px;font-weight:700;color:#aab4c5;white-space:nowrap;transition:color .2s,background .2s}
.ax-chapters a i{font:600 10px 'Playfair Display',Georgia,serif;font-style:normal;color:var(--gold);width:20px;height:20px;border-radius:50%;border:1px solid #e9bd7855;display:grid;place-items:center}
.ax-chapters a:hover{color:#fff}
.ax-chapters a.on{background:#e9bd7818;color:#f3e7cc}
.ax-chapters a.on i{background:var(--gold);color:#17130d;border-color:var(--gold)}

.ax-ch{position:relative;padding-top:120px;margin-bottom:34px;max-width:900px;scroll-margin-top:130px;text-align:left}
.ax-ch:before{content:"";position:absolute;left:0;right:-50vw;top:70px;height:1px;background:linear-gradient(90deg,#e9bd7866,transparent 70%)}
.ax-ch-num{display:inline-block;font:600 11px 'DM Mono',monospace;letter-spacing:3px;color:#17130d;background:var(--gold);padding:5px 10px;border-radius:4px;margin-bottom:16px}
.ax-ch .kicker{margin-bottom:6px}
.ax-ch h2{font:700 clamp(36px,5.2vw,68px)/1.04 'Playfair Display',Georgia,serif;letter-spacing:-1.2px;margin:10px 0 16px}
.ax-ch p{color:#b9c2d3;font-size:17.5px;line-height:1.75;max-width:760px;margin:0}

.ax-grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.ax-grid3 article,.ax-pillars article{border:1px solid var(--line);border-radius:20px;padding:24px;background:linear-gradient(160deg,#e9bd7808,#0a0d16 55%)}
.ax-ico{display:grid;place-items:center;width:44px;height:44px;border-radius:12px;border:1px solid #e9bd7855;background:#e9bd7810;margin-bottom:14px}
.ax-ico svg{width:22px;height:22px;fill:none;stroke:var(--gold);stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.ax-grid3 h3,.ax-pillars h3{font:700 21px 'Playfair Display',Georgia,serif;margin:0 0 8px}
.ax-grid3 p,.ax-pillars p{color:#b9c2d3;font-size:14.5px;line-height:1.7;margin:0}
.ax-pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.ax-pillars b{display:block;font:500 11px 'DM Mono',monospace;letter-spacing:2px;color:var(--gold);margin-bottom:14px}

/* Sub-sections inside chapters sit closer together */
.ax-ch ~ .sx-anatomy,.ax-ch ~ .sx-cycle{padding-top:70px}
.ax-ch ~ .sx-fake,.ax-ch ~ .sx-duo{padding-top:60px}
.ax-ch + .sx-ladder,.ax-ch + .sx-worlds,.ax-ch + .sx-notes,.ax-ch + .sx-reveal{padding-top:0}

.ax-steps ol{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.ax-steps li{border:1px solid var(--line);border-radius:18px;padding:20px;background:#0a0d16}
.ax-steps li span{font:700 30px 'Playfair Display',Georgia,serif;color:var(--gold)}
.ax-steps li b{display:block;font-size:16px;margin:8px 0 6px}
.ax-steps li p{margin:0;color:#b9c2d3;font-size:13.5px;line-height:1.6}
.ax-fees{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:14px;border:1px solid #e9bd7833;border-radius:16px;overflow:hidden}
.ax-fees div{padding:14px 16px;border-right:1px solid #e9bd7822;display:flex;flex-direction:column;gap:4px}
.ax-fees div:last-child{border-right:0}
.ax-fees span{font:500 10px 'DM Mono',monospace;letter-spacing:1.4px;color:var(--muted);text-transform:uppercase}
.ax-fees b{font-size:14px;color:#f3e7cc}
.ax-steps .pg-ctas{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}

@media (max-width:980px){
  .ax-glance{grid-template-columns:repeat(3,1fr)}
  .ax-glance div:nth-child(3){border-right:0}
  .ax-glance div:nth-child(n+4){border-top:1px solid #e9bd7822}
  .ax-grid3,.ax-pillars{grid-template-columns:1fr 1fr}
  .ax-steps ol,.ax-fees{grid-template-columns:1fr 1fr}
  .ax-fees div:nth-child(2){border-right:0}.ax-fees div:nth-child(n+3){border-top:1px solid #e9bd7822}
  .ax-chapters{justify-content:flex-start}
}
@media (max-width:560px){
  .ax-glance{grid-template-columns:1fr 1fr;margin-top:30px}
  .ax-glance div{border-right:0!important;border-top:1px solid #e9bd7822}
  .ax-glance div:nth-child(-n+2){border-top:0}
  .ax-glance div:nth-child(odd){border-right:1px solid #e9bd7822!important}
  .ax-glance div:last-child{grid-column:1 / -1;border-right:0!important}
  .ax-chapters{top:66px}
  .ax-ch{padding-top:84px;scroll-margin-top:110px}
  .ax-ch:before{top:50px}
  .ax-grid3,.ax-pillars,.ax-steps ol,.ax-fees{grid-template-columns:1fr}
  .ax-fees div{border-right:0!important;border-top:1px solid #e9bd7822}.ax-fees div:first-child{border-top:0}
}
