/* ───────────────────────────────────────────────
   CODEX CURIOSITAS
   ─────────────────────────────────────────────── */

.codex-curiositas .content-box{
  background: rgba(0,0,0,.32);
}

.codex-curiositas .codex-label{
  color:#e6d7b3;
}

.codex-curiositas .section-label{
  color:#f0d79a;
}

.curiositas-intro{
  margin-top:.6rem;
  text-align:center;
}

.curiositas-lede{
  max-width:72ch;
  margin:.75rem auto 0;
  color:rgba(230,231,232,.82);
  font-size:.98rem;
  line-height:1.58;
}

.curio-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:1rem;
  margin-top:1rem;
}

@media (min-width: 900px){
  .curio-grid{
    grid-template-columns:1fr 1fr;
    gap:1.15rem;
  }
}

.curio-card{
  border-radius:14px;
  border:1px solid rgba(209,180,100,.18);
  background:rgba(0,0,0,.14);
  box-shadow:0 10px 24px rgba(0,0,0,.24);
  padding:1rem 1.05rem 1.1rem;
  height:100%;
  box-sizing:border-box;
}

.curio-card h3{
  margin:0 0 .35rem;
  font-size:1.02rem;
  letter-spacing:.02em;
  color:#fceabb;
}

.curio-card p{
  margin:.35rem 0;
  font-size:.95rem;
  color:rgba(230,231,232,.82);
  line-height:1.58;
}

.curio-links{
  margin-top:.65rem;
  display:flex;
  flex-wrap:wrap;
  gap:.5rem;
}

.curio-chip{
  display:inline-block;
  padding:.52rem .8rem;
  border-radius:999px;
  border:1px solid rgba(209,180,100,.28);
  background:rgba(0,0,0,.16);
  color:#ecd8a6;
  text-decoration:none;
  transition:transform .16s ease, box-shadow .16s ease, border-color .16s ease, background .16s ease;
}

.curio-chip:hover,
.curio-chip:focus{
  transform:translateY(-1px);
  box-shadow:0 5px 12px rgba(0,0,0,.26);
  border-color:rgba(252,234,187,.60);
  background:rgba(0,0,0,.24);
  text-decoration:none;
}

.curio-chip.is-passive{
  opacity:.52;
  cursor:default;
  border-style:dashed;
  border-color:rgba(209,180,100,.22);
  background:rgba(0,0,0,.14);
  color:#d9c38e;
}

.curio-chip.is-passive:hover{
  transform:none;
  box-shadow:none;
  border-color:rgba(209,180,100,.22);
  background:rgba(0,0,0,.14);
}

.curio-note{
  margin-top:.25rem;
  color:rgba(230,231,232,.74);
  font-size:.92rem;
  line-height:1.55;
}

.curio-echo{
  text-align:center;
  opacity:.88;
}

/* ───────────────────────────────────────────────
   CURIOSITAS HEADER MARK
   ─────────────────────────────────────────────── */

.curiositas-mark-link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  text-decoration:none;
  border-radius:999px;
  padding:.35rem;
  margin-bottom:.35rem;
}

.curiositas-mark-link:focus-visible{
  outline:2px solid rgba(252,234,187,.85);
  outline-offset:4px;
  border-radius:999px;
}

.curiositas-mark{
  position:relative;
  width:138px;
  height:138px;
  display:inline-block;
  border-radius:50%;
  filter:drop-shadow(0 0 10px rgba(240,215,154,.10));
}

.curiositas-ring,
.curiositas-arc,
.curiositas-spark,
.curiositas-core,
.curiositas-star{
  position:absolute;
  display:block;
  box-sizing:border-box;
}

.curiositas-ring-outer{
  top:0;
  right:0;
  bottom:0;
  left:0;
  border:2px solid rgba(240,215,154,.88);
  border-radius:50%;
  opacity:.95;
}

.curiositas-ring-inner{
  top:11px;
  right:11px;
  bottom:11px;
  left:11px;
  border:1px solid rgba(240,215,154,.30);
  border-radius:50%;
  opacity:.9;
}

.curiositas-arc{
  top:50%;
  left:50%;
  width:72px;
  height:32px;
  margin-left:-36px;
  margin-top:-16px;
  border-top:1.4px solid rgba(240,215,154,.78);
  border-radius:50%;
}

.curiositas-arc-a{
  transform:rotate(22deg);
  animation:curiositas-sway-a 8.6s ease-in-out infinite;
}

.curiositas-arc-b{
  transform:rotate(-18deg);
  opacity:.58;
  animation:curiositas-sway-b 9.8s ease-in-out infinite;
}

.curiositas-spark{
  top:32px;
  left:50%;
  width:10px;
  height:10px;
  margin-left:-5px;
  background:#fceabb;
  border-radius:50%;
  box-shadow:
    0 0 12px rgba(252,234,187,.28),
    0 0 22px rgba(252,234,187,.16);
  animation:curiositas-spark 5.4s ease-in-out infinite;
}

.curiositas-core{
  top:50%;
  left:50%;
  width:12px;
  height:12px;
  margin-left:-6px;
  margin-top:-6px;
  background:#f0d79a;
  border-radius:50%;
  box-shadow:
    0 0 0 5px rgba(240,215,154,.08),
    0 0 14px rgba(240,215,154,.18);
}

.curiositas-star{
  width:4px;
  height:4px;
  border-radius:50%;
  background:#fceabb;
  box-shadow:0 0 8px rgba(252,234,187,.22);
  animation:curiositas-twinkle 6.2s ease-in-out infinite;
}

.curiositas-star-1{
  top:34px;
  right:34px;
  animation-delay:.3s;
}

.curiositas-star-2{
  top:50px;
  left:36px;
  animation-delay:1.4s;
}

.curiositas-star-3{
  bottom:34px;
  left:50%;
  margin-left:-2px;
  animation-delay:2.6s;
}

.curiositas-mark::before{
  content:"";
  position:absolute;
  left:50%;
  top:50%;
  width:94px;
  height:94px;
  margin-left:-47px;
  margin-top:-47px;
  border:1px solid rgba(240,215,154,.10);
  border-radius:50%;
  animation:curiositas-breathe 10.4s ease-in-out infinite;
}

.curiositas-mark-link:hover .curiositas-mark,
.curiositas-mark-link:focus-visible .curiositas-mark{
  filter:drop-shadow(0 0 16px rgba(240,215,154,.12));
}

@keyframes curiositas-breathe{
  0%,100%{
    transform:scale(1);
    opacity:.74;
  }
  50%{
    transform:scale(1.05);
    opacity:1;
  }
}

@keyframes curiositas-sway-a{
  0%,100%{ transform:rotate(22deg); opacity:.82; }
  50%{ transform:rotate(28deg); opacity:1; }
}

@keyframes curiositas-sway-b{
  0%,100%{ transform:rotate(-18deg); opacity:.58; }
  50%{ transform:rotate(-12deg); opacity:.84; }
}

@keyframes curiositas-spark{
  0%,100%{
    transform:scale(1);
    opacity:.8;
  }
  50%{
    transform:scale(1.28);
    opacity:1;
  }
}

@keyframes curiositas-twinkle{
  0%,100%{
    opacity:.28;
    transform:scale(1);
  }
  50%{
    opacity:.84;
    transform:scale(1.2);
  }
}

@media (prefers-reduced-motion: reduce){
  .curiositas-mark::before,
  .curiositas-arc,
  .curiositas-spark,
  .curiositas-star{
    animation:none !important;
  }
}

/* ───────────────────────────────────────────────
   CODEX CURIOSITAS LEGACY of existing pages not yet impliemented
   ─────────────────────────────────────────────── */

    .codex-curiositas .content-box{
      background: rgba(0,0,0,.32);
    }

    .codex-curiositas .codex-label{
      color:#e6d7b3;
    }

    .codex-curiositas .section-label{
      color:#f0d79a;
    }

    .curiositas-intro{
      margin-top:.6rem;
      text-align:center;
    }

    .curiositas-lede{
      max-width:72ch;
      margin:.75rem auto 0;
      color:rgba(230,231,232,.82);
      font-size:.98rem;
      line-height:1.58;
    }

    .curio-grid{
      display:grid;
      grid-template-columns:1fr;
      gap:1rem;
      margin-top:1rem;
    }

    @media (min-width: 900px){
      .curio-grid{
        grid-template-columns:1fr 1fr;
        gap:1.15rem;
      }
    }

    .curio-card{
      border-radius:14px;
      border:1px solid rgba(209,180,100,.18);
      background:rgba(0,0,0,.14);
      box-shadow:0 10px 24px rgba(0,0,0,.24);
      padding:1rem 1.05rem 1.1rem;
      height:100%;
      box-sizing:border-box;
    }

    .curio-card h3{
      margin:0 0 .35rem;
      font-size:1.02rem;
      letter-spacing:.02em;
      color:#fceabb;
    }

    .curio-card p{
      margin:.35rem 0;
      font-size:.95rem;
      color:rgba(230,231,232,.82);
      line-height:1.58;
    }

    .curio-links{
      margin-top:.65rem;
      display:flex;
      flex-wrap:wrap;
      gap:.5rem;
    }

    .curio-chip{
      display:inline-block;
      padding:.52rem .8rem;
      border-radius:999px;
      border:1px solid rgba(209,180,100,.28);
      background:rgba(0,0,0,.16);
      color:#ecd8a6;
      text-decoration:none;
      transition:transform .16s ease, box-shadow .16s ease, border-color .16s ease, background .16s ease;
    }

    .curio-chip:hover,
    .curio-chip:focus{
      transform:translateY(-1px);
      box-shadow:0 5px 12px rgba(0,0,0,.26);
      border-color:rgba(252,234,187,.60);
      background:rgba(0,0,0,.24);
      text-decoration:none;
    }

    .curio-chip.is-passive{
      opacity:.52;
      cursor:default;
      border-style:dashed;
      border-color:rgba(209,180,100,.22);
      background:rgba(0,0,0,.14);
      color:#d9c38e;
    }

    .curio-chip.is-passive:hover{
      transform:none;
      box-shadow:none;
      border-color:rgba(209,180,100,.22);
      background:rgba(0,0,0,.14);
    }

    .curio-note{
      margin-top:.25rem;
      color:rgba(230,231,232,.74);
      font-size:.92rem;
      line-height:1.55;
    }

    .curio-echo{
      text-align:center;
      opacity:.88;
    }
