/* BATES v0.26.158 – subtle CTA glow
   Lightweight, no looping animation, no large blur surfaces. */

:root {
    --bates-glow-blue: rgba(47, 91, 177, .22);
    --bates-glow-blue-hover: rgba(47, 91, 177, .31);
    --bates-glow-red: rgba(215, 25, 32, .20);
    --bates-glow-red-hover: rgba(215, 25, 32, .29);
}

/* Primary blue actions on homepage. */
body:has(.bates-home-hero) .button:not(.button-secondary):not(.button-outline),
body:has(.bates-home-hero) a.button:not(.button-secondary):not(.button-outline) {
    box-shadow:
        0 8px 20px var(--bates-glow-blue),
        0 2px 6px rgba(19, 32, 60, .10);
    transition:
        box-shadow .18s ease,
        transform .18s ease,
        background-color .18s ease,
        border-color .18s ease;
}

body:has(.bates-home-hero) .button:not(.button-secondary):not(.button-outline):hover,
body:has(.bates-home-hero) .button:not(.button-secondary):not(.button-outline):focus-visible,
body:has(.bates-home-hero) a.button:not(.button-secondary):not(.button-outline):hover,
body:has(.bates-home-hero) a.button:not(.button-secondary):not(.button-outline):focus-visible {
    box-shadow:
        0 11px 26px var(--bates-glow-blue-hover),
        0 4px 10px rgba(19, 32, 60, .12);
    transform: translateY(-1px);
}

/* Header client-zone CTA uses the BATES red accent. */
body:has(.bates-home-hero) .public-header a[href*="zona"],
body:has(.bates-home-hero) .public-header a[href*="login"],
body:has(.bates-home-hero) header a[href*="zona"],
body:has(.bates-home-hero) header a[href*="login"] {
    box-shadow:
        0 7px 18px var(--bates-glow-red),
        0 2px 5px rgba(19, 32, 60, .08);
    transition:
        box-shadow .18s ease,
        transform .18s ease;
}

body:has(.bates-home-hero) .public-header a[href*="zona"]:hover,
body:has(.bates-home-hero) .public-header a[href*="login"]:hover,
body:has(.bates-home-hero) header a[href*="zona"]:hover,
body:has(.bates-home-hero) header a[href*="login"]:hover,
body:has(.bates-home-hero) .public-header a[href*="zona"]:focus-visible,
body:has(.bates-home-hero) .public-header a[href*="login"]:focus-visible,
body:has(.bates-home-hero) header a[href*="zona"]:focus-visible,
body:has(.bates-home-hero) header a[href*="login"]:focus-visible {
    box-shadow:
        0 10px 24px var(--bates-glow-red-hover),
        0 4px 9px rgba(19, 32, 60, .10);
    transform: translateY(-1px);
}

/* Hero primary CTA gets a slightly stronger but still subtle focus. */
.bates-home-hero .hero-actions .button:first-child {
    box-shadow:
        0 10px 24px rgba(47, 91, 177, .25),
        0 3px 8px rgba(8, 21, 48, .13) !important;
}

.bates-home-hero .hero-actions .button:first-child:hover,
.bates-home-hero .hero-actions .button:first-child:focus-visible {
    box-shadow:
        0 13px 30px rgba(47, 91, 177, .34),
        0 5px 12px rgba(8, 21, 48, .15) !important;
    transform: translateY(-1px);
}

/* Secondary / outline CTA stays calm. */
.bates-home-hero .hero-actions .button:not(:first-child),
body:has(.bates-home-hero) .button.button-secondary,
body:has(.bates-home-hero) .button.button-outline {
    box-shadow: 0 3px 10px rgba(19, 32, 60, .07);
}

.bates-home-hero .hero-actions .button:not(:first-child):hover,
body:has(.bates-home-hero) .button.button-secondary:hover,
body:has(.bates-home-hero) .button.button-outline:hover {
    box-shadow: 0 5px 14px rgba(19, 32, 60, .10);
    transform: translateY(-1px);
}

/* The final consultation CTA can visually anchor the page. */
body:has(.bates-home-hero) [class*="consult"] .button,
body:has(.bates-home-hero) [class*="cta"] .button {
    box-shadow:
        0 8px 20px rgba(47, 91, 177, .20),
        0 2px 6px rgba(19, 32, 60, .08);
}

@media (prefers-reduced-motion: reduce) {
    body:has(.bates-home-hero) .button,
    body:has(.bates-home-hero) header a[href*="zona"],
    body:has(.bates-home-hero) header a[href*="login"] {
        transition: none !important;
        transform: none !important;
    }
}
