/* Arcana experience layer: richer hierarchy over the strict Arcana grammar. */
[data-arcana] .arcana-key {
  position:relative;
  min-block-size:min(82vh, 58rem);
  border-block-end:1px solid var(--arc-line);
  background:var(--arc-c-ink);
}
[data-arcana] .arcana-key::before {
  content:"";
  position:absolute;
  inset:0 auto 0 9.5%;
  inline-size:clamp(.25rem, .55vw, .5rem);
  background:var(--arc-accent);
  opacity:.9;
}
[data-arcana] .arcana-key::after {
  content:attr(data-arcana-numeral);
  position:absolute;
  inset:auto 2vw -.14em auto;
  font:400 clamp(9rem, 28vw, 27rem)/.72 var(--arc-display);
  color:var(--arc-accent);
  opacity:.08;
  pointer-events:none;
  user-select:none;
}
[data-arcana] .arcana-key .grid-container {
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:minmax(15rem, .82fr) minmax(0, 1.18fr);
  gap:clamp(2rem, 6vw, 7rem);
  align-items:center;
  width:min(var(--arc-shell-max), 100% - 2rem);
  max-width:none;
  min-height:inherit;
  padding-block:clamp(3rem, 8vw, 7rem);
}
[data-arcana] .arcana-key .grid-container > * {
  width:auto;
  margin:0;
  padding:0;
}
[data-arcana] .arcana-key [data-arcana-key-art] {
  position:relative;
  border:1px solid var(--arc-line);
  box-shadow:0 2rem 5rem rgba(0,0,0,.38);
  transform:rotate(calc(var(--arc-card-tilt) * -1));
}
[data-arcana] .arcana-key [data-arcana-key-art]::after {
  content:"";
  position:absolute;
  inset:1rem -1rem -1rem 1rem;
  border:1px solid var(--arc-accent);
  opacity:.52;
  pointer-events:none;
}
[data-arcana] .arcana-key .arcana-display {
  max-inline-size:11ch;
  font-size:clamp(3.25rem, 7.2vw, 7.5rem);
  line-height:.9;
}
[data-arcana] .arcana-key .arcana-kicker {
  color:var(--arc-accent);
  letter-spacing:.12em;
}
[data-arcana] .arcana-key .arcana-lead {
  color:var(--arc-muted);
  max-inline-size:42ch;
}
[data-arcana] > .alcor-section {
  position:relative;
  border-block-start:1px solid var(--arc-line);
}
[data-arcana] > .alcor-section[data-arcana-index]::before {
  content:attr(data-arcana-index);
  position:absolute;
  inset:clamp(1.25rem, 4vw, 3rem) auto auto max(1rem, calc((100vw - var(--arc-grid-max))/2));
  color:var(--arc-accent);
  font:600 .72rem/1 var(--arc-body);
  letter-spacing:.16em;
}
[data-arcana] > .alcor-section .alcor-section__inner {
  display:grid;
  grid-template-columns:minmax(0, .82fr) minmax(0, 1.18fr);
  column-gap:clamp(2rem, 7vw, 8rem);
  row-gap:1rem;
  padding-block:clamp(4.5rem, 10vw, 8rem);
}
[data-arcana] > .alcor-section :is(.alcor-section__eyebrow,.alcor-section__title) { grid-column:1; }
[data-arcana] > .alcor-section :is(.alcor-section__body,.alcor-section__list,.alcor-section__children,.alcor-section__image,.alcor-section__cta) { grid-column:2; }
[data-arcana] > .alcor-section .alcor-section__eyebrow {
  color:var(--arc-accent);
  letter-spacing:.13em;
}
[data-arcana] > .alcor-section .alcor-section__title {
  align-self:start;
  font-size:clamp(2.1rem, 4vw, 4.9rem);
  line-height:.94;
}
[data-arcana] > .alcor-section .alcor-section__body {
  font-size:clamp(1.02rem, 1.25vw, 1.16rem);
}
[data-arcana] > .alcor-section .alcor-section__body strong { color:var(--arc-accent); }
[data-arcana] > .alcor-section .alcor-section__list > li {
  position:relative;
  min-block-size:2.5rem;
  padding-inline-start:3.25rem;
}
[data-arcana] > .alcor-section .alcor-section__list > li[data-arcana-item-index]::before {
  content:attr(data-arcana-item-index);
  position:absolute;
  inset:.9rem auto auto 0;
  color:var(--arc-accent);
  font:600 .68rem/1 var(--arc-body);
  letter-spacing:.12em;
}
[data-arcana] .arcana-rail-nav {
  border-block:1px solid var(--arc-line);
  background:var(--arc-c-ink);
}
[data-arcana] .arcana-rail-nav .arcana-heading {
  font-size:clamp(2rem, 4vw, 4.25rem);
  line-height:.96;
}
[data-arcana] .arcana-card {
  position:relative;
  border-color:var(--arc-line);
  box-shadow:0 1.25rem 3rem rgba(0,0,0,.28);
}
[data-arcana] .arcana-card::after {
  content:"";
  position:absolute;
  inset:.65rem;
  border:1px solid var(--arc-accent);
  opacity:.22;
  pointer-events:none;
}
[data-arcana][data-arcana-motion="enhanced"] .arcana-action,
[data-arcana][data-arcana-motion="enhanced"] .alcor-section__cta {
  transition:transform var(--arc-motion-duration) ease, border-color var(--arc-motion-duration) ease;
}
@media (hover:hover) {
  [data-arcana][data-arcana-motion="enhanced"] :is(.arcana-action,.alcor-section__cta):hover {
    transform:translateY(-.18rem);
  }
}
@media screen and (max-width:47.9375em) {
  [data-arcana] .arcana-key { min-block-size:auto; }
  [data-arcana] .arcana-key::before { inset:0 auto 0 1rem; }
  [data-arcana] .arcana-key::after { inset:1rem .5rem auto auto; font-size:8rem; }
  [data-arcana] .arcana-key .grid-container {
    grid-template-columns:1fr;
    gap:2.5rem;
    padding-block:3rem 5rem;
  }
  [data-arcana] .arcana-key [data-arcana-key-art] {
    width:min(78vw, 22rem);
    justify-self:center;
    transform:none;
  }
  [data-arcana] > .alcor-section .alcor-section__inner {
    grid-template-columns:1fr;
    padding-block:4.5rem;
  }
  [data-arcana] > .alcor-section :is(.alcor-section__eyebrow,.alcor-section__title,.alcor-section__body,.alcor-section__list,.alcor-section__children,.alcor-section__image,.alcor-section__cta) {
    grid-column:1;
  }
  [data-arcana] > .alcor-section[data-arcana-index]::before {
    inset:1.25rem auto auto 1rem;
  }
}
@media (prefers-reduced-motion:reduce) {
  [data-arcana] .arcana-key [data-arcana-key-art],
  [data-arcana] :is(.arcana-action,.alcor-section__cta) {
    transform:none;
    transition:none;
  }
}
