@font-face {
  font-family: CraftCardSerif;
  src: url('assets/card-serif.ttf') format('truetype');
  font-style: normal;
  font-weight: 600;
  font-display: swap;
}
@font-face {
  font-family: CraftCardSans;
  src: url('assets/nunito.ttf') format('truetype');
  font-style: normal;
  font-weight: 400 900;
  font-display: swap;
}

.craft-card-art {
  display: block;
  width: min(100%, 840px);
  max-width: 840px;
  min-width: 0;
  min-height: 0;
  aspect-ratio: 7 / 10;
  margin: 24px auto;
  padding: 0;
  border: 0;
  border-radius: 19px;
  background: #fffaf2;
  overflow: hidden;
  box-shadow: 0 18px 50px #5d533625, 0 4px 12px #7d654019;
  isolation: isolate;
}
.craft-card-art > .craft-card-svg {
  display: block;
  width: 100%;
  height: auto;
  max-width: none;
  aspect-ratio: 7 / 10;
  overflow: hidden;
}
.craft-card-svg .craft-card-serif { font-family: CraftCardSerif, Georgia, 'Times New Roman', serif; }
.craft-card-svg .craft-card-sans { font-family: CraftCardSans, Nunito, 'Trebuchet MS', sans-serif; }
@media (max-width: 560px) {
  .craft-card-art { margin: 18px auto; border-radius: 13px; }
}
@media print {
  .craft-card-art {
    width: 140mm;
    max-width: 140mm;
    height: 200mm;
    min-height: 0;
    margin: 0 auto;
    padding: 0;
    border: 0;
    border-radius: 0;
    box-shadow: none;
    overflow: hidden;
    break-inside: avoid;
    page-break-inside: avoid;
    print-color-adjust: exact;
    -webkit-print-color-adjust: exact;
  }
  .craft-card-art > .craft-card-svg {
    width: 140mm;
    height: 200mm;
    max-width: none;
  }
}
