/* One cinematic invitation, using the supplied original artwork and store tokens. */
.store-reference .ve-campaign{padding-block:24px 0;scroll-margin-top:24px}
.ve-banner{position:relative;isolation:isolate;overflow:hidden;min-height:390px;border:1px solid #71409e;border-radius:16px;background:#100b18;box-shadow:0 16px 60px #0002}
.ve-poster{position:absolute;inset:0 0 0 49%;z-index:-1}
.ve-poster img{width:100%;height:100%;object-fit:cover;object-position:center}
.ve-poster:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#100b18 0,transparent 15%),linear-gradient(0deg,#100b1820,transparent 24%);pointer-events:none}
.ve-copy{position:relative;width:56%;padding:46px 0 46px 42px}
.store-reference .ve-copy h2{font:800 clamp(28px,2.65vw,40px)/1.13 Inter,Arial,sans-serif;letter-spacing:-.035em;color:#f6f2fb}
.ve-copy h2 em{font-style:normal;color:#a747ff;background:linear-gradient(105deg,#b264ff,#8620fa);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}
.ve-description{max-width:540px;margin-top:18px;color:#c3b5d2;font:400 14px/1.65 Inter,Arial,sans-serif}
.ve-details{max-width:540px;margin-top:20px;padding-top:18px;border-top:1px solid #36223f;color:#b9a7cc;font:500 12px/1.65 Inter,Arial,sans-serif}
.ve-details span{margin-inline:5px;color:#a95be3}
.ve-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:23px}
.store-reference .ve-actions .button{min-height:44px;padding:12px 20px;gap:18px;font:650 12px/1.4 Inter,Arial,sans-serif;border-radius:8px}
.store-reference .ve-actions .button.primary{box-shadow:0 8px 24px #7615df22}
.ve-actions .icon{width:18px;height:18px}
.ve-access-note{margin-top:14px;color:#a999b9;font:400 11px/1.6 Inter,Arial,sans-serif}
.ve-invitation{position:fixed;left:24px;bottom:24px;z-index:35;width:350px;display:grid;grid-template-columns:110px 1fr;overflow:hidden;border:1px solid #8051ac;border-radius:12px;background:#140e1ff5;box-shadow:0 12px 44px #0007;animation:ve-arrive .35s ease-out}
body:has(.preview-note) .ve-invitation{bottom:52px}
.ve-invitation-art{position:relative;overflow:hidden;min-height:136px}
.ve-invitation-art img{width:100%;height:100%;object-fit:cover;object-position:center}
.ve-invitation-art:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,transparent 75%,#140e1f)}
.ve-invitation-copy{padding:23px 34px 18px 14px}
.ve-invitation-copy h3{color:#f6f2fb;font:750 16px/1.25 Inter,Arial,sans-serif;letter-spacing:-.025em}
.ve-invitation-copy p{margin-top:6px;color:#bcaccb;font:400 11px/1.6 Inter,Arial,sans-serif}
.ve-invitation-copy a{display:inline-flex;align-items:center;gap:8px;min-height:32px;margin-top:6px;color:#d5a5ff;font:650 11px/1.4 Inter,Arial,sans-serif}
.ve-invitation-copy a:hover{color:#f3ddff}
.ve-invitation-copy .icon{width:16px;height:16px}
.ve-invitation-close{position:absolute;top:4px;right:4px;z-index:1;width:32px;height:32px;display:grid;place-items:center;border:0;border-radius:6px;background:transparent;color:#c9b5db}
.ve-invitation-close:hover{background:#3b2154;color:#fff}
.ve-invitation-close .icon{width:16px;height:16px}
@keyframes ve-arrive{from{opacity:0;translate:0 12px}to{opacity:1;translate:0 0}}
@media(min-width:1700px){.ve-banner{min-height:470px}.ve-copy{padding:64px 0 64px 52px}}
@media(max-width:1050px){.ve-banner{min-height:360px}.ve-copy{width:58%;padding:35px 22px 35px 28px}.ve-poster{left:51%}.ve-description{font-size:13px}.ve-actions{gap:8px}.store-reference .ve-actions .button{padding-inline:14px;gap:10px}}
@media(max-width:760px){.ve-banner{display:flex;flex-direction:column;min-height:0}.ve-poster{position:relative;inset:auto;z-index:0;order:0;aspect-ratio:1.65;flex:none;min-height:0}.ve-poster img{position:absolute;inset:0}.ve-poster:after{background:linear-gradient(0deg,#100b18 0,transparent 18%)}.ve-copy{order:1;width:100%;padding:20px 24px 28px}.store-reference .ve-copy h2{font-size:clamp(26px,5vw,34px)}.ve-description{margin-top:14px}.ve-details{margin-top:16px;padding-top:14px}.ve-actions{margin-top:20px}.ve-invitation{display:none}}
@media(max-width:380px){.ve-copy{padding:18px 18px 24px}.ve-actions{flex-direction:column;align-items:stretch}.store-reference .ve-actions .button{justify-content:space-between}.ve-details span{margin-inline:2px}}
@media(prefers-reduced-motion:reduce){.ve-invitation{animation:none}.ve-actions .button{transition:none;transform:none!important}}
