/* Homepage Live2D announcement. */
.live2d-promo{position:relative;z-index:2;max-width:1240px;margin:0 auto;padding:0 40px 64px;scroll-margin-top:32px;box-sizing:border-box}
.live2d-promo__panel{position:relative;display:grid;grid-template-columns:minmax(0,.76fr) minmax(0,1.65fr);align-items:center;gap:30px;padding:32px;border:1px solid rgba(203,187,255,.23);border-radius:28px;overflow:hidden;background:radial-gradient(ellipse at 0 100%,rgba(168,139,255,.09),transparent 60%),#211e29;box-shadow:0 20px 60px rgba(10,8,15,.16)}
.live2d-promo__panel:before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:linear-gradient(180deg,rgba(236,184,218,.2),#cdbbff,rgba(205,187,255,.1));pointer-events:none}
.live2d-promo__copy{position:relative;min-width:0}
.live2d-promo__eyebrow{display:inline-flex;align-items:center;gap:9px;margin:0 0 22px;font-family:var(--font-mono);font-size:11px;line-height:1.4;font-weight:550;letter-spacing:.12em;text-transform:uppercase;color:#e2d7ff}
.live2d-promo__eyebrow:before{content:"";width:6px;height:6px;border-radius:50%;background:#cdbbff;box-shadow:0 0 14px rgba(205,187,255,.35)}
.live2d-promo h2{margin:0;font-family:var(--font-sans);font-size:clamp(34px,3.4vw,46px);font-weight:650;line-height:1.08;letter-spacing:-.045em;color:#fff;text-wrap:balance}
.live2d-promo__future{display:block;margin-top:10px;font-size:clamp(22px,2.3vw,30px);font-weight:450;line-height:1.25;letter-spacing:-.035em;color:#cdbbff}
.live2d-promo__description{max-width:350px;margin:24px 0 22px;font-size:15px;line-height:1.65;color:#c6c0d2;text-wrap:pretty}
.live2d-promo__included{display:flex;align-items:center;gap:8px;margin:0 0 28px;font-size:12px;font-weight:500;color:#ddd5ec}
.live2d-promo__included svg{color:#cdbbff;flex:none}
.live2d-promo__link{display:inline-flex;align-items:center;justify-content:center;gap:20px;min-height:46px;padding:0 18px;border:1px solid rgba(205,187,255,.36);border-radius:999px;background:rgba(205,187,255,.065);color:#eae3ff;font-size:13px;font-weight:600;line-height:1.4;text-decoration:none;transition:background .18s ease,border-color .18s ease;box-sizing:border-box}
.live2d-promo__link:hover{background:rgba(205,187,255,.14);border-color:#cdbbff}
.live2d-promo__link:focus-visible{outline:2px solid #eae3ff;outline-offset:5px}
.live2d-promo__gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:16px;min-width:0}
.live2d-promo__model{margin:0;min-width:0;overflow:hidden;border:1px solid rgba(217,207,239,.15);border-radius:18px;background:#333043;box-shadow:0 8px 24px rgba(0,0,0,.12)}
.live2d-promo__model--sasha{margin-top:0}
.live2d-promo__portrait{display:block;width:100%;height:auto;aspect-ratio:1/1.08;object-fit:contain;object-position:center bottom;background:#333043}
.live2d-promo__model figcaption{padding:16px 20px 18px;border-top:1px solid rgba(217,207,239,.1);font-family:var(--font-sans);font-size:20px;line-height:1.2;font-weight:550;letter-spacing:-.025em;color:#f4f0fa;background:#292532}
.live2d-promo__model--lily figcaption{box-shadow:inset 0 2px rgba(230,171,205,.32)}
.live2d-promo__model--sasha figcaption{box-shadow:inset 0 2px rgba(184,179,215,.38)}
@media(max-width:1000px){.live2d-promo__panel{grid-template-columns:1fr;gap:26px;padding:32px}.live2d-promo__description{max-width:600px}.live2d-promo__gallery{width:100%;max-width:800px;justify-self:center}.live2d-promo h2{font-size:36px}.live2d-promo__gallery{gap:12px}}
@media(max-width:760px){.live2d-promo{padding:0 24px 48px}.live2d-promo__panel{grid-template-columns:1fr;gap:30px;padding:30px;border-radius:24px}.live2d-promo__copy{max-width:480px}.live2d-promo__eyebrow{margin-bottom:16px}.live2d-promo h2{font-size:38px}.live2d-promo__future{font-size:26px}.live2d-promo__description{max-width:440px;margin:18px 0 16px}.live2d-promo__included{margin-bottom:20px}.live2d-promo__gallery{width:100%;max-width:640px;justify-self:center}.live2d-promo__model--sasha{margin-top:0}}
@media(max-width:440px){.live2d-promo{padding:0 20px 40px}.live2d-promo__panel{padding:24px 18px;gap:28px;border-radius:22px}.live2d-promo h2{font-size:34px;max-width:280px}.live2d-promo__future{font-size:24px}.live2d-promo__description{font-size:14px}.live2d-promo__gallery{gap:10px}.live2d-promo__model{border-radius:12px}.live2d-promo__model figcaption{padding:13px 12px 15px;font-size:18px}.live2d-promo__link{gap:16px}}
@media(prefers-reduced-motion:reduce){.live2d-promo__link{transition:none}}

.live2d-promo__model--mika figcaption{box-shadow:inset 0 2px rgba(246,185,143,.4)}
.live2d-promo__model figcaption span{display:block;margin-top:5px;font-size:11px;line-height:1.4;letter-spacing:0;font-weight:450;color:#d4c4e8}
@media(max-width:540px){.live2d-promo__gallery{grid-template-columns:1fr;max-width:280px;gap:18px}.live2d-promo__model figcaption{padding:13px 16px;display:flex;justify-content:space-between;align-items:center}.live2d-promo__model figcaption span{margin:0;font-size:11px}}
