:root{--brand-pink:#ed3d68;--brand-rose:#ff718b;--brand-purple:#bd72db;--brand-violet:#875ee1;--brand-pale:#ffe8ed}
.button,.vz-header-cta,.inline-cta a{background:linear-gradient(110deg,var(--brand-pink),#f05e79 55%,#cc6ada);color:#fff!important;box-shadow:0 13px 28px rgba(232,55,101,.22)}
.eyebrow i{background:var(--brand-pink);box-shadow:0 0 0 5px var(--brand-pale)}
.hero-points span{color:var(--brand-pink);background:var(--brand-pale)}
.orbit-glow{background:linear-gradient(145deg,#ffdce5,#efb8ea 55%,#e6dcff)}
.item-rating b,.item-maps b{color:var(--brand-pink);background:var(--brand-pale)}
.product-card.rating{--accent:var(--brand-pink)}
.product-card.calls{--accent:var(--brand-violet)}
.product-card.okk{--accent:var(--brand-purple)}
.product-card.maps{--accent:#f05e79}
.product-card.knowledge{--accent:#cc6ada}
.product-card.learn{--accent:var(--brand-rose)}
.product-card li:before{color:var(--brand-pink)}
.knowledge-visual i:nth-child(2){background:linear-gradient(90deg,var(--brand-purple),#efe2ff)}
.eyebrow.light,.system-flow article b{color:#ff8ea5}
.vz-menu-button:focus-visible,.vz-nav a:focus-visible,.button:focus-visible,.inline-cta a:focus-visible{outline:3px solid rgba(189,114,219,.35);outline-offset:3px}

/* Hero heart: a soft double-beat rhythm with a restrained ambient glow. */
.hero-heart{position:absolute;z-index:3;left:50%;top:50%;width:250px;height:330px;transform:translate(-50%,-50%);display:grid;place-items:center;pointer-events:none}
.hero-heart:before{content:"";position:absolute;z-index:-2;inset:14% 4% 8%;border-radius:50%;background:radial-gradient(circle,rgba(255,154,174,.4),rgba(255,210,220,.18) 48%,transparent 72%);filter:blur(20px);animation:heartAura 2.35s ease-in-out infinite}
.hero-heart-pulse{position:absolute;z-index:-1;width:72%;aspect-ratio:1;border:1px solid rgba(237,61,104,.25);border-radius:50%;animation:heartWave 2.35s ease-out infinite}
.hero-heart img{display:block;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 24px 26px rgba(224,70,105,.18));transform-origin:52% 58%;animation:heartBeat 2.35s cubic-bezier(.3,.05,.25,1) infinite;will-change:transform,filter}
.hero-heart-label{position:absolute;left:50%;bottom:0;transform:translateX(-50%);white-space:nowrap;padding:7px 12px;border:1px solid rgba(237,61,104,.13);border-radius:99px;background:rgba(255,255,255,.74);backdrop-filter:blur(8px);color:#c92f59;font-size:8px;font-weight:800;letter-spacing:.13em;text-transform:uppercase;box-shadow:0 8px 24px rgba(190,55,90,.08)}
@keyframes heartBeat{0%,42%,100%{transform:rotate(-4deg) scaleX(1) scaleY(1);filter:drop-shadow(0 24px 26px rgba(224,70,105,.18)) saturate(1) brightness(1)}9%{transform:rotate(-4deg) scaleX(1.065) scaleY(.972);filter:drop-shadow(0 27px 31px rgba(224,70,105,.28)) saturate(1.1) brightness(1.045)}17%{transform:rotate(-4deg) scaleX(.992) scaleY(1.008);filter:drop-shadow(0 22px 24px rgba(224,70,105,.16)) saturate(1.02) brightness(1)}25%{transform:rotate(-4deg) scaleX(1.038) scaleY(.985);filter:drop-shadow(0 25px 28px rgba(224,70,105,.23)) saturate(1.065) brightness(1.025)}33%{transform:rotate(-4deg) scaleX(1) scaleY(1);filter:drop-shadow(0 24px 26px rgba(224,70,105,.18)) saturate(1) brightness(1)}}
@keyframes heartAura{0%,42%,100%{opacity:.45;transform:scale(.92)}10%,27%{opacity:.8;transform:scale(1.06)}}
@keyframes heartWave{0%{opacity:0;transform:scale(.68)}12%{opacity:.48}44%,100%{opacity:0;transform:scale(1.35)}}
@media(max-width:720px){.hero-heart{width:218px;height:290px}.hero-heart-label{bottom:3px}}
@media(prefers-reduced-motion:reduce){.hero-heart img,.hero-heart:before,.hero-heart-pulse{animation:none}}
