/* Zi Vital — accessibility + premium interaction QA */

/* Keyboard access */
.zv-skip-link{position:fixed;z-index:99999;left:18px;top:12px;transform:translateY(-150%);padding:10px 14px;border-radius:999px;background:#2f261f;color:#fff;font:700 12px/1.2 "Manrope",sans-serif;box-shadow:0 10px 30px rgba(0,0,0,.18);transition:transform .2s ease}
.zv-skip-link:focus{transform:translateY(0)}
:where(a,button,input,select,textarea,[tabindex]):focus-visible{outline:2px solid #b88d33!important;outline-offset:3px!important}
[id]{scroll-margin-top:120px}

/* Reusable Zi Vital hover: warm tint + white light pass. Shop remains visually frozen. */
body:not(.act-store-landing) :is(.zv3-testimonial-card,.zv3-product-card,.zv3-domain-card,.zv3-treatment,.zvdl-observe-card,.zvdl-approach-card,.zvdl-process-card,.zvdl-faq-card,.zv-medical-team-card,.zv-approach-tool){position:relative;overflow:hidden;transition:transform .32s ease,border-color .32s ease,box-shadow .32s ease,background-color .32s ease!important}
body:not(.act-store-landing) :is(.zv3-testimonial-card,.zv3-product-card,.zv3-domain-card,.zv3-treatment,.zvdl-observe-card,.zvdl-approach-card,.zvdl-process-card,.zvdl-faq-card,.zv-medical-team-card,.zv-approach-tool)::before{content:"";position:absolute;z-index:3;top:-45%;left:-58%;width:32%;height:190%;pointer-events:none;background:linear-gradient(102deg,transparent,rgba(255,255,255,.68),transparent);transform:rotate(13deg);transition:left .7s cubic-bezier(.2,.72,.2,1)}
body:not(.act-store-landing) :is(.zv3-testimonial-card,.zv3-product-card,.zv3-domain-card,.zv3-treatment,.zvdl-observe-card,.zvdl-approach-card,.zvdl-process-card,.zvdl-faq-card,.zv-medical-team-card,.zv-approach-tool):hover{transform:translateY(-4px);border-color:rgba(184,141,51,.38)!important;box-shadow:0 22px 50px rgba(81,58,32,.085)!important;background-color:#fffaf0}
body:not(.act-store-landing) :is(.zv3-testimonial-card,.zv3-product-card,.zv3-domain-card,.zv3-treatment,.zvdl-observe-card,.zvdl-approach-card,.zvdl-process-card,.zvdl-faq-card,.zv-medical-team-card,.zv-approach-tool):hover::before{left:132%}

/* Image-light pass */
body:not(.act-store-landing) :is(.zv3-hero-v4__media-frame,.zvdl-hero__image,.zv-about-hero-v2__frame,.zv-about-director-v2__portrait,.zv-medical-team-card__visual,.zv-approach-hero-v2__frame,.zv-treatment-hero-v2__frame){position:relative;overflow:hidden}
body:not(.act-store-landing) :is(.zv3-hero-v4__media-frame,.zvdl-hero__image,.zv-about-hero-v2__frame,.zv-about-director-v2__portrait,.zv-medical-team-card__visual,.zv-approach-hero-v2__frame,.zv-treatment-hero-v2__frame)::after{content:"";position:absolute;z-index:4;inset:-20% auto -20% -38%;width:24%;pointer-events:none;background:linear-gradient(105deg,transparent,rgba(255,255,255,.42),transparent);transform:rotate(12deg);transition:left .8s cubic-bezier(.2,.72,.2,1)}
body:not(.act-store-landing) :is(.zv3-hero-v4__media-frame,.zvdl-hero__image,.zv-about-hero-v2__frame,.zv-about-director-v2__portrait,.zv-medical-team-card__visual,.zv-approach-hero-v2__frame,.zv-treatment-hero-v2__frame):hover::after{left:122%}

/* Buttons: same controlled light reflection across the site. */
.act-btn,.wp-block-button__link{position:relative;overflow:hidden;isolation:isolate}
.act-btn::after,.wp-block-button__link::after{content:"";position:absolute;z-index:-1;top:-40%;left:-65%;width:34%;height:180%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.56),transparent);transform:rotate(14deg);transition:left .62s cubic-bezier(.2,.72,.2,1);pointer-events:none}
.act-btn:hover::after,.wp-block-button__link:hover::after{left:135%}

/* Comfortable hit areas without visibly enlarging editorial links. */
.act-menu-toggle,.act-cart,.zv3-rail-controls button{min-width:44px;min-height:44px}

/* Motion accessibility */
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}
