/* VividlyHER gentle buttons: soft, inviting, never demanding (Oct 1, 2026) */
/* VividlyHER buttons: simple, bold, compact (Oct 1, 2026) */
.primary,.cta,.demo-play-toggle,.lp-cta,.share-cta{
 background:#b51b5b!important;color:#fff!important;border:0!important;border-radius:6px!important;
 box-shadow:none!important;text-shadow:none!important;background-image:none!important;
 font-weight:600!important;font-size:15px!important;letter-spacing:.01em!important;line-height:1.2!important;
 padding:12px 22px!important;min-height:0!important;
 transition:background-color .2s ease,transform .2s ease!important}
.primary:hover,.cta:hover,.demo-play-toggle:hover,.lp-cta:hover,.share-cta:hover{background:#951548!important;transform:translateY(-1px)!important;box-shadow:none!important;color:#fff!important}
.primary:active,.cta:active{transform:translateY(0)!important}
.primary::before,.primary::after,.cta::before,.cta::after{display:none!important}
.cta.ghost,.ghost,.text-button{background:transparent!important;color:#8a1a4d!important;border:1.5px solid #b51b5b!important;border-radius:6px!important;box-shadow:none!important;padding:10.5px 20px!important}
.cta.ghost:hover,.ghost:hover,.text-button:hover{background:rgba(181,27,91,.06)!important;color:#7a1544!important}
.mirror-invite strong{background:#b51b5b!important;color:#fff!important;border:0!important;border-radius:6px!important;box-shadow:none!important;text-shadow:none!important}
.mirror-invite:hover strong{background:#951548!important;transform:none!important;box-shadow:none!important}
.becky-launcher > span:not(.becky-portrait-avatar),.chat-fab b{font-family:"DM Sans",system-ui,sans-serif!important;text-transform:uppercase!important;letter-spacing:.16em!important;font-weight:600!important;font-size:12px!important}
.becky-launcher small,.chat-fab small{display:block;text-transform:none!important;letter-spacing:.01em!important;font-weight:400!important;font-size:12.5px!important;margin-top:3px}
/* vh-wheel steady: one calm speed, no jump on hover; bigger words */
.vh-ring{animation-duration:36s!important;will-change:transform;backface-visibility:hidden;transform-origin:50% 50%}
.vh-wheel-stage:hover .vh-ring{animation-duration:36s!important}
.vh-hint{font-size:clamp(14px,2.2cqw,17px)!important;letter-spacing:.1em!important;color:#7d5a6c!important;margin-top:6px!important}
.vh-wheel-stage em{font-size:clamp(20px,3.2cqw,28px)!important}
.vh-wheel-stage span:not(.vh-marker){font-size:clamp(12px,1.8cqw,15px)}
.vh-palette b,.vh-swatch b{font-size:12px!important;letter-spacing:.03em}
.vh-story{font-size:18px!important;margin-top:6px!important}
.vh-story b{font-size:18px!important}
/* Oct 9 (UX): the end of a post settles before first paint. No title above the mirror, a soft handoff, no jumps. */
.jr-invite .sec-head{display:none!important}
.jr-invite{position:relative;padding-top:0!important;background:linear-gradient(180deg,#fbf8f3 0px,#f6e8ee 170px,#f6e4ea 100%)!important}
.jr-invite::before{content:"\2726";display:block;width:200px;margin:0 auto 24px;padding:64px 0 0;text-align:center;color:#b51b5b;font-size:18px;line-height:20px;background:linear-gradient(#d9b8c6,#d9b8c6) 0 74px/64px 1px no-repeat,linear-gradient(#d9b8c6,#d9b8c6) 100% 74px/64px 1px no-repeat}
/* Bigger hero portrait on every post */
.jr-post-hero .big{width:100%!important;max-width:520px!important;margin-left:auto!important}
.jr-post-hero .big img{width:100%!important;height:100%!important;object-fit:cover}
@media(max-width:860px){.jr-post-hero .big{max-width:none!important}}
/* Her photo opens the story: the whole card is the link */
article.pkg{position:relative}
article.pkg .btns a.buy::after{content:"";position:absolute;inset:0;z-index:1}
article.pkg .img img{transition:transform .5s ease}
article.pkg:hover .img img{transform:scale(1.03)}