/* Konsilito v2: one glowing button system, glowing white logo, quiet neuron background */
@keyframes kvSheen { 0% { left: -70%; } 22% { left: 130%; } 100% { left: 130%; } }
@keyframes kvLogo { 0%,100% { filter: drop-shadow(0 0 4px rgba(255,255,255,.9)) drop-shadow(0 0 12px rgba(255,255,255,.4)); } 50% { filter: drop-shadow(0 0 6px #fff) drop-shadow(0 0 20px rgba(255,255,255,.6)); } }
@keyframes kvMark { 0%,100% { filter: drop-shadow(0 0 8px rgba(255,255,255,.9)) drop-shadow(0 0 24px rgba(255,255,255,.5)) drop-shadow(0 0 50px rgba(255,255,255,.25)); } 50% { filter: drop-shadow(0 0 12px #fff) drop-shadow(0 0 36px rgba(255,255,255,.65)) drop-shadow(0 0 70px rgba(255,255,255,.3)); } }

html body :is(a.cta, a.btn:not(.ghost):not(.quiet):not(.btn-max), button.btn:not(.ghost):not(.quiet), .btn.primary, .btn.go, .cover .go, .btn-tg, .cta-btn,
  .header-cta, .hero-cta-primary, .role-cta, a.price-cta, .pack-cta, .kv-btn) {
    position: relative; overflow: hidden; isolation: isolate; border-radius: 12px !important;
    color: #FFE3A3 !important; text-shadow: 0 0 10px rgba(255,200,90,.75); font-weight: 600 !important; letter-spacing: .3px;
    background: linear-gradient(180deg, rgba(255,214,130,.16), rgba(245,166,35,.05)) padding-box,
                linear-gradient(#0D0B10, #0D0B10) padding-box,
                linear-gradient(140deg, #FFF1C1, #F4C969 35%, #B07A16 60%, #FFE6A0) border-box !important;
    border: 1px solid transparent !important;
    box-shadow: 0 0 18px rgba(245,166,35,.42), 0 0 46px rgba(245,166,35,.16), inset 0 0 16px rgba(245,166,35,.22) !important;
    transition: transform .2s ease, box-shadow .3s ease, filter .3s ease; animation: none !important;
}
html body :is(a.cta, a.btn:not(.ghost):not(.quiet):not(.btn-max), button.btn:not(.ghost):not(.quiet), .btn.primary, .btn.go, .cover .go, .btn-tg, .cta-btn,
  .header-cta, .hero-cta-primary, .role-cta, a.price-cta, .pack-cta, .kv-btn):hover {
    transform: translateY(-2px); filter: brightness(1.08);
    box-shadow: 0 0 26px rgba(245,166,35,.65), 0 0 70px rgba(245,166,35,.25), inset 0 0 22px rgba(245,166,35,.35) !important;
}
html body :is(a.cta, a.btn:not(.ghost):not(.quiet):not(.btn-max), button.btn:not(.ghost):not(.quiet), .btn.primary, .btn.go, .cover .go, .btn-tg, .cta-btn,
  .header-cta, .hero-cta-primary, .role-cta, a.price-cta, .pack-cta, .kv-btn)::after {
    content: ''; position: absolute; top: 0; left: -70%; width: 45%; height: 100%; pointer-events: none; z-index: 1;
    background: linear-gradient(105deg, transparent, rgba(255,240,200,.26), transparent); transform: skewX(-20deg);
    animation: kvSheen 4.8s ease-in-out infinite;
}
/* secondary: same shape, thin glowing rim */
html body :is(.btn.ghost, .btn.quiet, .hero-cta-secondary, .kv-btn-line) {
    position: relative; border-radius: 12px !important; color: #F6D88A !important; font-weight: 600 !important;
    background: linear-gradient(#0C0B12, #0C0B12) padding-box, linear-gradient(140deg, #FFF1C1, #C8901F 45%, #8A5A0E 55%, #FFE6A0) border-box !important;
    border: 1.5px solid transparent !important; box-shadow: 0 0 16px rgba(245,166,35,.22) !important; transition: transform .2s, box-shadow .3s;
}
html body :is(.btn.ghost, .btn.quiet, .hero-cta-secondary, .kv-btn-line):hover { transform: translateY(-2px); box-shadow: 0 0 22px rgba(245,166,35,.4) !important; }
/* MAX and Phantom: the same buttons in blue */
html body :is(.btn-max, .kv-btn-blue) {
    position: relative; border-radius: 12px !important; color: #DDE3EE !important; font-weight: 600 !important;
    background: linear-gradient(#0A0E17, #0A0E17) padding-box, linear-gradient(145deg, #E6E9EF, #9BA2AF 46%, #3E6FD4 70%, #C6CBD5) border-box !important;
    border: 1.5px solid transparent !important; box-shadow: 0 0 16px rgba(62,111,212,.3) !important;
}

/* logo: the white mark glows, no tile, no gold rim */
html body :is(.header-logo, header.top .in > img, .brand img) { border-radius: 0 !important; box-shadow: none !important; background: none !important; animation: kvLogo 4s ease-in-out infinite !important; object-fit: contain; }
html body .ga-mark::before, html body .ga-mark::after { display: none !important; }
html body .hero-logo { animation: kvMark 4s ease-in-out infinite !important; }

/* surfaces: dark glass, thin gold edge on hover */
html body :is(.card, .feature-card, .price-card, .int-card, .role-card, .platform-card, nav.toc, .cta-box) { transition: border-color .3s, box-shadow .3s; }
html body :is(.card, .feature-card, .price-card, .int-card, .platform-card):hover { border-color: rgba(244,201,105,.35) !important; box-shadow: 0 0 24px rgba(245,166,35,.08) !important; }

#kv-bg { position: fixed; inset: 0; width: 100vw; height: 100vh; z-index: -1; pointer-events: none; opacity: .55; }
@media (prefers-reduced-motion: reduce) {
    html body *, html body *::after { animation: none !important; transition: none !important; }
    #kv-bg { display: none; }
}

/* status pills: glass with a gold rim, never flat orange */
html body :is(.badge, .client-badge) { background: rgba(8,8,16,.55) !important; color: #F4D27A !important; border: 1px solid rgba(244,201,105,.38) !important; box-shadow: 0 0 12px rgba(245,166,35,.12) !important; }

html body .hero h1::after { height: 44px !important; bottom: -21px !important; box-shadow: none !important; animation: kvLine 5s ease-in-out infinite !important;
  background: linear-gradient(90deg, transparent 0%, rgba(245,166,35,.55) 22%, #FFD27A 50%, rgba(245,166,35,.55) 78%, transparent 100%) center / 100% 1.5px no-repeat,
              radial-gradient(ellipse 50% 50% at 50% 50%, rgba(245,166,35,.26), rgba(245,166,35,.08) 45%, transparent 72%) !important; }
@keyframes kvLine { 0%,100% { opacity: .85; } 50% { opacity: 1; } }

@media (max-width: 560px) {
    html body .hero {
        padding-top: 64px !important;
    }
    html body .hero-logo {
        width: auto !important;
        height: 128px !important;
    }
    html body header {
        padding: 12px 10px !important;
    }
    html body .header-brand {
        gap: 6px;
        flex-shrink: 0;
    }
    html body .header-logo {
        width: 24px;
        height: 26px;
    }
    html body .header-title {
        font-size: 11px !important;
        letter-spacing: .04em !important;
    }
    html body .langs {
        gap: 3px !important;
        font-size: 11px !important;
        flex-shrink: 0;
    }
    html body .header-cta {
        flex-shrink: 0;
        padding: 7px 6px !important;
        font-size: 11px !important;
        letter-spacing: .3px !important;
    }
}
