/* Public promotional artwork, separate from the protected collectible catalog. */
.brand,.brand span{background:linear-gradient(110deg,#f8eaca 0%,#92e5e3 18%,#fff 30%,#c1a0ef 43%,#fff3cc 55%,#9be4ed 69%,#e3b5e5 83%,#f8eaca 100%);background-size:260% 100%;background-clip:text;-webkit-background-clip:text;color:transparent;animation:brandFoil 11s ease-in-out infinite;text-shadow:none}
body[data-view=home]{overflow-x:clip;isolation:isolate}
.signal-flare{position:fixed;inset:-15% auto -15% 0;width:22vw;min-width:140px;pointer-events:none;z-index:5;opacity:0;background:linear-gradient(90deg,transparent,#b29bf408 30%,#b2ffe91a 47%,#f8fcff48 50%,#dfb1fb16 54%,transparent 75%);filter:blur(5px);transform:translateX(-30vw) skewX(-14deg);animation:signalPass 18s ease-in-out infinite}
.showcase-art{margin:0;min-width:0;height:550px}
.showcase-art:before{inset:0;background:radial-gradient(ellipse,#9abbd52a,transparent 66%)}
.showcase-art .orbit{width:96%;border-color:#b4d3e82b}.showcase-art .orbit-two{width:76%}
.showcase-creature{position:absolute;inset:4% -5% 12%;display:grid;place-items:center;isolation:isolate;mask-image:url('/arcade/assets/prism-warden.webp');mask-size:contain;mask-repeat:no-repeat;mask-position:center;-webkit-mask-image:url('/arcade/assets/prism-warden.webp');-webkit-mask-size:contain;-webkit-mask-repeat:no-repeat;-webkit-mask-position:center}
.showcase-creature img{width:100%;height:100%;max-width:none;object-fit:contain;animation:none;filter:none}
.showcase-creature:after{content:'';position:absolute;inset:-50%;background:linear-gradient(115deg,transparent 36%,#84e7e366 43%,#ffffffcc 49%,#dcb3ff99 54%,transparent 62%);mix-blend-mode:soft-light;animation:wardenFoil 18s ease-in-out infinite;pointer-events:none}
.showcase-caption{position:absolute;bottom:12px;text-align:center;width:100%}.showcase-caption strong{display:block;font:italic 26px Georgia,serif;color:#e7e2f1}.showcase-caption span{display:block;margin-top:8px;font:9px Consolas,monospace;letter-spacing:.14em;color:#99b9c5;text-transform:uppercase}
@keyframes brandFoil{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}
@keyframes wardenFoil{0%,25%{transform:translateX(-38%);opacity:0}29%{opacity:.85}36%{opacity:.7}41%,100%{transform:translateX(38%);opacity:0}}
@keyframes signalPass{0%,8%{transform:translateX(-30vw) skewX(-14deg);opacity:0}13%{opacity:.65}35%{opacity:.4}42%,100%{transform:translateX(125vw) skewX(-14deg);opacity:0}}
@media(max-width:900px){.showcase-art{height:440px}.showcase-caption strong{font-size:23px}}
@media(max-width:620px){.showcase-art{height:380px;margin-top:20px}.showcase-creature{inset:0 -3% 17%}.showcase-caption{bottom:8px}.signal-flare{opacity:.3}}
@media(prefers-reduced-motion:reduce){.signal-flare{display:none}.brand,.brand span,.showcase-creature:after{animation:none}}
body.low-motion .signal-flare{display:none}body.low-motion .brand,body.low-motion .brand span,body.low-motion .showcase-creature:after{animation:none}

/* Bookish type and small jewel-like controls, with familiar readable form text. */
h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.045em}
.hero h1{font-size:clamp(46px,5.5vw,79px);line-height:1.08;letter-spacing:-.055em}
.hero h1 em{color:#cbb2fa;text-shadow:0 0 35px #c0a5f715}
.intro{font-family:Georgia,serif;font-size:19px;color:#b9b5c7;line-height:1.85}
nav{gap:25px}nav a,.parent{font-family:Georgia,serif;font-size:14px;letter-spacing:.015em;position:relative;transition:color .2s}
nav a:after{content:'';position:absolute;bottom:-7px;left:35%;right:35%;height:1px;background:linear-gradient(90deg,transparent,#a6e4df,transparent);opacity:0;transition:opacity .2s,left .2s,right .2s}
nav a:hover:after,nav a:focus-visible:after{opacity:1;left:0;right:0}
.button{font-family:Georgia,serif;font-size:14px;letter-spacing:.025em;border-radius:9px 2px 9px 2px;border-color:#9c85bc66;background:linear-gradient(135deg,#bda0ee0b,#8adcd208);box-shadow:inset 0 1px #ffffff08;transition:background .2s,border-color .2s,box-shadow .2s,transform .2s;min-height:48px}
.button:hover{border-color:#b0dfdb;box-shadow:0 0 22px #9edcd414,inset 0 1px #ffffff16;transform:translateY(-2px)}
.button:active{transform:translateY(0)}
.button.primary{color:#21172e;border-color:#e2cdf8aa;background:linear-gradient(115deg,#ddc9f5,#bda6e9 48%,#b9d4df);box-shadow:inset 0 1px #ffffffe0,0 4px 24px #9c76d51a}
.button.primary:hover{background:linear-gradient(115deg,#eee0ff,#d0b9fa 48%,#cceae7);box-shadow:inset 0 1px #fff,0 5px 28px #b697e52a}
.button:disabled{transform:none;opacity:.5;cursor:not-allowed}
@media(max-width:620px){.hero h1{font-size:48px}.intro{font-size:17px}nav{gap:10px}nav a{font-size:12px}.parent{font-size:12px}.hero .button{font-size:13px;padding:12px 17px}}
@media(prefers-reduced-motion:reduce){.button:hover{transform:none}.showcase-creature:after{opacity:.12}}
body.low-motion .button:hover{transform:none}body.low-motion .showcase-creature:after{opacity:.12}

@font-face{font-family:ArcadeWhimsy;src:url('/arcade/assets/fonts/almendra.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:ArcadeInitial;src:url('/arcade/assets/fonts/almendra-display.ttf') format('truetype');font-display:swap}
h1,h2,h3,.hero h1 em,h2 em{font-family:ArcadeWhimsy,'Trebuchet MS',sans-serif;font-style:normal;font-weight:400;letter-spacing:-.045em}
.hero h1{font-size:clamp(40px,4.7vw,68px);line-height:1.16;letter-spacing:-.055em}
.hero h1 em{font-weight:500;background:linear-gradient(115deg,#d4afff,#b3cff4 65%,#bce7dd);background-clip:text;-webkit-background-clip:text;color:transparent;text-shadow:none}
nav a,.parent,.button,.intro{font-family:'Trebuchet MS',Arial,sans-serif}
nav a{font-size:13px;letter-spacing:.015em}.button{font-weight:600;font-size:13px;letter-spacing:.015em}.intro{font-size:17px}
.showcase-caption strong{font-family:ArcadeWhimsy,'Trebuchet MS',sans-serif;font-style:normal;font-size:23px;font-weight:400;letter-spacing:-.035em}
.showcase-creature img{filter:none}
.showcase-creature:after{inset:0;background:linear-gradient(105deg,transparent 2%,#6affed60 20%,#ffadffb0 34%,#fffffff5 49%,#b8eaffd0 61%,#ffe8ab90 74%,transparent 98%);background-size:var(--glint-width,160px) 100%;background-position:var(--glint-x,-500px) center;background-repeat:no-repeat;mix-blend-mode:color-dodge;animation:none;transform:none;opacity:var(--glint-opacity,0)}
@media(max-width:620px){.hero h1{font-size:42px;line-height:1.19}.intro{font-size:16px}.showcase-caption strong{font-size:21px}nav a{font-size:11px}}

.hero h1{font-size:clamp(44px,5.4vw,78px);line-height:1.22;letter-spacing:-.035em}
.hero h1 em{background:none;color:#cdb5f3;font-weight:400;-webkit-text-fill-color:currentColor}
.illuminated{display:inline-block;position:relative;font-family:ArcadeInitial,Georgia,serif;font-size:1.16em;line-height:1;vertical-align:-.055em;color:#e3ce9e;padding:.02em .075em;margin-right:.025em;border:1px solid #c9b68066;outline:1px solid #a9956726;outline-offset:3px;background:radial-gradient(ellipse at 30% 20%,#c3a2ea25,transparent 75%),linear-gradient(135deg,#ae925d0b,#11131b);text-shadow:0 1px 10px #e4c79415}
.illuminated:before,.illuminated:after{content:'❧';position:absolute;font:14px Georgia;color:#bda474aa;line-height:1;pointer-events:none}.illuminated:before{left:-7px;top:-8px;transform:rotate(-35deg)}.illuminated:after{right:-7px;bottom:-7px;transform:rotate(145deg)}
.illuminated-small{color:#d6bcf3;border-color:#b69bd166;font-size:1.12em}
nav a,.parent,.button{font-family:ArcadeWhimsy,Georgia,serif;font-weight:400}nav a{font-size:16px}.button{font-size:17px}.intro{font-family:Georgia,serif;font-size:17px}.showcase-caption strong{font-size:28px}
.signal-flare{width:26vw;background:linear-gradient(90deg,transparent,#b29bf406 22%,#b2ffe915 42%,#f2eaff28 50%,#dfb1fb12 59%,transparent 82%);filter:blur(8px)}
.showcase-creature:after{background-image:linear-gradient(105deg,transparent 2%,#98e8dc40 20%,#d0adee60 36%,#ead2be40 49%,#a9d9e75c 62%,#d8bfe745 77%,transparent 98%);mix-blend-mode:soft-light;opacity:var(--glint-opacity,0)}
.scale-glint{position:absolute;width:17px;height:17px;pointer-events:none;z-index:3;opacity:var(--sparkle,0);background:radial-gradient(ellipse,#fff9dfb8 0 4%,#c7e7f050 12%,transparent 65%);filter:drop-shadow(0 0 4px #dac5f566)}
.scale-glint:before,.scale-glint:after{content:'';position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);background:linear-gradient(90deg,transparent,#e4d9fac9,transparent);border-radius:50%}.scale-glint:before{width:22px;height:1px}.scale-glint:after{width:1px;height:15px;background:linear-gradient(transparent,#d7f0e9c9,transparent)}
.glint-one{left:25%;top:29%}.glint-two{left:48%;top:48%;width:13px;height:13px}.glint-three{left:68%;top:63%}.glint-four{left:85%;top:33%;width:12px;height:12px}
@media(max-width:620px){.hero h1{font-size:43px;line-height:1.3}nav a{font-size:13px}.hero .button{font-size:16px}.showcase-caption strong{font-size:25px}.illuminated:before,.illuminated:after{font-size:10px}}
@media(prefers-reduced-motion:reduce){.scale-glint{display:none}.showcase-creature:after{opacity:0}}body.low-motion .scale-glint{display:none}body.low-motion .showcase-creature:after{opacity:0}

@font-face{font-family:ArcadeOldEnglish;src:url('/arcade/assets/fonts/old-english.ttf') format('truetype');font-display:swap}
.illuminated{font-family:ArcadeOldEnglish,Georgia,serif;font-size:1.08em;line-height:1;vertical-align:-.025em;color:#e3ce9e;padding:0;margin-right:.015em;border:0;outline:0;background:none;text-shadow:0 0 16px #d5b17616}
.illuminated:before,.illuminated:after{content:none}.illuminated-small{color:#d6bcf3;font-size:1.04em}
.showcase-creature:after{background-image:linear-gradient(115deg,transparent 5%,#83dedb48 26%,#d1b2f66b 40%,#fff2d182 50%,#a5e3e66b 61%,#e0bce748 75%,transparent 95%);mix-blend-mode:screen;opacity:var(--glint-opacity,0)}
