/* Lightweight effects shared by the public pages. */
body :is(.hero, .page-hero, .hero-about, .hero-industry, .hero-api,
         .hero-codedoc, .hero-mcp, .hero-claims, .hero-teledoc) {
    background-image: radial-gradient(ellipse at 90% 15%, rgba(30,64,175,.12), transparent 55%),
                      radial-gradient(ellipse at 5% 90%, rgba(249,115,22,.07), transparent 50%);
}
body .navbar.scrolled {
    background: rgba(255,255,255,.96);
    box-shadow: 0 5px 24px rgba(15,23,42,.08);
    backdrop-filter: blur(14px);
}
body :is(.btn, .feature-card, .agent-card, .card-soft, .benefit-card,
         .segment-card, .audience-card, .industry-card) {
    transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease,
                background-color .25s ease, color .25s ease;
}
body :is(a, button, input, select, textarea):focus-visible {
    outline: 3px solid #f97316;
    outline-offset: 4px;
}
body .footer-links a:hover { text-decoration: underline; text-underline-offset: 5px; }

@media (prefers-reduced-motion: no-preference) {
    body :is(.hero, .page-hero, .hero-about, .hero-industry, .hero-api,
             .hero-codedoc, .hero-mcp, .hero-claims, .hero-teledoc) h1 {
        animation: dm-hero-arrive .85s cubic-bezier(.2,.7,.2,1) both;
    }
    body .hero-cta { animation: dm-hero-arrive .85s .15s cubic-bezier(.2,.7,.2,1) both; }
    @keyframes dm-hero-arrive {
        from { opacity: .2; translate: 0 20px; }
        to { opacity: 1; translate: 0 0; }
    }
    @media (hover: hover) and (pointer: fine) {
        body :is(.feature-card, .agent-card, .card-soft, .benefit-card,
                 .segment-card, .audience-card, .industry-card):hover {
            transform: translateY(-5px);
            border-color: rgba(30,64,175,.42);
            box-shadow: 0 14px 32px -15px rgba(30,64,175,.28);
        }
        body .btn:hover { transform: translateY(-2px); box-shadow: 0 7px 18px rgba(15,23,42,.16); }
        body .btn:active { transform: translateY(0); box-shadow: none; }
    }
}
@media (prefers-reduced-motion: reduce) {
    body :is(.btn, .feature-card, .agent-card, .card-soft, .benefit-card,
             .segment-card, .audience-card, .industry-card):hover { transform: none; }
}
@media print {
    body * { animation: none !important; transition: none !important; }
}
