/* ═══════════════════════════════════════════════════════════════════════
   ANNE BONNY — the hero, and the one placeholder under it.
   Loaded after legends.css, on /legends/anne-bonny only.

   Everything is namespaced `ab-` so it cannot reach Blackbeard, and every
   colour resolves back to a `--lg-` token from legends.css: the flat tones
   are used directly, the translucent ones are mixed out of the same tokens
   below rather than re-typed as new hexes. There is no palette here.
   ═══════════════════════════════════════════════════════════════════════ */

.legend-page{
  /* veils: the page ground at decreasing strength, for scrims and plates */
  --ab-veil-35: color-mix(in srgb, var(--lg-ink) 35%, transparent);
  --ab-veil-50: color-mix(in srgb, var(--lg-ink) 50%, transparent);
  --ab-veil-55: color-mix(in srgb, var(--lg-ink) 55%, transparent);
  --ab-veil-72: color-mix(in srgb, var(--lg-ink) 72%, transparent);
  --ab-veil-85: color-mix(in srgb, var(--lg-ink) 85%, transparent);
  --ab-veil-90: color-mix(in srgb, var(--lg-ink) 90%, transparent);
  --ab-veil-94: color-mix(in srgb, var(--lg-ink) 94%, transparent);

  /* plates */
  --ab-plate-top: color-mix(in srgb, var(--lg-storm) 86%, transparent);
  --ab-plate-bot: color-mix(in srgb, var(--lg-ink) 90%, transparent);
  --ab-plate-lit-top: color-mix(in srgb, var(--lg-timber) 94%, transparent);
  --ab-plate-lit-bot: color-mix(in srgb, var(--lg-ink) 94%, transparent);
  --ab-note-bg: color-mix(in srgb, var(--lg-panel) 90%, transparent);
  --ab-quote-bg: color-mix(in srgb, var(--lg-storm) 72%, transparent);

  /* washes and fire */
  --ab-wash-ember: color-mix(in srgb, var(--lg-ember) 16%, transparent);
  --ab-wash-storm: color-mix(in srgb, var(--lg-storm) 90%, transparent);
  --ab-wash-gold:  color-mix(in srgb, var(--lg-brass) 28%, transparent);
  --ab-wash-timber: color-mix(in srgb, var(--lg-timber) 92%, transparent);
  --ab-fire-top: color-mix(in srgb, var(--lg-ember) 45%, transparent);
  --ab-fire-bot: color-mix(in srgb, var(--lg-oxblood) 60%, transparent);
  --ab-fire-top-hi: color-mix(in srgb, var(--lg-ember) 62%, transparent);
  --ab-fire-bot-hi: color-mix(in srgb, var(--lg-oxblood) 74%, transparent);
  --ab-fire-glow: color-mix(in srgb, var(--lg-copper) 78%, transparent);
  --ab-selected: color-mix(in srgb, var(--lg-brass) 22%, transparent);
  --ab-selected-2: color-mix(in srgb, var(--lg-brass) 7%, transparent);
  --ab-inset: color-mix(in srgb, #000 50%, transparent);
}

/* ═══ HERO ═══════════════════════════════════════════════════════════
   Two columns: the copy on the left, the plate bleeding in from the right.
   The section itself is full-bleed so the artwork runs to the edge of the
   window, but its padding does what .lg-hero's does — clears the fixed nav
   (--lg-nav-h), holds the site gutter, and stops the copy at --lg-max on a
   wide screen. */

.ab-hero{
  position:relative; isolation:isolate; overflow:hidden;
  background:var(--lg-ink);
  min-height:clamp(600px, 44vw, 860px);
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1.02fr);
  align-items:center;
  padding-block:calc(var(--lg-nav-h) + clamp(18px,2.4vw,44px)) clamp(40px,5vw,74px);
  padding-inline:max(var(--lg-gut), (100% - var(--lg-max)) / 2);
}

/* --- the plate --- */
.ab-hero__media{
  position:absolute; inset:0 0 0 38%;
  z-index:0;
}
.ab-hero__media img{
  width:100%; height:100%; object-fit:cover; object-position:72% 42%;
}
/* left edge dissolves into the page so the copy sits on ground, not on art */
.ab-hero__media::after{
  content:""; position:absolute; inset:0; pointer-events:none;
  background:
    linear-gradient(90deg, var(--lg-ink) 0%, var(--ab-veil-94) 14%, var(--ab-veil-55) 34%, transparent 62%),
    linear-gradient(180deg, var(--ab-veil-55) 0%, transparent 26%, transparent 62%, var(--ab-veil-85) 100%);
}
/* a faint ember wash over the whole hero, so the copy side isn't dead black */
.ab-hero::before{
  content:""; position:absolute; inset:0; z-index:0; pointer-events:none;
  background:
    radial-gradient(120% 80% at 78% 46%, var(--ab-wash-ember), transparent 58%),
    radial-gradient(90% 70% at 8% 12%, var(--ab-wash-storm), transparent 60%);
}

/* --- the copy --- */
.ab-hero__copy{
  position:relative; z-index:2;
  padding:0 clamp(0px,1.6vw,32px) 0 0;
  max-width:44rem;
  font-family:var(--ui); font-weight:400;
}
.ab-crest{ display:flex; align-items:center; gap:.85rem; margin:0 0 1.15rem; opacity:.92; }
.ab-crest__rule{
  flex:1 1 auto; height:1px; max-width:9rem;
  background:linear-gradient(90deg, transparent, var(--lg-brass) 55%, transparent);
}
.ab-crest__rule--l{ background:linear-gradient(270deg, transparent, var(--lg-brass) 55%, transparent); }
.ab-crest svg{ width:48px; height:29px; color:var(--lg-brass); flex:0 0 auto; }

.ab-hero h1{
  font-family:var(--display); font-weight:600;
  font-size:clamp(2.9rem,6.4vw,5.3rem); line-height:.96; letter-spacing:.02em;
  margin:0; color:var(--cream);
  text-shadow:0 2px 26px rgba(0,0,0,.7);
}
.ab-hero__title2{
  font-family:var(--display); font-weight:500;
  font-size:clamp(1.45rem,2.9vw,2.35rem); line-height:1.1; letter-spacing:.05em;
  margin:.42rem 0 0; color:var(--lg-brass-hi);
}
.ab-hero__kicker{
  font-size:clamp(.78rem,1.15vw,.95rem); letter-spacing:.3em; text-transform:uppercase;
  color:var(--lg-brass-lo); margin:.95rem 0 0;
  display:flex; align-items:center; gap:.7rem;
}
.ab-hero__kicker::before,.ab-hero__kicker::after{
  content:""; height:1px; width:1.5rem; background:var(--lg-hair); flex:0 0 auto;
}
.ab-hero__kicker::after{ flex:0 1 4rem; }

.ab-hero__lead{
  margin:1.5rem 0 0; max-width:34rem;
  font-size:clamp(1rem,1.28vw,1.12rem); line-height:1.72; color:var(--lg-parch);
}
.ab-hero__lead em{ font-style:normal; color:var(--lg-parch); }

/* an inline term that carries evidence — the page's whole thesis, in miniature */
.ab-term{
  color:inherit; background:none; border:0; padding:0; font:inherit; cursor:pointer;
  border-bottom:1px dashed var(--lg-brass-lo); line-height:inherit;
}
.ab-term:hover,.ab-term:focus-visible{ color:var(--lg-brass-hi); border-bottom-color:var(--lg-brass-hi); }
.ab-term[aria-expanded="true"]{ color:var(--lg-brass-hi); }
.ab-termnote{
  margin:.85rem 0 0; padding:.7rem .9rem; max-width:33rem;
  border-left:2px solid var(--lg-ember); background:var(--ab-quote-bg);
  font-size:.86rem; line-height:1.6; color:var(--lg-text);
}
.ab-termnote b{ color:var(--lg-parch); font-weight:500; }

/* --- the three badges --- */
.ab-facts{
  display:grid; grid-template-columns:repeat(3,minmax(0,1fr));
  gap:.75rem; margin:1.9rem 0 0; max-width:35rem; padding:0; list-style:none;
}
.ab-fact{
  position:relative; width:100%; text-align:left; cursor:pointer;
  background:linear-gradient(180deg, var(--ab-plate-top), var(--ab-plate-bot));
  border:1px solid var(--lg-hair-2); border-radius:2px;
  padding:.85rem .85rem .9rem; color:inherit; font:inherit;
  transition:border-color .25s var(--lg-ease), transform .25s var(--lg-ease),
             background .25s var(--lg-ease);
}
.ab-fact:hover,.ab-fact:focus-visible{ border-color:var(--lg-hair); transform:translateY(-2px); }
.ab-fact[aria-expanded="true"]{
  border-color:var(--lg-brass);
  background:linear-gradient(180deg, var(--ab-plate-lit-top), var(--ab-plate-lit-bot));
}
.ab-fact__icon{ width:22px; height:22px; color:var(--lg-brass); opacity:.9; margin-bottom:.55rem; }
.ab-hero[data-mode="legend"] .ab-fact__icon{ color:var(--lg-ember); }
.ab-fact__val{
  display:block; font-family:var(--ui); font-weight:500;
  font-size:clamp(1.08rem,1.62vw,1.34rem); letter-spacing:.06em;
  color:var(--cream); line-height:1.18;
}
.ab-fact__val--caps{ text-transform:uppercase; letter-spacing:.13em; font-size:clamp(1rem,1.45vw,1.2rem); }
.ab-fact__lbl{ display:block; margin-top:.3rem; font-size:.72rem; line-height:1.42; color:var(--lg-text); }
.ab-fact__more{
  position:absolute; top:.6rem; right:.7rem; font-size:.62rem; letter-spacing:.14em;
  color:var(--lg-brass-lo); opacity:.75;
}
.ab-factnote{
  margin:.75rem 0 0; max-width:35rem; padding:.85rem 1rem;
  border:1px solid var(--lg-hair-2); border-left:2px solid var(--lg-brass);
  background:var(--ab-note-bg); font-size:.86rem; line-height:1.65; color:var(--lg-text);
}
.ab-factnote b{ color:var(--lg-parch); font-weight:500; }
.ab-factnote i{ font-style:italic; }
/* the evidence flag on a note is the site's own badge, not a second vocabulary */
.ab-factnote .ev-badge{ margin:0 .5rem .3rem 0; cursor:default; }

/* --- CTA --- */
.ab-cta{
  display:inline-flex; align-items:center; gap:.75rem; margin:2rem 0 0;
  padding:.95rem 2.1rem; text-decoration:none;
  font-family:var(--display); font-size:.92rem; letter-spacing:.2em; text-transform:uppercase;
  color:var(--cream); border:1px solid var(--lg-brass);
  background:linear-gradient(180deg, var(--ab-fire-top), var(--ab-fire-bot));
  box-shadow:0 0 0 1px var(--ab-inset) inset, 0 10px 30px -18px var(--ab-fire-glow);
  transition:background .3s var(--lg-ease), box-shadow .3s var(--lg-ease), transform .2s var(--lg-ease);
}
.ab-cta:hover,.ab-cta:focus-visible{
  background:linear-gradient(180deg, var(--ab-fire-top-hi), var(--ab-fire-bot-hi));
  box-shadow:0 0 0 1px var(--ab-inset) inset, 0 14px 38px -16px var(--lg-copper);
  transform:translateY(-1px);
}
.ab-cta__arrow{ transition:transform .3s var(--lg-ease); }
.ab-cta:hover .ab-cta__arrow{ transform:translateY(3px); }

/* --- THE WOMAN | THE LEGEND --- */
.ab-switch{
  position:absolute; z-index:3;
  right:max(var(--lg-gut), (100% - var(--lg-max)) / 2);
  bottom:clamp(3.6rem,6vw,5.2rem);
  display:flex; align-items:stretch;
  border:1px solid var(--lg-hair); border-radius:2px; overflow:hidden;
  background:var(--ab-veil-72); backdrop-filter:blur(4px); -webkit-backdrop-filter:blur(4px);
}
.ab-switch__btn{
  appearance:none; border:0; cursor:pointer; background:transparent;
  padding:.8rem 1.5rem; color:var(--lg-text);
  font-family:var(--display); font-size:.78rem; letter-spacing:.2em; text-transform:uppercase;
  transition:color .3s var(--lg-ease), background .3s var(--lg-ease);
}
.ab-switch__btn + .ab-switch__btn{ border-left:1px solid var(--lg-hair); }
.ab-switch__btn:hover{ color:var(--lg-parch); }
.ab-switch__btn[aria-selected="true"]{
  color:var(--cream);
  background:linear-gradient(180deg, var(--ab-selected), var(--ab-selected-2));
  box-shadow:inset 0 -2px 0 var(--lg-brass);
}

/* legend mode: the whole hero warms and yellows, like a told story */
.ab-hero[data-mode="legend"]::before{
  background:
    radial-gradient(120% 80% at 74% 44%, var(--ab-wash-gold), transparent 60%),
    radial-gradient(90% 70% at 6% 14%, var(--ab-wash-timber), transparent 62%);
}
.ab-hero[data-mode="legend"] .ab-hero__media img{ filter:sepia(.34) saturate(1.12) contrast(1.04); }
.ab-hero[data-mode="legend"] .ab-fact__val{ color:var(--lg-brass-hi); }
.ab-hero[data-mode="legend"] .ab-fact{ border-color:color-mix(in srgb, var(--lg-ember) 30%, transparent); }
.ab-hero__media img,.ab-hero::before{ transition:filter .6s var(--lg-ease), background .6s var(--lg-ease); }

.ab-modehint{
  margin:1.1rem 0 0; font-size:.74rem; letter-spacing:.14em; text-transform:uppercase;
  color:var(--lg-brass-lo);
}
.ab-modehint span{ color:var(--lg-text); letter-spacing:.06em; text-transform:none; font-size:.82rem; }

/* --- credibility bar --- */
.ab-credbar{
  position:relative; z-index:4;
  display:flex; justify-content:center; align-items:center; gap:clamp(.7rem,2vw,1.8rem);
  flex-wrap:wrap; text-align:center;
  margin:0; padding:.85rem var(--lg-gut);
  border-top:1px solid var(--lg-hair-2); border-bottom:1px solid var(--lg-hair-2);
  background:linear-gradient(180deg, var(--lg-panel), var(--lg-ink));
  font-family:var(--ui); font-weight:400;
  font-size:.68rem; letter-spacing:.24em; text-transform:uppercase; color:var(--lg-brass-lo);
}
.ab-credbar b{ font-weight:400; color:var(--lg-text); }
.ab-credbar i{ font-style:normal; color:var(--lg-brass); opacity:.6; }

/* ═══ RECONSTRUCTION ENGINE ══════════════════════════════════════════ */

.rx{
  position:relative; isolation:isolate; overflow:hidden;
  padding:clamp(74px,8vw,124px) var(--lg-gut);
  background:
    radial-gradient(circle at 50% 33%, color-mix(in srgb,var(--lg-copper) 10%,transparent), transparent 34%),
    linear-gradient(180deg,var(--lg-ink),var(--lg-timber) 48%,var(--lg-ink));
  border-bottom:1px solid var(--lg-hair-2);
}
.rx::before{
  content:""; position:absolute; inset:0; z-index:-1; opacity:.25; pointer-events:none;
  background-image:linear-gradient(var(--lg-hair-2) 1px,transparent 1px),linear-gradient(90deg,var(--lg-hair-2) 1px,transparent 1px);
  background-size:54px 54px; mask-image:radial-gradient(circle at 50% 40%,#000,transparent 70%);
}
.rx__inner{ max-width:var(--lg-max); margin:auto; }
.rx [hidden]{ display:none !important; }
.rx__head{ max-width:56rem; margin:0 auto clamp(38px,5vw,64px); text-align:center; }
.rx__eyebrow{ margin:0 0 12px; color:var(--lg-brass-lo); font:500 .67rem/1 var(--ui); letter-spacing:.28em; text-transform:uppercase; }
.rx__eyebrow span{ padding:0 .55rem; color:var(--lg-hair); }
.rx__head h2{ margin:0; color:var(--cream); font:500 clamp(2rem,4.2vw,4rem)/1.05 var(--display); letter-spacing:.04em; text-transform:uppercase; }
.rx__head h2 em{ display:block; margin-top:.22em; color:var(--lg-brass-hi); font-style:normal; font-size:.5em; letter-spacing:.18em; }
.rx__head > p:last-child{ max-width:47rem; margin:1.2rem auto 0; color:var(--lg-text); font:400 clamp(.92rem,1.25vw,1.05rem)/1.75 var(--ui); }

.rx__machine{ display:grid; grid-template-columns:minmax(250px,1fr) minmax(260px,.72fr) minmax(250px,1fr); gap:clamp(16px,2.4vw,34px); align-items:stretch; }
.rx-card{ position:relative; min-height:580px; padding:12px; display:flex; flex-direction:column; background:linear-gradient(145deg,var(--lg-hair),transparent 24%,transparent 76%,var(--lg-hair)); border:1px solid var(--lg-brass-lo); box-shadow:0 18px 60px #0008,0 0 0 5px var(--lg-ink),0 0 0 6px var(--lg-hair); }
.rx-card::before,.rx-card::after{ content:""; position:absolute; width:18px; height:18px; border-color:var(--lg-brass); opacity:.65; }
.rx-card::before{ left:5px; top:5px; border-left:1px solid; border-top:1px solid; }
.rx-card::after{ right:5px; bottom:5px; border-right:1px solid; border-bottom:1px solid; }
.rx-card__label{ flex:0 0 auto; padding:8px 6px 14px; text-align:center; color:var(--lg-brass-hi); font:500 .72rem/1 var(--display); letter-spacing:.17em; text-transform:uppercase; }
.rx-card__label span{ color:var(--lg-mute); margin-right:.55rem; }
.rx-source,.rx-result{ position:relative; flex:1 1 auto; min-height:420px; overflow:hidden; background:var(--lg-panel); border:1px solid var(--lg-hair); }
.rx-source,.rx-compare__source{ background-image:url('/images/legends/anne-bonny/historical-source.jpg'); background-repeat:no-repeat; background-size:cover; background-position:50% 42%; filter:sepia(.18) contrast(1.05); }
.rx-source::after{ content:""; position:absolute; inset:0; box-shadow:inset 0 0 50px 10px #090604; background:linear-gradient(180deg,transparent 65%,#090604cc); }
.rx-result img,.rx-compare__result img{ width:100%; height:100%; object-fit:cover; object-position:50% 28%; }
.rx-result__shroud{ position:absolute; inset:0; display:grid; place-items:end center; padding:0 1rem 2.5rem; background:linear-gradient(180deg,#05060add 0%,#05060aab 55%,#05060af5 100%); transition:opacity .8s var(--lg-ease); }
.rx-result__shroud::before{ content:"?"; position:absolute; top:50%; left:50%; transform:translate(-50%,-56%); color:var(--lg-brass-lo); font:400 7rem/1 var(--display); opacity:.3; }
.rx-result__shroud span{ color:var(--lg-brass-lo); font:500 .68rem/1 var(--ui); letter-spacing:.24em; text-transform:uppercase; }
.rx-result__scan{ position:absolute; inset:0; opacity:0; pointer-events:none; background:repeating-linear-gradient(0deg,transparent 0 5px,color-mix(in srgb,var(--lg-brass) 18%,transparent) 6px 7px); }
.rx-card__caption{ flex:0 0 auto; padding:15px 8px 6px; text-align:center; }
.rx-card__caption b{ display:block; color:var(--lg-parch); font:500 .78rem/1.2 var(--display); letter-spacing:.13em; text-transform:uppercase; }
.rx-card__caption span{ display:block; margin-top:7px; color:var(--lg-mute); font:400 .75rem/1.45 var(--ui); }

.rx-core{ align-self:center; position:relative; padding:2rem clamp(12px,2vw,30px); text-align:center; }
.rx-core::before,.rx-core::after{ content:""; position:absolute; left:50%; width:1px; height:56px; background:linear-gradient(transparent,var(--lg-brass-lo)); }
.rx-core::before{ bottom:100%; }.rx-core::after{ top:100%; transform:rotate(180deg); }
.rx-dial{ position:relative; width:124px; aspect-ratio:1; display:grid; place-items:center; margin:0 auto 26px; border:1px solid var(--lg-brass-lo); border-radius:50%; box-shadow:0 0 0 6px var(--lg-ink),0 0 0 7px var(--lg-hair),inset 0 0 28px #000; color:var(--lg-brass); }
.rx-dial::before{ content:""; position:absolute; inset:9px; border:1px dashed var(--lg-brass-lo); border-radius:50%; }
.rx-dial__ring{ position:absolute; inset:20px; border:2px dotted var(--lg-brass-lo); border-radius:50%; }
.rx-dial__ring--b{ inset:31px; border-style:solid; border-color:var(--lg-hair); }
.rx-dial__needle{ position:absolute; width:2px; height:43%; top:7%; background:linear-gradient(var(--lg-ember),transparent); transform-origin:50% 100%; }
.rx-dial b{ position:relative; z-index:2; font:600 1rem/1 var(--display); letter-spacing:.16em; }
.rx-status{ display:flex; justify-content:center; align-items:center; gap:.55rem; min-height:1rem; color:var(--lg-brass-lo); font:500 .63rem/1 var(--ui); letter-spacing:.18em; text-transform:uppercase; }
.rx-status__lamp{ width:7px; aspect-ratio:1; border-radius:50%; background:var(--lg-brass-lo); box-shadow:0 0 0 3px var(--lg-hair); }
.rx-steps{ list-style:none; margin:20px 0 26px; padding:0; text-align:left; }
.rx-steps li{ display:flex; gap:.7rem; padding:.58rem 0; border-bottom:1px solid var(--lg-hair-2); color:var(--lg-mute); font:400 .68rem/1.3 var(--ui); letter-spacing:.06em; transition:color .25s,transform .25s; }
.rx-steps li span{ color:var(--lg-brass-lo); font-size:.58rem; }
.rx-trigger{ width:100%; padding:1.05rem .7rem .9rem; cursor:pointer; color:var(--cream); border:1px solid var(--lg-brass); background:linear-gradient(180deg,var(--ab-fire-top),var(--ab-fire-bot)); box-shadow:0 0 0 4px var(--lg-ink),0 0 0 5px var(--lg-hair),0 12px 30px #0008; transition:filter .2s,transform .2s; }
.rx-trigger:hover:not(:disabled),.rx-trigger:focus-visible:not(:disabled){ filter:brightness(1.18); transform:translateY(-2px); }
.rx-trigger span{ display:block; font:500 clamp(.8rem,1.2vw,1rem)/1.1 var(--display); letter-spacing:.12em; text-transform:uppercase; }
.rx-trigger small{ display:block; margin-top:.48rem; color:var(--lg-brass-hi); font:400 .56rem/1 var(--ui); letter-spacing:.24em; text-transform:uppercase; }
.rx-trigger:disabled{ cursor:default; }

.rx[data-state="running"] .rx-dial__ring{ animation:rx-spin 2.2s linear infinite; }
.rx[data-state="running"] .rx-dial__ring--b{ animation-direction:reverse; animation-duration:1.35s; }
.rx[data-state="running"] .rx-dial__needle{ animation:rx-sweep 1s ease-in-out infinite alternate; }
.rx[data-state="running"] .rx-status__lamp{ background:var(--lg-ember); box-shadow:0 0 14px var(--lg-ember); animation:rx-pulse .65s ease-in-out infinite alternate; }
.rx[data-state="running"] .rx-result__scan{ opacity:1; animation:rx-scan 1.3s linear infinite; }
.rx[data-state="running"] .rx-steps li.is-active{ color:var(--lg-brass-hi); transform:translateX(5px); }
.rx .rx-steps li.is-done{ color:var(--lg-parch); }
.rx .rx-steps li.is-done span{ color:var(--lg-ember); }
.rx[data-state="complete"] .rx-result__shroud{ opacity:0; pointer-events:none; }
.rx[data-state="complete"] .rx-status__lamp{ background:var(--lg-brass-hi); box-shadow:0 0 12px var(--lg-brass); }
.rx[data-view="source"] .rx-card--result{ opacity:.32; }.rx[data-view="source"] .rx-card--source{ box-shadow:0 18px 60px #0008,0 0 0 5px var(--lg-ink),0 0 0 6px var(--lg-brass); }
.rx[data-view="result"] .rx-card--source{ opacity:.32; }.rx[data-view="result"] .rx-card--result{ box-shadow:0 18px 60px #0008,0 0 0 5px var(--lg-ink),0 0 0 6px var(--lg-brass); }
.rx-card{ transition:opacity .4s,box-shadow .4s; }

.rx-complete{ margin:clamp(32px,4vw,54px) auto 0; }
.rx-complete__title{ display:flex; justify-content:space-between; gap:1rem; align-items:end; padding-bottom:15px; border-bottom:1px solid var(--lg-hair); }
.rx-complete__title span{ color:var(--lg-brass-lo); font:500 .65rem/1 var(--ui); letter-spacing:.26em; text-transform:uppercase; }
.rx-complete__title b{ color:var(--cream); font:500 1.15rem/1 var(--display); letter-spacing:.12em; text-transform:uppercase; }
.rx-complete__title i{ color:var(--lg-brass-lo); font-style:normal; font-size:.65em; }
.rx-views{ display:flex; justify-content:center; margin:22px auto; }
.rx-views button{ padding:.75rem 1.3rem; cursor:pointer; color:var(--lg-mute); background:transparent; border:0; border-bottom:1px solid var(--lg-hair); font:500 .65rem/1 var(--ui); letter-spacing:.18em; text-transform:uppercase; }
.rx-views button[aria-selected="true"]{ color:var(--lg-brass-hi); border-color:var(--lg-brass); }
.rx-compare{ position:relative; overflow:hidden; max-width:980px; height:clamp(420px,58vw,680px); margin:30px auto 0; border:1px solid var(--lg-brass-lo); box-shadow:0 20px 70px #0009; }
.rx-compare__source,.rx-compare__result{ position:absolute; inset:0; }
.rx-compare__source{ background-size:cover; background-position:50% 42%; }
.rx-compare__result{ clip-path:inset(0 0 0 50%); }
.rx-compare input{ position:absolute; inset:0; width:100%; height:100%; opacity:0; cursor:ew-resize; z-index:4; }
.rx-compare__line{ position:absolute; top:0; bottom:0; left:50%; width:1px; background:var(--lg-brass-hi); box-shadow:0 0 12px #000; pointer-events:none; }
.rx-compare__line i{ position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); width:42px; height:42px; display:grid; place-items:center; border:1px solid var(--lg-brass); border-radius:50%; background:var(--lg-ink); color:var(--lg-brass-hi); font-style:normal; }
.rx-compare__tag{ position:absolute; top:18px; z-index:3; padding:.55rem .7rem; background:#05060acc; color:var(--lg-parch); font:500 .58rem/1 var(--ui); letter-spacing:.16em; text-transform:uppercase; pointer-events:none; }
.rx-compare__tag--l{ left:18px; }.rx-compare__tag--r{ right:18px; }

.rx-evidence{ display:grid; grid-template-columns:minmax(210px,.8fr) minmax(0,2.2fr); gap:clamp(24px,4vw,62px); margin-top:clamp(46px,6vw,76px); padding:clamp(24px,3vw,38px); border:1px solid var(--lg-hair); background:linear-gradient(110deg,var(--lg-panel),var(--lg-ink)); }
.rx-evidence__intro{ padding-right:2rem; border-right:1px solid var(--lg-hair); }
.rx-evidence__intro span{ display:block; color:var(--lg-mute); font:500 .61rem/1 var(--ui); letter-spacing:.24em; text-transform:uppercase; }
.rx-evidence__intro b{ display:block; margin-top:.55rem; color:var(--lg-brass-hi); font:500 1.45rem/1 var(--display); letter-spacing:.1em; text-transform:uppercase; }
.rx-evidence__intro p{ margin:1rem 0 0; color:var(--lg-mute); font:400 .78rem/1.55 var(--ui); }
.rx-evidence ul{ display:grid; grid-template-columns:repeat(4,1fr); gap:1px; margin:0; padding:0; list-style:none; background:var(--lg-hair-2); }
.rx-evidence li{ position:relative; padding:1rem; background:var(--lg-ink); }
.rx-evidence li::before{ content:""; display:block; width:8px; height:8px; margin-bottom:.8rem; border-radius:50%; background:var(--lg-brass); box-shadow:0 0 10px var(--lg-brass-lo); }
.rx-evidence li.is-unknown::before{ background:transparent; border:1px solid var(--lg-mute); box-shadow:none; }
.rx-evidence li span{ display:block; color:var(--lg-mute); font:500 .55rem/1 var(--ui); letter-spacing:.18em; text-transform:uppercase; }
.rx-evidence li b{ display:block; margin-top:.55rem; color:var(--lg-parch); font:400 .77rem/1.45 var(--ui); }

@keyframes rx-spin{ to{ transform:rotate(1turn); } }
@keyframes rx-sweep{ from{ transform:rotate(-105deg); } to{ transform:rotate(105deg); } }
@keyframes rx-pulse{ to{ opacity:.35; } }
@keyframes rx-scan{ from{ transform:translateY(-7px); } to{ transform:translateY(7px); } }

/* ═══ THE REST OF THE EXHIBIT ════════════════════════════════════════ */

.ab-story{
  padding:clamp(64px,10vw,132px) var(--lg-gut);
  text-align:center; background:var(--lg-ink);
}
.ab-story__note{
  margin:0 auto; max-width:44rem;
  font-family:var(--display); font-size:clamp(.82rem,1.4vw,1rem);
  letter-spacing:.22em; text-transform:uppercase; color:var(--lg-brass-lo);
}

.ab-vault-callout{width:min(1180px,calc(100% - 48px));margin:80px auto;display:grid;grid-template-columns:minmax(280px,.68fr) minmax(420px,1.32fr);overflow:hidden;border:1px solid rgba(177,136,72,.38);background:radial-gradient(circle at 72% 30%,rgba(177,89,31,.16),transparent 42%),#080a0d;box-shadow:0 30px 90px rgba(0,0,0,.45)}
.ab-vault-callout__art{position:relative;min-height:570px;display:grid;place-items:center;overflow:hidden;background:linear-gradient(135deg,#11161a,#08090b)}
.ab-vault-callout__art::before{content:"";position:absolute;inset:0;opacity:.22;background:url('/images/vault/anne-bonny/wallpapers-wide.jpg') 70% center/cover no-repeat}
.ab-vault-callout__art img{position:relative;width:min(290px,70%);height:auto;box-shadow:-12px 18px 50px #000,7px 4px 0 #b9ad94,11px 7px 0 #302f2b;transform:perspective(1200px) rotateY(-8deg)}
.ab-vault-callout__copy{display:flex;flex-direction:column;justify-content:center;padding:clamp(45px,7vw,90px)}
.ab-vault-callout__copy>p{margin:0 0 15px;color:#b99052;font:10px var(--sans);letter-spacing:.28em;text-transform:uppercase}
.ab-vault-callout__copy h2{margin:0;color:#e2d2b8;font:400 clamp(37px,4.5vw,62px)/1.03 var(--display);text-transform:uppercase}
.ab-vault-callout__copy>span{max-width:62ch;margin-top:22px;color:#a9a092;font-size:14px;line-height:1.8}
.ab-vault-callout__copy>div{display:flex;flex-wrap:wrap;gap:13px;margin-top:31px}
.ab-vault-callout__copy a{border:1px solid rgba(177,136,72,.58);padding:15px 18px;color:#d7b473;background:rgba(8,9,11,.7);font:11px var(--sans);letter-spacing:.11em;text-decoration:none;text-transform:uppercase}
.ab-vault-callout__copy a:first-child{background:#a87838;color:#090a0c;border-color:#c3995a}
.ab-vault-callout__copy a:hover{border-color:#dfb76e;color:#f0d49d}
.ab-vault-callout__copy a:first-child:hover{color:#090a0c;background:#c0904d}
.ab-vault-callout__copy a i{font-family:var(--display);font-style:normal}
.ab-vault-callout__copy a b{margin-left:8px}
@media(max-width:760px){.ab-vault-callout{width:calc(100% - 28px);margin:50px auto;grid-template-columns:1fr}.ab-vault-callout__art{min-height:460px}.ab-vault-callout__copy{padding:38px 25px}.ab-vault-callout__copy a{width:100%;text-align:center}}
.ab-story__note::before{
  content:""; display:block; width:min(148px,42vw); height:1px; margin:0 auto 1.6rem;
  background:linear-gradient(90deg, transparent, var(--lg-brass), transparent);
}

/* ═══ RESPONSIVE ═════════════════════════════════════════════════════ */

@media (max-width:1180px){
  .ab-hero__media{ inset:0 0 0 30%; }
  .ab-hero{ grid-template-columns:minmax(0,1fr) minmax(0,.7fr); }
}
@media (max-width:900px){
  .ab-hero{
    display:block; min-height:0;
    background:linear-gradient(180deg, var(--lg-storm), var(--lg-ink));
    padding:0;
  }
  .ab-hero__media{
    position:relative; inset:auto; height:clamp(340px,64vw,520px);
  }
  .ab-hero__media img{ object-position:64% 34%; }
  .ab-hero__media::after{
    background:linear-gradient(180deg, var(--ab-veil-50) 0%, transparent 30%,
                               var(--ab-veil-35) 66%, var(--lg-ink) 100%);
  }
  .ab-hero__copy{ padding:1.6rem var(--lg-gut) 2.4rem; max-width:none; }
  .ab-crest{ margin-top:-3.2rem; }
  .ab-switch{
    position:static; margin:1.6rem 0 0; width:100%;
  }
  .ab-switch__btn{ flex:1 1 50%; padding:.85rem .5rem; }
  .rx__machine{ grid-template-columns:1fr 1fr; }
  .rx-core{ grid-column:1/-1; grid-row:2; width:min(100%,480px); justify-self:center; }
  .rx-core::before,.rx-core::after{ display:none; }
  .rx-card{ min-height:500px; }
  .rx-evidence{ grid-template-columns:1fr; }
  .rx-evidence__intro{ padding:0 0 1.4rem; border:0; border-bottom:1px solid var(--lg-hair); }
  .rx-evidence ul{ grid-template-columns:repeat(2,1fr); }
}
@media (max-width:560px){
  .ab-facts{ grid-template-columns:1fr; gap:.55rem; }
  .ab-fact{
    display:grid; grid-template-columns:auto 1fr auto; align-items:center;
    column-gap:.85rem; row-gap:.15rem; padding:.75rem .9rem; text-align:left;
  }
  .ab-fact__icon{ margin:0; grid-row:1/3; }
  .ab-fact__val{ grid-column:2; }
  .ab-fact__lbl{ grid-column:2; margin-top:0; }
  .ab-fact__more{ position:static; grid-column:3; grid-row:1/3; align-self:center; }
  .ab-cta{ width:100%; justify-content:center; padding:1rem 1rem; }
  .rx{ padding-inline:16px; }
  .rx__machine{ display:flex; flex-direction:column; }
  .rx-card{ min-height:480px; }
  .rx-core{ order:3; width:100%; }
  .rx-card--result{ order:2; }
  .rx-evidence ul{ grid-template-columns:1fr; }
  .rx-complete__title{ align-items:flex-start; flex-direction:column; }
  .rx-views button{ flex:1; padding:.75rem .35rem; font-size:.52rem; letter-spacing:.1em; }
  .rx-compare{ height:520px; }
}
@media (prefers-reduced-motion:reduce){
  .ab-hero *,.ab-hero *::before,.ab-hero *::after,
  .ab-hero,.ab-hero::before,.ab-hero::after{
    transition:none !important; animation:none !important;
  }
  .rx *,.rx *::before,.rx *::after{ animation:none !important; transition:none !important; }
}

/* ═══ RECONSTRUCTION ENGINE — CONCEPT-ART MATCH ═════════════════════
   The supplied 3:2 machine board is the exact visual base. Live source and
   result imagery sit inside its engraved apertures, while the central control
   remains a real accessible button and drives the existing state machine. */

.rx{
  padding:0 !important;
  background:#070503;
  border-block:1px solid color-mix(in srgb,var(--lg-brass) 24%,transparent);
}
.rx::before{ display:none; }
.rx-board-wrap{ width:100%; max-width:1536px; margin-inline:auto; background:#070503; }
.rx-board{
  position:relative; isolation:isolate; width:100%; aspect-ratio:3/2;
  overflow:hidden; background:#090704;
}
.rx-board__art{ position:absolute; inset:0; z-index:0; width:100%; height:100%; object-fit:cover; }
.rx-board__source,.rx-board__result{
  position:absolute; z-index:1; overflow:hidden; background:#120e08;
  box-shadow:inset 0 0 1.8vw .45vw #050301;
}
.rx-board__source{ left:4.05%; top:20.35%; width:24.55%; height:42.55%; }
.rx-board__result{ left:70.3%; top:20.25%; width:22.85%; height:42.45%; opacity:0; transition:opacity .9s var(--lg-ease),clip-path 1.1s var(--lg-ease); }
.rx-board__source img,.rx-board__result img{ width:100%; height:100%; object-fit:cover; }
.rx-board__source img{ object-position:50% 29%; filter:sepia(.28) contrast(1.08) brightness(.78); }
.rx-board__result img{ object-position:56% 35%; filter:sepia(.08) saturate(.88) brightness(.72) contrast(1.07); }
.rx-board__source::after,.rx-board__result::after{ content:""; position:absolute; inset:0; pointer-events:none; box-shadow:inset 0 0 2.4vw .65vw #080502; background:linear-gradient(180deg,#2a170711,transparent 55%,#05030166); }
.rx-board__reveal{ position:absolute; inset:0; opacity:0; pointer-events:none; background:repeating-linear-gradient(0deg,transparent 0 .42vw,color-mix(in srgb,var(--lg-brass) 24%,transparent) .46vw .52vw); }

.rx-trigger{
  position:absolute; z-index:5; left:35.4%; top:65.2%; width:29.5%; height:7.7%;
  display:grid; place-content:center; padding:.5% 2% !important; border:.08vw solid #c4994c !important;
  outline:.18vw solid #1a0d06; outline-offset:.22vw; border-radius:.2vw;
  background:linear-gradient(180deg,#5d1b10,#2a0705) !important;
  box-shadow:inset 0 0 0 .16vw #a3562d,inset 0 0 1.2vw #0b0201,0 0 1.5vw #000 !important;
  color:#ead7a7; cursor:pointer;
}
.rx-trigger::before,.rx-trigger::after{ content:""; position:absolute; top:50%; width:1.4vw; aspect-ratio:1; transform:translateY(-50%); border:.15vw solid #b18340; border-radius:50%; background:radial-gradient(circle,#d6aa50 0 16%,#271307 18% 48%,#805522 50% 65%,#100704 68%); box-shadow:0 0 .6vw #000; }
.rx-trigger::before{ left:-1.1vw; }.rx-trigger::after{ right:-1.1vw; }
.rx-trigger span{ display:block; font:500 clamp(.55rem,1.55vw,1.52rem)/1 var(--display); letter-spacing:.055em; text-transform:uppercase; }
.rx-trigger small{ display:block; margin-top:.55vw; color:#c89d58; font:400 clamp(.38rem,.95vw,.92rem)/1 var(--display); letter-spacing:.2em; text-transform:uppercase; }
.rx-trigger:hover:not(:disabled),.rx-trigger:focus-visible:not(:disabled){ filter:brightness(1.25); transform:none; }
.rx-trigger:focus-visible{ outline:.22vw solid var(--lg-brass-hi); outline-offset:.36vw; }

.rx-board__readout{ position:absolute; z-index:4; left:37%; top:61.5%; width:26%; display:flex; justify-content:center; align-items:center; gap:.65vw; color:#d7b66c; opacity:0; font:500 clamp(.38rem,.7vw,.68rem)/1 var(--ui); letter-spacing:.18em; text-transform:uppercase; text-shadow:0 1px 5px #000; }
.rx-board__gears{ position:absolute; z-index:4; left:43.5%; top:56.5%; width:13%; height:8%; pointer-events:none; opacity:0; }
.rx-board__gears i{ position:absolute; width:3.1vw; max-width:48px; aspect-ratio:1; border:.25vw dotted #b17b32; border-radius:50%; box-shadow:inset 0 0 0 .35vw #160b04,0 0 .7vw #000; }
.rx-board__gears i:nth-child(1){ left:0; bottom:0; }.rx-board__gears i:nth-child(2){ left:38%; top:0; width:3.8vw; max-width:58px; }.rx-board__gears i:nth-child(3){ right:0; bottom:0; }
.rx-board__note{ position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }

.rx[data-state="running"] .rx-board__readout,.rx[data-state="running"] .rx-board__gears{ opacity:1; }
.rx[data-state="running"] .rx-board__gears i{ animation:rx-spin 1.8s linear infinite; }
.rx[data-state="running"] .rx-board__gears i:nth-child(2){ animation-direction:reverse; animation-duration:1.25s; }
.rx[data-state="running"] .rx-board__result{ opacity:.38; clip-path:inset(100% 0 0); animation:rx-board-decode 3.6s steps(5,end) forwards; }
.rx[data-state="running"] .rx-board__reveal{ opacity:1; animation:rx-scan .65s linear infinite; }
.rx[data-state="running"] .rx-status__lamp{ background:var(--lg-ember); box-shadow:0 0 1vw var(--lg-ember); }
.rx[data-state="complete"] .rx-board__result{ opacity:1; clip-path:inset(0); }
.rx[data-state="complete"] .rx-board__result img{ filter:sepia(.03) saturate(.95) brightness(.82) contrast(1.05); }
.rx[data-view="source"] .rx-board__result{ opacity:0; }
.rx[data-view="result"] .rx-board__result,.rx[data-view="compare"] .rx-board__result{ opacity:1; }

.rx-complete{ padding:clamp(28px,4vw,54px) var(--lg-gut) clamp(48px,6vw,84px); background:linear-gradient(180deg,#080503,#0c0906 35%,var(--lg-ink)); }
.rx-complete__title,.rx-views,.rx-compare{ max-width:1120px; margin-inline:auto; }
.rx-compare__source{ background-image:url('/images/legends/anne-bonny/historical-source.jpg'); background-size:cover; background-position:50% 42%; }

@keyframes rx-board-decode{
  0%{ clip-path:inset(100% 0 0); opacity:.18; }
  85%{ clip-path:inset(8% 0 0); opacity:.72; }
  100%{ clip-path:inset(0); opacity:1; }
}

@media (max-width:760px){
  .rx{ overflow-x:auto; overflow-y:hidden; }
  .rx-board-wrap{ min-width:760px; }
  .rx-board{ min-height:507px; }
  .rx-complete{ position:sticky; left:0; width:100vw; }
}

/* ═══ ANNE BONNY — THE RECORD OPENS ═════════════════════════════════
   The supplied additions are implemented as live, responsive rooms. The
   original artwork remains atmospheric; headings, evidence notes, links,
   questions, and product data stay real HTML. */
.ab-story{width:100%;max-width:100vw;padding:0;overflow-x:hidden;text-align:left;background:#080807;color:var(--lg-text)}
.ab-story h3,.ab-story h4{margin:0;color:#d2ad70;font-family:var(--display);font-weight:500;text-transform:uppercase}
.ab-story p,.ab-story span{line-height:1.55}.ab-story a,.ab-story button{font-family:var(--ui)}
.ab-story a:focus-visible,.ab-story button:focus-visible,.ab-story input:focus-visible{outline:2px solid var(--lg-brass-hi);outline-offset:3px}
.ab-paths{display:grid;grid-template-columns:.9fr 1.3fr .9fr;border-bottom:1px solid var(--lg-hair)}
.ab-path{position:relative;isolation:isolate;min-height:390px;padding:clamp(34px,4vw,64px);overflow:hidden;border-right:1px solid var(--lg-hair);background:#0b0d0e}
.ab-path:last-child{border-right:0}.ab-path::before{content:"";position:absolute;inset:0;z-index:-2;background:center/cover no-repeat;filter:saturate(.72)}.ab-path::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(100deg,rgba(5,6,7,.95),rgba(5,6,7,.6) 62%,rgba(5,6,7,.35))}
.ab-path--story::before{background-image:url('/images/legends/anne-bonny/hero.webp');background-position:72% center}.ab-path--legend::before{background-image:url('/images/legends/anne-bonny/rackham-flag.webp');background-position:76% center}.ab-path--timeline{background:radial-gradient(circle at 50% 45%,rgba(169,111,44,.12),transparent 52%),#0b0d0e}
.ab-path>p,.ab-trial-card p,.ab-connection p,.ab-fates header p,.ab-source-archive header p,.ab-ask header p,.ab-explore header p{margin:0 0 9px;color:#aa824a;font-size:.61rem;letter-spacing:.22em;text-transform:uppercase}
.ab-path h3{font-size:clamp(1.65rem,2.7vw,2.6rem)}.ab-path>span{display:block;max-width:30ch;margin-top:12px;color:#c2b7a7;font-size:.92rem}
.ab-path>a,.ab-path>button,.ab-trial-card a,.ab-connection a,.ab-panel-link,.ab-explore header>a{display:inline-flex;margin-top:25px;padding:11px 15px;border:1px solid #8d6635;background:rgba(9,8,7,.7);color:#d9b879;font-size:.61rem;letter-spacing:.16em;text-decoration:none;text-transform:uppercase;cursor:pointer}.ab-path>a:hover,.ab-path>button:hover,.ab-trial-card a:hover,.ab-connection a:hover,.ab-panel-link:hover,.ab-explore header>a:hover{border-color:#d2aa67;color:#f0d39c}
.ab-timeline{position:relative;display:grid;grid-template-columns:repeat(6,1fr);margin:30px 0 0;padding:0;list-style:none}.ab-timeline::before{content:"";position:absolute;left:8%;right:8%;top:23px;height:1px;background:#795933}.ab-timeline li{position:relative;z-index:1}.ab-timeline button{display:flex;width:100%;flex-direction:column;align-items:center;gap:7px;padding:0 4px;border:0;background:none;color:#a39888;cursor:pointer}.ab-timeline i{display:grid;width:47px;aspect-ratio:1;place-items:center;border:1px solid #76542c;border-radius:50%;background:#13100b;color:#b98b4c;font-style:normal;box-shadow:0 4px 12px #000}.ab-timeline span{font-size:.58rem;text-align:center}.ab-timeline button[aria-pressed="true"] i{border-color:#e1b562;color:#f1c977;box-shadow:0 0 22px rgba(196,141,56,.3)}
.ab-timeline__detail{min-height:133px;margin-top:27px;padding:18px 20px;border:1px solid #3c2d1e;background:rgba(5,6,7,.66);text-align:center}.ab-timeline__detail small{color:#ad8247;font-size:.56rem;letter-spacing:.17em;text-transform:uppercase}.ab-timeline__detail h4{margin:7px 0;font-size:1.05rem}.ab-timeline__detail p{max-width:66ch;margin:0 auto;color:#a99f91;font-size:.78rem}
.ab-record-grid{display:grid;grid-template-columns:1.1fr .9fr;border-bottom:1px solid var(--lg-hair)}
.ab-trial-card{position:relative;isolation:isolate;min-height:560px;padding:clamp(38px,5vw,78px);overflow:hidden;border-right:1px solid var(--lg-hair);background:#c4a36f}.ab-trial-card::before{content:"";position:absolute;inset:0;z-index:-2;background:url('/images/legends/anne-bonny/trial-court.webp') center/cover no-repeat}.ab-trial-card::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(218,192,145,.97) 0 40%,rgba(218,192,145,.72) 58%,transparent 82%)}
.ab-trial-card>div{max-width:34rem}.ab-trial-card p{color:#56391c}.ab-trial-card h3{color:#2f2114;font-size:clamp(2rem,3.3vw,3.3rem)}.ab-trial-card span{display:block;max-width:42ch;margin-top:11px;color:#3d2b1b}.ab-trial-card ul{display:grid;grid-template-columns:1fr 1fr;gap:8px 18px;margin:22px 0 0;padding:0;list-style:none;color:#3d2b1b;font-size:.83rem}.ab-trial-card li::before{content:"✓";margin-right:8px;color:#6d411d}.ab-trial-card a{border-color:#60411f;background:#302013;color:#ead8b7}
.ab-connections{display:grid;grid-template-rows:1fr 1fr}.ab-connection{position:relative;isolation:isolate;min-height:280px;overflow:hidden;border-bottom:1px solid var(--lg-hair)}.ab-connection:last-child{border-bottom:0}.ab-connection::before{content:"";position:absolute;inset:0;z-index:-2;background:center/cover no-repeat}.ab-connection::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#080a0ce8,#080a0ca6 58%,transparent)}.ab-connection--mary::before{background-image:url('/images/legends/anne-bonny/anne-and-mary.webp');background-position:72% center}.ab-connection--rackham::before{background-image:url('/images/legends/anne-bonny/rackham-flag.webp');background-position:74% center}.ab-connection>div{max-width:34rem;padding:clamp(30px,4vw,58px)}.ab-connection h3{font-size:clamp(1.4rem,2.2vw,2.2rem)}.ab-connection span{display:block;max-width:36ch;margin-top:9px;color:#bbb0a0;font-size:.86rem}
.ab-quote-fates{display:grid;grid-template-columns:.72fr 1.28fr;border-bottom:1px solid var(--lg-hair)}.ab-quote-fates blockquote{margin:0;padding:clamp(36px,5vw,72px);border-right:1px solid var(--lg-hair);background:linear-gradient(145deg,#151717,#090a0b)}.ab-quote-fates blockquote>p{margin:0;color:#a97d43;font-size:.61rem;letter-spacing:.2em;text-transform:uppercase}.ab-quote-fates q{display:block;margin:18px 0;color:#dec397;font:italic clamp(1.45rem,2.4vw,2.4rem)/1.35 var(--display)}.ab-quote-fates q::before{font-size:3rem;color:#7f694c}.ab-quote-fates cite{display:block;color:#948b7f;font-size:.72rem;line-height:1.55}.ab-quote-fates blockquote a{display:inline-block;margin-top:23px;color:#bd9457;font-size:.62rem;letter-spacing:.13em;text-transform:uppercase}
.ab-fates{padding:clamp(36px,4vw,64px);background:radial-gradient(circle at 50% 20%,rgba(146,92,31,.1),transparent 50%),#090a0a}.ab-fates header{text-align:center}.ab-fates h3{font-size:clamp(1.8rem,3.1vw,3.2rem)}.ab-fates header span{display:block;margin-top:8px;color:#afa496}.ab-fates>div{display:grid;grid-template-columns:repeat(4,1fr);margin-top:35px}.ab-fates article{padding:0 20px;border-right:1px solid #4d3824;text-align:center}.ab-fates article:last-child{border-right:0}.ab-fates article>i{display:grid;width:50px;aspect-ratio:1;margin:0 auto 12px;place-items:center;color:#bd8d49;font:normal 1.8rem var(--display)}.ab-fates h4{font-size:.98rem}.ab-fates b{display:block;margin-top:9px;color:#a68151;font-size:.58rem;letter-spacing:.11em;text-transform:uppercase}.ab-fates article.is-strongest b{color:#d2aa67}.ab-fates article p{color:#958c80;font-size:.72rem}.ab-fates>a{display:block;margin:28px auto 0;color:#bd9457;font-size:.62rem;text-align:center;text-decoration:none;text-transform:uppercase}
.ab-case{position:relative;padding:clamp(38px,5vw,82px);overflow:hidden;border-bottom:1px solid var(--lg-hair);background:radial-gradient(circle at 74% 18%,rgba(144,91,32,.17),transparent 34%),linear-gradient(120deg,#080a0b,#11100d 52%,#08090a)}
.ab-case::before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.12;background:url('/images/legends/anne-bonny/explore-anne.webp') center/cover no-repeat;mix-blend-mode:screen}.ab-case>*{position:relative}
.ab-case__head{display:grid;grid-template-columns:1fr 230px;gap:40px;align-items:end;padding-bottom:30px;border-bottom:1px solid #4a3722}.ab-case__head p,.ab-case__dossier>p,.ab-case__result p{margin:0 0 8px;color:#b68748;font-size:.6rem;letter-spacing:.2em;text-transform:uppercase}.ab-case__head h3{font-size:clamp(2.1rem,4vw,4.6rem)}.ab-case__head>div:first-child>span{display:block;max-width:64ch;margin-top:11px;color:#b5aa9b}
.ab-case__progress{text-align:right}.ab-case__progress strong{display:block;color:#e0bd7c;font:500 1.8rem var(--display)}.ab-case__progress span{display:block;color:#8f8577;font-size:.58rem;letter-spacing:.12em;text-transform:uppercase}.ab-case__progress>i{display:block;height:3px;margin-top:13px;background:#292319}.ab-case__progress em{display:block;width:0;height:100%;background:#c89b51;box-shadow:0 0 14px #b67a36;transition:width .35s ease}
.ab-case__desk{display:grid;grid-template-columns:minmax(340px,.85fr) minmax(420px,1.15fr);gap:24px;margin-top:28px}.ab-case__evidence{display:grid;grid-template-columns:1fr 1fr;gap:12px}.ab-case__evidence button{position:relative;display:flex;min-height:175px;flex-direction:column;align-items:flex-start;padding:23px;border:1px solid #4d3a26;background:linear-gradient(145deg,#151515,#090a0b);color:#cfc1aa;text-align:left;cursor:pointer;transition:border-color .2s,transform .2s,background .2s}.ab-case__evidence button:hover{transform:translateY(-2px);border-color:#a77a40}.ab-case__evidence button[aria-pressed="true"]{border-color:#d1a258;background:linear-gradient(145deg,#20170d,#0a0b0c);box-shadow:0 0 0 1px #5e4222 inset}.ab-case__evidence button.is-reviewed::after{content:"✓";position:absolute;right:14px;top:12px;display:grid;width:22px;aspect-ratio:1;place-items:center;border:1px solid #87704f;border-radius:50%;color:#d2ad6b;font-size:.65rem}.ab-case__evidence span{color:#927044;font-size:.54rem;letter-spacing:.15em;text-transform:uppercase}.ab-case__evidence b{max-width:14ch;margin:12px 0 5px;color:#dcc294;font:500 1.2rem/1.1 var(--display);text-transform:uppercase}.ab-case__evidence small{color:#8f877c;font-size:.68rem}.ab-case__evidence i{margin-top:auto;padding-top:18px;color:#a9804d;font:normal .56rem var(--ui);letter-spacing:.1em;text-transform:uppercase}
.ab-case__dossier{position:relative;min-height:362px;padding:clamp(32px,4vw,58px);overflow:hidden;border:1px solid #8d7148;background:linear-gradient(100deg,rgba(214,191,151,.97),rgba(190,158,108,.91)),url('/images/legends/anne-bonny/trial-court.webp') center/cover;color:#332417;box-shadow:0 14px 34px #0008}.ab-case__dossier::before{content:"CASE 001";position:absolute;right:-17px;top:35px;transform:rotate(90deg);color:#745c3e66;font:500 .68rem var(--ui);letter-spacing:.2em}.ab-case__dossier>p{color:#6e4a22}.ab-case__dossier h4{max-width:22ch;color:#332417;font-size:clamp(1.7rem,2.6vw,2.7rem)}.ab-case__dossier>span{display:block;max-width:60ch;margin-top:14px;color:#463523;font-size:.89rem}.ab-case__dossier blockquote{max-width:55ch;margin:25px 0 0;padding:15px 18px;border-left:3px solid #6b481f;background:#f0d9af55;color:#3c2a18;font:italic 1rem/1.5 var(--display)}.ab-case__dossier>a{display:inline-block;margin-top:22px;color:#593914;font-size:.62rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase}.ab-case__stamp{position:absolute;right:25px;bottom:25px;padding:8px 12px;transform:rotate(-4deg);border:2px solid #74451d88;color:#74451dcc;font-size:.58rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
.ab-case__theories{margin-top:28px;padding:28px;border:1px solid #46351f;background:#080909c9}.ab-case__theories fieldset{margin:0;padding:0;border:0}.ab-case__theories fieldset:disabled{opacity:.38}.ab-case__theories legend{display:block;width:100%;margin-bottom:22px;color:#d6bc8a;font:500 1.15rem var(--display);text-transform:uppercase}.ab-case__theories legend span{display:block;margin-bottom:6px;color:#987342;font:500 .55rem var(--ui);letter-spacing:.2em}.ab-case__theories fieldset>div{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.ab-case__theories label{cursor:pointer}.ab-case__theories input{position:absolute;opacity:0;pointer-events:none}.ab-case__theories label>span{display:flex;min-height:150px;flex-direction:column;align-items:center;padding:20px 14px;border:1px solid #443523;background:#101111;text-align:center;transition:.2s}.ab-case__theories label:hover>span{border-color:#896538}.ab-case__theories input:focus-visible+span{outline:2px solid var(--lg-brass-hi);outline-offset:3px}.ab-case__theories input:checked+span{border-color:#d0a45e;background:radial-gradient(circle at 50% 15%,rgba(188,130,52,.2),transparent 55%),#16120d;box-shadow:0 0 0 1px #6a4a27 inset}.ab-case__theories i{color:#ba8848;font:normal 1.65rem var(--display)}.ab-case__theories b{margin:10px 0 5px;color:#d8bd8a;font:500 .88rem var(--display);text-transform:uppercase}.ab-case__theories small{color:#8f877c;font-size:.65rem;line-height:1.45}.ab-case__submit{display:block;margin:24px auto 0;padding:14px 27px;border:1px solid #b18346;background:#3b2814;color:#e6c489;font-size:.62rem;letter-spacing:.17em;text-transform:uppercase;cursor:pointer}.ab-case__submit:disabled{border-color:#453a2c;background:#181716;color:#665f56;cursor:not-allowed}
.ab-case__result{display:grid;grid-template-columns:150px 1fr auto;gap:28px;align-items:center;margin-top:18px;padding:30px;border:1px solid #9c733d;background:linear-gradient(110deg,#19130c,#0a0b0c 66%);box-shadow:0 18px 45px #0008}.ab-case__score{--score:0;display:grid;width:125px;aspect-ratio:1;place-content:center;border-radius:50%;text-align:center;background:radial-gradient(circle at center,#111 58%,transparent 60%),conic-gradient(#d09e50 calc(var(--score)*1%),#342b20 0);box-shadow:0 0 28px rgba(191,132,57,.18)}.ab-case__score strong{color:#e5c78e;font:500 2.2rem var(--display)}.ab-case__score strong::after{content:"%";font-size:.8rem}.ab-case__score span{color:#968b7b;font-size:.48rem;letter-spacing:.13em;text-transform:uppercase}.ab-case__result h4{font-size:clamp(1.25rem,2vw,2rem)}.ab-case__result>div:nth-child(2)>span{display:block;max-width:65ch;margin-top:8px;color:#aaa093;font-size:.8rem}.ab-case__reward{display:flex;gap:9px;margin-top:14px;padding-top:12px;border-top:1px solid #3e3020}.ab-case__reward b{color:#d1aa69;font-size:.66rem;text-transform:uppercase}.ab-case__reward span{color:#8f867b;font-size:.67rem}.ab-case__actions{display:flex;min-width:190px;flex-direction:column;gap:8px}.ab-case__actions button,.ab-case__actions a{padding:11px 14px;border:1px solid #765630;background:#16110c;color:#cfad75;font:500 .57rem var(--ui);letter-spacing:.11em;text-align:center;text-decoration:none;text-transform:uppercase;cursor:pointer}.ab-case__actions button:first-child{background:#5d3e1e;color:#f0d3a1}.ab-case__actions button:disabled{opacity:.7;cursor:wait}
.ab-archive-row{display:grid;grid-template-columns:1.35fr .65fr;border-bottom:1px solid var(--lg-hair)}.ab-source-archive,.ab-ask{padding:clamp(38px,4.5vw,70px);border-right:1px solid var(--lg-hair);background:linear-gradient(145deg,#101517,#090a0b)}.ab-ask{border-right:0;background:radial-gradient(circle at 80% 90%,rgba(139,93,35,.14),transparent 44%),#0b0c0c}.ab-source-archive h3,.ab-ask h3,.ab-explore h3{font-size:clamp(1.8rem,3vw,3rem)}.ab-source-archive header>span,.ab-ask header>span,.ab-explore header>span{display:block;max-width:50ch;margin-top:9px;color:#a79d8f;font-size:.84rem}
.ab-source-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:28px}.ab-source-cards>a{display:flex;min-height:265px;flex-direction:column;padding:22px 17px;border:1px solid #77603f;border-radius:5px;background:linear-gradient(165deg,rgba(244,220,174,.95),rgba(176,138,83,.88)),url('/images/legends/anne-bonny/historical-source.jpg') center/cover;color:#302113;text-decoration:none;box-shadow:0 8px 20px #0008;transform:rotate(-.5deg)}.ab-source-cards>a:nth-child(even){transform:rotate(.6deg)}.ab-source-cards small{font-size:.53rem;letter-spacing:.1em;text-transform:uppercase}.ab-source-cards b{margin:auto 0;color:#2f2013;font:500 1.15rem/1.25 var(--display)}.ab-source-cards span{font-size:.57rem;text-transform:uppercase}.ab-panel-link{margin-top:24px}
.ab-ask form{display:grid;grid-template-columns:1fr auto;margin-top:26px}.ab-ask input{min-width:0;padding:13px 15px;border:1px solid #6f4f28;background:#070808;color:#e4d6c1;font:italic .84rem var(--ui)}.ab-ask form button{padding:0 22px;border:1px solid #9f7136;background:#3a2714;color:#e0bc7e;font-size:.64rem;letter-spacing:.14em;text-transform:uppercase;cursor:pointer}.ab-ask__examples{display:flex;flex-direction:column;align-items:flex-start;gap:7px;margin-top:20px}.ab-ask__examples button{padding:4px 7px;border:1px solid #47331f;background:#15110d;color:#b2a493;font-size:.61rem;cursor:pointer}.ab-ask__examples button:hover{border-color:#b48346;color:#d9bc8d}.ab-ask__answer{margin-top:18px;padding:16px;border-left:2px solid #b58446;background:#080909}.ab-ask__answer b{color:#d4b578;font:500 .9rem var(--display)}.ab-ask__answer p{margin:7px 0;color:#aaa094;font-size:.74rem}.ab-ask__answer a{color:#c19a5e;font-size:.62rem}
.ab-explore{display:grid;grid-template-columns:310px 1fr;min-height:525px;background:#090907}.ab-explore>header{display:flex;flex-direction:column;justify-content:center;padding:clamp(35px,4vw,60px);background:linear-gradient(90deg,rgba(6,6,5,.96),rgba(6,6,5,.55)),url('/images/legends/anne-bonny/explore-anne.webp') center/cover}.ab-explore header>a{align-self:flex-start}.ab-products{display:grid;grid-template-columns:repeat(5,1fr);gap:9px;align-items:stretch;padding:28px 24px;overflow-x:auto}.ab-products>p{grid-column:1/-1;align-self:center;text-align:center;color:#8e8579}.ab-products article{min-width:175px;border:1px solid #614a2f;background:#0c0d0d}.ab-products article>a{display:flex;height:100%;flex-direction:column;color:inherit;text-decoration:none}.ab-products img{width:100%;aspect-ratio:4/5;object-fit:cover;border-bottom:1px solid #614a2f;background:#171411}.ab-products article span{padding:14px 14px 0;color:#9b7443;font-size:.52rem;letter-spacing:.14em;text-transform:uppercase}.ab-products h4{padding:6px 14px 0;color:#d3b57e;font-size:.9rem;text-transform:none}.ab-products article b{margin-top:auto;padding:13px 14px 16px;color:#c4a36d;font:500 1rem var(--display)}.ab-products__fallback{grid-column:1/-1;align-self:center;text-align:center}.ab-products__fallback a{color:#c49d60}
@media(max-width:1150px){.ab-paths{grid-template-columns:1fr 1.4fr}.ab-path--legend{grid-column:1/-1;min-height:280px}.ab-record-grid,.ab-quote-fates,.ab-archive-row{grid-template-columns:1fr}.ab-trial-card,.ab-quote-fates blockquote,.ab-source-archive{border-right:0;border-bottom:1px solid var(--lg-hair)}.ab-source-cards{grid-template-columns:repeat(4,minmax(170px,1fr));overflow-x:auto}.ab-case__desk{grid-template-columns:1fr}.ab-case__result{grid-template-columns:140px 1fr}.ab-case__actions{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr 1fr}.ab-explore{grid-template-columns:250px 1fr}.ab-products{grid-template-columns:repeat(5,minmax(180px,1fr))}}
@media(max-width:760px){.rx{width:100%;max-width:100vw}.ab-paths{grid-template-columns:1fr}.ab-path{min-width:0;min-height:330px;border-right:0;border-bottom:1px solid var(--lg-hair)}.ab-path--legend{grid-column:auto}.ab-timeline{width:100%;max-width:calc(100vw - 68px);grid-template-columns:repeat(6,92px);overflow-x:auto;padding-bottom:10px}.ab-timeline::before{left:45px;right:auto;width:460px}.ab-trial-card{min-height:610px;padding:32px 22px}.ab-trial-card::after{background:linear-gradient(180deg,rgba(218,192,145,.97) 0 53%,rgba(218,192,145,.65) 72%,transparent)}.ab-trial-card ul{grid-template-columns:1fr}.ab-connections{display:block}.ab-connection{min-height:330px}.ab-connection::after{background:linear-gradient(90deg,#080a0cf5,#080a0caa 72%,transparent)}.ab-fates>div{grid-template-columns:1fr 1fr;gap:25px 0}.ab-fates article:nth-child(2){border-right:0}.ab-case{padding:38px 20px}.ab-case__head{grid-template-columns:1fr}.ab-case__progress{text-align:left}.ab-case__evidence{grid-template-columns:1fr 1fr}.ab-case__evidence button{min-height:155px;padding:18px}.ab-case__theories{padding:20px 14px}.ab-case__theories fieldset>div{grid-template-columns:1fr 1fr}.ab-case__result{grid-template-columns:1fr;text-align:center}.ab-case__score{margin:auto}.ab-case__result>div:nth-child(2)>span{margin:8px auto 0}.ab-case__reward{justify-content:center;flex-wrap:wrap}.ab-case__actions{grid-column:auto;grid-template-columns:1fr}.ab-source-archive,.ab-ask,.ab-explore,.ab-products{min-width:0}.ab-source-cards{width:100%;max-width:calc(100vw - 40px);grid-template-columns:repeat(4,175px)}.ab-explore{grid-template-columns:1fr}.ab-explore>header{min-height:360px}.ab-products{width:100%;max-width:100vw;grid-template-columns:repeat(5,190px)}.ab-ask form{grid-template-columns:1fr}.ab-ask form button{padding:13px}}
@media(max-width:480px){.ab-fates>div{grid-template-columns:1fr}.ab-fates article{padding:18px 0;border-right:0;border-bottom:1px solid #3b2b1d}.ab-fates article:last-child{border-bottom:0}.ab-case__evidence,.ab-case__theories fieldset>div{grid-template-columns:1fr}.ab-case__dossier{padding:30px 23px 80px}.ab-case__stamp{right:18px;bottom:20px}.ab-source-archive,.ab-ask{padding:34px 20px}.ab-connection>div{padding:35px 22px}}
